summaryrefslogtreecommitdiff
path: root/eclass/kde4-base.eclass
diff options
context:
space:
mode:
authorJorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>2008-09-07 20:07:13 +0000
committerJorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>2008-09-07 20:07:13 +0000
commit0ccca1142170fd629008f37d2a9d8c98b23f5b31 (patch)
tree86dca4128a83ac7fca313f2fac2c1eba7f47bc50 /eclass/kde4-base.eclass
parentbd1de36baf9dad41006f4999a35ea6da852f1601 (diff)
downloadkde-0ccca1142170fd629008f37d2a9d8c98b23f5b31.tar.gz
kde-0ccca1142170fd629008f37d2a9d8c98b23f5b31.tar.bz2
kde-0ccca1142170fd629008f37d2a9d8c98b23f5b31.zip
Applied some fixes to the eclasses to allow an FHS compliant install,
when using the fhs use flag and to still allow multiple versions of kde installed otherwise.
Diffstat (limited to 'eclass/kde4-base.eclass')
-rw-r--r--eclass/kde4-base.eclass64
1 files changed, 40 insertions, 24 deletions
diff --git a/eclass/kde4-base.eclass b/eclass/kde4-base.eclass
index 9e5a385db87..e5166d9a247 100644
--- a/eclass/kde4-base.eclass
+++ b/eclass/kde4-base.eclass
@@ -87,6 +87,11 @@ case "${PV}" in
;;
esac
+# Add the fhs use flag
+if [[ $EAPI = 2 && -n ${KDEBASE} ]]; then
+ IUSE="${IUSE} fhs"
+fi
+
DEPEND="${DEPEND} ${COMMONDEPEND} ${CMAKEDEPEND}
dev-util/pkgconfig
x11-libs/libXt
@@ -179,6 +184,7 @@ case ${NEED_KDE} in
_pv=":kde-svn"
export NEED_KDE="svn"
;;
+
# NEED_KDE=":${SLOT}"
*:kde-svn)
_kdedir="svn"
@@ -194,6 +200,7 @@ case ${NEED_KDE} in
_kdedir="4.0"
_pv="${NEED_KDE}"
;;
+
# NEED_KDE="${PV}:${SLOT}"
*:4.1)
_kdedir="4.1"
@@ -220,10 +227,12 @@ case ${NEED_KDE} in
_operator=">="
_pv="-${NEED_KDE}:kde-4"
;;
+
# The ebuild handles dependencies, KDEDIR, SLOT.
none)
:
;;
+
*) die "NEED_KDE=${NEED_KDE} currently not supported."
;;
esac
@@ -231,8 +240,13 @@ esac
if [[ ${NEED_KDE} != none ]]; then
# Set PREFIX
- KDEDIR="/usr/kde/${_kdedir}"
- KDEDIRS="/usr:/usr/local:${KDEDIR}"
+ if use fhs; then
+ KDEDIR="/usr"
+ KDEDIRS="/usr:/usr/local"
+ else
+ KDEDIR="/usr/kde/${_kdedir}"
+ KDEDIRS="/usr:/usr/local:${KDEDIR}"
+ fi
if [[ -n ${KDEBASE} ]]; then
if [[ ${NEED_KDE} = svn ]]; then
@@ -245,19 +259,34 @@ if [[ ${NEED_KDE} != none ]]; then
fi
fi
- # Block other SLOTS
+ # Block kdelibs on other SLOTS
+ if use fhs; then
+ for KDE_SLOT in ${KDE_SLOTS[@]}; do
+ # block kdelibs on other slots
+ if [[ ${SLOT} != ${KDE_SLOT} ]]; then
+ DEPEND="${DEPEND} !kde-base/kdelibs:${KDE_SLOT}"
+ RDEPEND="${RDEPEND} !kde-base/kdelibs:${KDE_SLOT}"
+ fi
+ done
+ fi
# We only need to add the dependencies if ${PN} is not "kdelibs" or "kdepimlibs"
if [[ ${PN} != "kdelibs" ]]; then
- DEPEND="${DEPEND}
- ${_operator}kde-base/kdelibs${_pv}"
- RDEPEND="${RDEPEND}
- ${_operator}kde-base/kdelibs${_pv}"
+ if [[ $EAPI = 2 ]]; then
+ DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}[fhs?]"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}[fhs?]"
+ else
+ DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}"
+ fi
if [[ ${PN} != "kdepimlibs" ]]; then
- DEPEND="${DEPEND}
- ${_operator}kde-base/kdepimlibs${_pv}"
- RDEPEND="${RDEPEND}
- ${_operator}kde-base/kdepimlibs${_pv}"
+ if [[ $EAPI = "2*" ]]; then
+ DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}[fhs?]"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}[fhs?]"
+ else
+ DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
+ fi
fi
fi
@@ -291,19 +320,6 @@ if [[ -n ${KDEBASE} ]]; then
fi
debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}"
-debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: DEPEND ${DEPEND} - before blockers"
-
-# Monolithic ebuilds should add blockers for split ebuilds in the same slot.
-# If KMNAME is not set then this is not a split package
-if [[ -n ${KDEBASE} && -z ${KMNAME} ]]; then
- for _x in $(get-child-packages ${CATEGORY}/${PN}); do
- DEPEND="${DEPEND} !${_x}:${SLOT}"
- RDEPEND="${RDEPEND} !${_x}:${SLOT}"
- done
- unset _x
-fi
-
-debug-print "${BASH_SOURCE} ${LINENO} ${ECLASS} ${FUNCNAME}: DEPEND ${DEPEND} - after blockers"
# @ECLASS-VARIABLE: PREFIX
# @DESCRIPTION: