* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2008-05-15 19:49 Ingmar Vanhassel (ingmar)
0 siblings, 0 replies; 22+ messages in thread
From: Ingmar Vanhassel (ingmar) @ 2008-05-15 19:49 UTC (permalink / raw
To: gentoo-commits
ingmar 08/05/15 19:49:33
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Eclass updates for KDE 4.0.4, thanks to Bo Ørsted Andresen & Jorge Manuel B. S. Vicetto.
Revision Changes Path
1.11 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.11&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.11&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.10&r2=1.11
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- kde4-base.eclass 14 Apr 2008 13:23:14 -0000 1.10
+++ kde4-base.eclass 15 May 2008 19:49:32 -0000 1.11
@@ -1,6 +1,6 @@
# Copyright 2007-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.10 2008/04/14 13:23:14 zlin Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.11 2008/05/15 19:49:32 ingmar Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -18,18 +18,15 @@
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
kde4-base_set_qt_dependencies() {
- local qt qtcore qtgui qt3support qtsvg qttest qtopengl qtdepend qtopengldepend
+ local qt qtcore qtgui qt3support qtdepend qtopengldepend
# use dependencies
case "${EAPI}" in
kdebuild-1)
- qt="[accessibility][dbus][debug?][gif][jpeg][png][qt3support][ssl][zlib]"
- qtcore="[debug?][qt3support][ssl]"
- qtgui="[accessibility][dbus][debug?]"
- qt3support="[accessibility][debug?]"
- qtsvg="[debug?]"
- qttest="[debug?]"
- qtopengl="[debug?]"
+ qt="[accessibility][dbus][gif][jpeg][png][qt3support][ssl][zlib]"
+ qtcore="[qt3support][ssl]"
+ qtgui="[accessibility][dbus]"
+ qt3support="[accessibility]"
case "${OPENGL_REQUIRED}" in
always)
qt="${qt}[opengl]"
@@ -46,9 +43,10 @@
x11-libs/qt-core:4${qtcore}
x11-libs/qt-gui:4${qtgui}
x11-libs/qt-qt3support:4${qt3support}
- x11-libs/qt-svg:4${qtsvg}
- x11-libs/qt-test:4${qttest}"
- qtopengldepend="x11-libs/qt-opengl:4${qtopengl}"
+ x11-libs/qt-script:4
+ x11-libs/qt-svg:4
+ x11-libs/qt-test:4"
+ qtopengldepend="x11-libs/qt-opengl:4"
# allow monolithic qt for PV < 4.1
case "${PV}" in
@@ -290,35 +288,28 @@
case "${EAPI}" in
kdebuild-1)
- [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK} ]] && \
+ [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
die "built_with_use illegal in this EAPI!"
;;
*)
+ # Make KDE4_BUILT_WITH_USE_CHECK an array if it isn't already
+ local line kde4_built_with_use_check=()
+ if [[ -n ${KDE4_BUILT_WITH_USE_CHECK[@]} && $(declare -p KDE4_BUILT_WITH_USE_CHECK) != 'declare -a '* ]]; then
+ while read line; do
+ [[ -z ${line} ]] && continue
+ kde4_built_with_use_check+=("${line}")
+ done <<< "${KDE4_BUILT_WITH_USE_CHECK}"
+ KDE4_BUILT_WITH_USE_CHECK="${kde4_built_with_use_check[@]}"
+ fi
+
# KDE4 applications require qt4 compiled with USE="accessibility dbus gif jpeg png qt3support ssl zlib".
if has_version '<x11-libs/qt-4.4_alpha:4'; then
QT4_BUILT_WITH_USE_CHECK="${QT4_BUILT_WITH_USE_CHECK} accessibility dbus gif jpeg png qt3support ssl zlib"
else
- KDE4_BUILT_WITH_USE_CHECK="${KDE4_BUILT_WITH_USE_CHECK}
- x11-libs/qt-core qt3support ssl
- x11-libs/qt-gui accessibility dbus
- x11-libs/qt-qt3support accessibility"
- fi
-
- if has debug ${IUSE//+} && use debug; then
- if has_version '<x11-libs/qt-4.4.0_alpha:4'; then
- QT4_BUILT_WITH_USE_CHECK="${QT4_BUILT_WITH_USE_CHECK} debug"
- else
- KDE4_BUILT_WITH_USE_CHECK="${KDE4_BUILT_WITH_USE_CHECK}
- x11-libs/qt-core:4 debug
- x11-libs/qt-gui:4 debug
- x11-libs/qt-qt3support:4 debug
- x11-libs/qt-svg:4 debug
- x11-libs/qt-test:4 debug"
- if has opengl ${IUSE//+} && use opengl || [[ ${OPENGL_REQUIRED} == always ]]; then
- KDE4_BUILT_WITH_USE_CHECK="${KDE4_BUILT_WITH_USE_CHECK}
- x11-libs/qt-opengl:4 debug"
- fi
- fi
+ KDE4_BUILT_WITH_USE_CHECK=("${KDE4_BUILT_WITH_USE_CHECK[@]}"
+ "x11-libs/qt-core qt3support ssl"
+ "x11-libs/qt-gui accessibility dbus"
+ "x11-libs/qt-qt3support accessibility")
fi
if has opengl ${IUSE//+} && use opengl || [[ ${OPENGL_REQUIRED} == always ]]; then
1.6 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.6&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.6&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.5&r2=1.6
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- kde4-functions.eclass 4 Apr 2008 22:15:24 -0000 1.5
+++ kde4-functions.eclass 15 May 2008 19:49:32 -0000 1.6
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.5 2008/04/04 22:15:24 zlin Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.6 2008/05/15 19:49:32 ingmar Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -81,6 +81,7 @@
kde-base/kdebase kde-base/kdesu
kde-base/kdebase kde-base/kfile
kde-base/kdebase kde-base/khelpcenter
+kde-base/kdebase kde-base/kiconfinder
kde-base/kdebase kde-base/kioclient
kde-base/kdebase kde-base/kmimetypefinder
kde-base/kdebase kde-base/knetattach
@@ -97,6 +98,7 @@
kde-base/kdebase kde-base/kurifilter-plugins
kde-base/kdebase kde-base/nepomuk
kde-base/kdebase kde-base/phonon
+kde-base/kdebase kde-base/solid-hardware
kde-base/kdebase kde-base/soliduiserver
kde-base/kdebase kde-base/kcheckpass
kde-base/kdebase kde-base/kcminit
@@ -155,11 +157,13 @@
kde-base/kdeedu kde-base/libkdeedu
kde-base/kdeedu kde-base/marble
kde-base/kdeedu kde-base/parley
+kde-base/kdeedu kde-base/step
kde-base/kdegames kde-base/bovo
kde-base/kdegames kde-base/katomic
kde-base/kdegames kde-base/kbattleship
kde-base/kdegames kde-base/kblackbox
kde-base/kdegames kde-base/kbounce
+kde-base/kdegames kde-base/kdiamond
kde-base/kdegames kde-base/kfourinline
kde-base/kdegames kde-base/kgoldrunner
kde-base/kdegames kde-base/kiriki
@@ -169,6 +173,7 @@
kde-base/kdegames kde-base/kmines
kde-base/kdegames kde-base/knetwalk
kde-base/kdegames kde-base/kolf
+kde-base/kdegames kde-base/kollision
kde-base/kdegames kde-base/konquest
kde-base/kdegames kde-base/kpat
kde-base/kdegames kde-base/kreversi
@@ -178,6 +183,7 @@
kde-base/kdegames kde-base/ksquares
kde-base/kdegames kde-base/ksudoku
kde-base/kdegames kde-base/ktuberling
+kde-base/kdegames kde-base/kubrick
kde-base/kdegames kde-base/libkdegames
kde-base/kdegames kde-base/libkmahjongg
kde-base/kdegames kde-base/lskat
@@ -192,6 +198,7 @@
kde-base/kdegraphics kde-base/libkscan
kde-base/kdegraphics kde-base/okular
kde-base/kdegraphics kde-base/svgpart
+kde-base/kdemultimedia kde-base/dragonplayer
kde-base/kdemultimedia kde-base/juk
kde-base/kdemultimedia kde-base/kdemultimedia-kioslaves
kde-base/kdemultimedia kde-base/kmix
@@ -270,10 +277,8 @@
kde-base/kdeutils kde-base/kcharselect
kde-base/kdeutils kde-base/kdessh
kde-base/kdeutils kde-base/kdf
-kde-base/kdeutils kde-base/kedit
kde-base/kdeutils kde-base/kfloppy
kde-base/kdeutils kde-base/kgpg
-kde-base/kdeutils kde-base/khexedit
kde-base/kdeutils kde-base/kjots
kde-base/kdeutils kde-base/kmilo
kde-base/kdeutils kde-base/kregexpeditor
@@ -351,7 +356,7 @@
buildsycoca() {
debug-print-function ${FUNCNAME} "$@"
- if [[ -x ${KDEDIR}/bin/kbuildsycoca4 ]] && [[ -z "${ROOT}" || "${ROOT}" == "/" ]]; then
+ if [[ -x ${KDEDIR}/bin/kbuildsycoca4 && -z "${ROOT%%/}" ]]; then
# First of all, make sure that the /usr/share/services directory exists
# and it has the right permissions
mkdir -p /usr/share/services
@@ -373,16 +378,16 @@
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
- XDG_DATA_DIRS="/usr/share:${KDEDIRS}/share:/usr/local/share"
+ XDG_DATA_DIRS="/usr/share:${KDEDIRS//:/\/share:}/share:/usr/local/share" \
${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
echo "Killing dbus session for kbuildsycoca4"
- debug-print "ADDRES ${DBUS_SESSION_BUS_ADDRESS}"
+ debug-print "ADDRESS ${DBUS_SESSION_BUS_ADDRESS}"
debug-print "PID: ${DBUS_SESSION_BUS_PID}"
kill ${DBUS_SESSION_BUS_PID}
eend $?
- unset DBUS_SESSION_BUS_ADDRES DBUS_SESSION_BUS_PID
+ unset DBUS_SESSION_BUS_ADDRESS DBUS_SESSION_BUS_PID
# For some reason this directory gets created with noone other than root
# being able to read it. Hence we chmod it.
@@ -397,7 +402,7 @@
# except the ones in cmake/.
comment_all_add_subdirectory() {
find "$@" -name CMakeLists.txt -print0 | grep -vFzZ "./cmake" | \
- xargs -0 sed -i -e '/add_subdirectory/s/^/#DONOTCOMPILE /' || \
+ xargs -0 sed -i -e '/add_subdirectory/s/^/#DONOTCOMPILE /' -e '/ADD_SUBDIRECTORY/s/^/#DONOTCOMPILE /' || \
die "${LINENO}: Initial sed died"
}
@@ -424,7 +429,8 @@
comment_all_add_subdirectory "${KDE_LINGUAS_DIR:-${S}/po}"
for lingua in ${KDE_LINGUAS}; do
if use linguas_${lingua}; then
- sed -e "/add_subdirectory(\s*${lingua}\s*)\s*$/ s/^#DONOTCOMPILE //" \
+ sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
+ -e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-i "${KDE_LINGUAS_DIR:-${S}/po}"/CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
fi
done
@@ -500,16 +506,28 @@
QT4_BUILT_WITH_USE_CHECK=$(echo "${QT4_BUILT_WITH_USE_CHECK}" | \
tr '[:space:]' '\n' | sort | xargs)
- KDE4_BUILT_WITH_USE_CHECK="x11-libs/qt:4 ${QT4_BUILT_WITH_USE_CHECK}
+ local line missing
+ if [[ -n ${KDE4_BUILT_WITH_USE_CHECK[@]} && $(declare -p KDE4_BUILT_WITH_USE_CHECK) = 'declare -a '* ]]; then
+ KDE4_BUILT_WITH_USE_CHECK=("x11-libs/qt:4 ${QT4_BUILT_WITH_USE_CHECK}"
+ "${KDE4_BUILT_WITH_USE_CHECK[@]}")
+
+ for line in "${KDE4_BUILT_WITH_USE_CHECK[@]}"; do
+ [[ -z ${line} ]] && continue
+ if ! _kde4-functions_built_with_use ${line}; then
+ missing=true
+ fi
+ done
+ else
+ KDE4_BUILT_WITH_USE_CHECK="x11-libs/qt:4 ${QT4_BUILT_WITH_USE_CHECK}
${KDE4_BUILT_WITH_USE_CHECK}"
- local line missing
- while read line; do
- [[ -z ${line} ]] && continue
- if ! _kde4-functions_built_with_use ${line}; then
- missing=true
- fi
- done <<< "${KDE4_BUILT_WITH_USE_CHECK}"
+ while read line; do
+ [[ -z ${line} ]] && continue
+ if ! _kde4-functions_built_with_use ${line}; then
+ missing=true
+ fi
+ done <<< "${KDE4_BUILT_WITH_USE_CHECK}"
+ fi
if [[ -n ${missing} ]]; then
echo
eerror "Flags marked with an * are missing."
1.6 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.6&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.6&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.5&r2=1.6
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- kde4-meta.eclass 13 Mar 2008 17:57:51 -0000 1.5
+++ kde4-meta.eclass 15 May 2008 19:49:32 -0000 1.6
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.5 2008/03/13 17:57:51 ingmar Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.6 2008/05/15 19:49:32 ingmar Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -28,15 +28,16 @@
LICENSE="GPL-2" ;;
koffice) HOMEPAGE="http://www.koffice.org/"
LICENSE="GPL-2" ;;
- *) die "KDEBASE=${KDEBASE} is unsupported." ;;
esac
debug-print "${BASH_SOURCE} ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - before blockers"
debug-print "${BASH_SOURCE} ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - before blockers"
# Add a blocker on the package we're derived from
-DEPEND="${DEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
-RDEPEND="${RDEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
+if [[ -n ${KDEBASE} ]]; then
+ DEPEND="${DEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
+ RDEPEND="${RDEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
+fi
debug-print "line ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - after blockers"
debug-print "line ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - after blockers"
@@ -48,6 +49,8 @@
RDEPEND="${RDEPEND} >=kde-base/qimageblitz-0.0.4"
;;
kdepim)
+ DEPEND="${DEPEND} dev-libs/boost"
+ RDEPEND="${RDEPEND} dev-libs/boost"
if [[ ${PN} != kode ]]; then
DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}"
RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}"
@@ -141,13 +144,6 @@
kde4-meta_src_unpack() {
debug-print-function ${FUNCNAME} "$@"
- if [[ ${KMNAME} = kdepim ]] && \
- has kontact ${IUSE//+} && \
- use kontact; then
- KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
- KMEXTRACTONLY="${KMEXTRACTONLY} kontact/interfaces/"
- fi
-
kde4-meta_src_extract
kde4-meta_change_cmakelists
}
@@ -233,6 +229,14 @@
libkdegames"
fi
;;
+ kdepim)
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ kleopatra/ConfigureChecks.cmake"
+ if has kontact ${IUSE//+} && use kontact; then
+ KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
+ KMEXTRACTONLY="${KMEXTRACTONLY} kontact/interfaces/"
+ fi
+ ;;
koffice)
KMEXTRACTONLY="${KMEXTRACTONLY}
config-endian.h.cmake
@@ -298,8 +302,8 @@
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME} - kmcompileonly_expanded: ${kmcompileonly_expanded}"
- case ${NEED_KDE} in
- svn) : ;;
+ case ${PV} in
+ scm|9999.4) : ;;
*) topdir="${KMNAME}-${PV}/" ;;
esac
@@ -313,6 +317,35 @@
echo ${extractlist}
}
+save_library_dependencies() {
+ local depsfile="${T}/${PN}:${SLOT}"
+
+ echo "Saving library dependendencies in ${depsfile##*/}"
+ echo "EXPORT_LIBRARY_DEPENDENCIES(\"${depsfile}\")" >> "${S}/CMakeLists.txt" || \
+ die "Failed to save the library dependencies."
+}
+
+install_library_dependencies() {
+ local depsfile="${T}/${PN}:${SLOT}"
+ echo "Installing library dependendencies as ${depsfile##*/}"
+ insinto /var/lib/kde
+ doins "${depsfile}" || die "Failed to install library dependencies."
+}
+
+load_library_dependencies() {
+ local pn i depsfile
+ echo "Injecting library dependendencies from '${KMLOADLIBS}'"
+
+ i=0
+ for pn in ${KMLOADLIBS} ; do
+ ((i++))
+ depsfile="/var/lib/kde/${pn}:${SLOT}"
+ [[ -r "${depsfile}" ]] || die "Depsfile '${depsfile}' not accessible. You probably need to reinstall ${pn}."
+ sed -i -e "${i}iINCLUDE(\"${depsfile}\")" "${S}/CMakeLists.txt" || \
+ die "Failed to include library dependencies for ${pn}"
+ done
+}
+
# @FUNCTION: kde4-meta_src_compile
# @DESCRIPTION:
# General function for compiling split KDE4 applications.
@@ -329,12 +362,13 @@
local _olddir _dir
_dir="${S}"/${1}
until [[ ${_dir} == "${S}" ]]; do
- _olddir=$(basename ${_dir})
- _dir=$(dirname ${_dir})
+ _olddir=$(basename "${_dir}")
+ _dir=$(dirname "${_dir}")
debug-print "${LINENO}: processing ${_dir} CMakeLists.txt searching for ${_olddir}"
if [[ -f ${_dir}/CMakeLists.txt ]]; then
- sed -i -e "/[[:space:]]*${_olddir}[[:space:]]*/s/^#DONOTCOMPILE //" ${_dir}/CMakeLists.txt || \
- die "${LINENO}: died in ${FUNCNAME} while processing ${_dir}"
+ sed -e "/add_subdirectory[[:space:]]*([[:space:]]*${_olddir}[[:space:]]*)/s/#DONOTCOMPILE //g" \
+ -e "/ADD_SUBDIRECTORY[[:space:]]*([[:space:]]*${_olddir}[[:space:]]*)/s/#DONOTCOMPILE //g" \
+ -i ${_dir}/CMakeLists.txt || die "${LINENO}: died in ${FUNCNAME} while processing ${_dir}"
fi
done
}
@@ -344,11 +378,21 @@
pushd "${S}" > /dev/null
+ if [[ -n ${KMSAVELIBS} ]] ; then
+ save_library_dependencies
+ fi
+
+ if [[ -n ${KMLOADLIBS} ]] ; then
+ load_library_dependencies
+ fi
+
comment_all_add_subdirectory ./
# Restore "add_subdirectory( cmake )" in ${S}/CMakeLists.txt
if [[ -f "${S}"/CMakeLists.txt ]]; then
- sed -i -e '/ *cmake */s/^#DONOTCOMPILE //' "${S}"/CMakeLists.txt || die "${LINENO}: cmake sed died"
+ sed -e '/add_subdirectory[[:space:]]*([[:space:]]*cmake[[:space:]]*)/s/^#DONOTCOMPILE //' \
+ -e '/ADD_SUBDIRECTORY[[:space:]]*([[:space:]]*cmake[[:space:]]*)/s/^#DONOTCOMPILE //' \
+ -i "${S}"/CMakeLists.txt || die "${LINENO}: cmake sed died"
fi
if [[ -z ${KMNOMODULE} ]]; then
@@ -391,30 +435,19 @@
fi
done
- # Documentation section
- if [[ -n ${docs} ]]; then
- sed -i -e '/ *doc */s/^#DONOTCOMPILE //g' "${S}"/CMakeLists.txt || \
- die "${LINENO}: sed died while uncommenting doc dir"
-
- if [[ -f "${S}"/doc/CMakeLists.txt ]]; then
- sed -i -e "/( *${KMMODULE##*/} *)/s/^#DONOTCOMPILE //g" "${S}"/doc/CMakeLists.txt \
- || die "${LINENO}: sed died while uncommenting apps documentation in doc subdir "
- fi
- fi
-
# KMEXTRACTONLY section - Some ebuilds need to comment out some subdirs in KMMODULE and they use KMEXTRACTONLY
for i in ${KMEXTRACTONLY}; do
if [[ -d "${S}"/${i} && -f "${S}"/${i}/../CMakeLists.txt ]]; then
- sed -i -e "/( *$(basename $i) *)/s/^/#DONOTCOMPILE /" "${S}"/${i}/../CMakeLists.txt || \
+ sed -i -e "/([[:space:]]*$(basename $i)[[:space:]]*)/s/^/#DONOTCOMPILE /" "${S}"/${i}/../CMakeLists.txt || \
die "${LINENO}: sed died while working in the KMEXTRACTONLY section while processing ${i}"
fi
done
- # COLLISION PROTECT section
- # Only install the startkde script as part of kde-base/kdebase-startkde,
- # instead of with every package.
case ${KMNAME} in
kdebase-workspace)
+ # COLLISION PROTECT section
+ # Only install the startkde script as part of kde-base/kdebase-startkde,
+ # instead of with every package.
if [[ ${PN} != "kdebase-startkde" && -f "${S}"/CMakeLists.txt ]]; then
case ${PV} in
*) # The startkde script moved to kdebase-workspace for KDE4 versions > 3.93.0.
@@ -424,11 +457,28 @@
esac
fi
;;
+ kdebase-runtime)
+ # COLLISION PROTECT section
+ # Only install the kde4 script as part of kde-base/kdebase-data
+ if [[ ${PN} != "kdebase-data" && -f "${S}"/CMakeLists.txt ]]; then
+ sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
+ "${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
+ fi
+ ;;
+ kdepim)
+ case ${PN} in
+ kaddressbook|kmailcvt|kontact|korganizer)
+ sed -i -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
+ -e '/add_custom_target(kmail_xml /,/)/p' "${S}"/kmail/CMakeLists.txt || die "uncommenting xml failed"
+ _change_cmakelists_parent_dirs kmail
+ ;;
+ esac
+ ;;
+ kdeutils)
# This is sort of a hack to avoid patching 16 kdeutils packages with
# r775410 from upstream trunk which makes blitz optional so superkaramba
# only gets compiled when it is found. Bug #209324. Remove this no later
# than 4.1.
- kdeutils)
if [[ ${PN} != superkaramba && ${SLOT} == kde-4 ]]; then
sed -i -e '/find_package(Blitz REQUIRED)/d' "${S}"/CMakeLists.txt \
|| die "${LINENO}: sed to remove dependency on Blitz failed."
@@ -484,6 +534,10 @@
kde4-meta_src_make_doc
cmake-utils_src_install
+
+ if [[ -n ${KMSAVELIBS} ]] ; then
+ install_library_dependencies
+ fi
}
# @FUNCTION: kde4-meta_src_make_doc
--
gentoo-commits@lists.gentoo.org mailing list
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2008-10-02 6:49 Jorge Manuel B. S. Vicetto (jmbsvicetto)
0 siblings, 0 replies; 22+ messages in thread
From: Jorge Manuel B. S. Vicetto (jmbsvicetto) @ 2008-10-02 6:49 UTC (permalink / raw
To: gentoo-commits
jmbsvicetto 08/10/02 06:49:02
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Bumped kde4 eclasses.
Add kde-4.1.2 into the tree from the kde-testing overlay.
Revision Changes Path
1.13 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.13&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.13&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.12&r2=1.13
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- kde4-base.eclass 17 May 2008 14:09:03 -0000 1.12
+++ kde4-base.eclass 2 Oct 2008 06:49:02 -0000 1.13
@@ -1,40 +1,51 @@
# Copyright 2007-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.12 2008/05/17 14:09:03 zlin Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.13 2008/10/02 06:49:02 jmbsvicetto Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
# kde@gentoo.org
-# @BLURB: This eclass provides functions for kde 4.0 ebuilds
+# @BLURB: This eclass provides functions for kde 4.X ebuilds
# @DESCRIPTION:
# The kde4-base.eclass provides support for building KDE4 monolithic ebuilds
# and KDE4 applications.
#
# NOTE: This eclass uses the SLOT dependencies from EAPI="1" or compatible,
-# hence you must define EAPI="1" in the ebuild, before inheriting any eclasses.
+# and use deps from EAPI="2", hence you must define EAPI="2" in the ebuild,
+# before inheriting any eclasses.
-inherit base eutils multilib cmake-utils kde4-functions
+inherit base cmake-utils eutils kde4-functions multilib
-EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
+case "${EAPI}" in
+ 2)
+ EXPORT_FUNCTIONS pkg_setup src_unpack src_configure src_compile src_test src_install pkg_postinst pkg_postrm
+ ;;
+ *)
+ EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
+ ;;
+esac
+# Set the qt dependencies
kde4-base_set_qt_dependencies() {
local qt qtcore qtgui qt3support qtdepend qtopengldepend
# use dependencies
case "${EAPI}" in
- kdebuild-1)
- qt="[accessibility][dbus][gif][jpeg][png][qt3support][ssl][zlib]"
- qtcore="[qt3support][ssl]"
- qtgui="[accessibility][dbus]"
- qt3support="[accessibility]"
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+
+ qt="["
case "${OPENGL_REQUIRED}" in
always)
- qt="${qt}[opengl]"
+ qt="${qt}opengl,"
;;
optional)
- qt="${qt}[opengl?]"
+ qt="${qt}opengl?,"
;;
esac
+ qt="${qt}accessibility,dbus,gif,jpeg,png,qt3support,ssl,zlib]"
+ qtcore="[qt3support,ssl]"
+ qtgui="[accessibility,dbus]"
+ qt3support="[accessibility]"
;;
esac
@@ -50,7 +61,7 @@
# allow monolithic qt for PV < 4.1
case "${PV}" in
- scm|9999.4|4.1*) : ;;
+ scm|9999*|4.1*|4.0.9*|4.0.8*) : ;;
*)
qtdepend="|| ( ( ${qtdepend} ) >=x11-libs/qt-4.3.3:4${qt} )"
qtopengldepend="|| ( ${qtopengldepend} >=x11-libs/qt-4.3.3:4 )"
@@ -77,13 +88,30 @@
}
kde4-base_set_qt_dependencies
-DEPEND="${DEPEND} ${COMMONDEPEND}
- >=dev-util/cmake-2.4.7-r1
+# Set the cmake dependencies
+case "${PV}" in
+ 9999*)
+ CMAKEDEPEND=">=dev-util/cmake-2.6"
+ ;;
+ *)
+ CMAKEDEPEND=">=dev-util/cmake-2.4.7-r1"
+ ;;
+esac
+
+# Set the common dependencies
+DEPEND="${DEPEND} ${COMMONDEPEND} ${CMAKEDEPEND}
dev-util/pkgconfig
x11-libs/libXt
x11-proto/xf86vidmodeproto"
RDEPEND="${RDEPEND} ${COMMONDEPEND}"
+# Add the kdeprefix use flag
+case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ IUSE="${IUSE} kdeprefix"
+ ;;
+esac
+
# @ECLASS-VARIABLE: OPENGL_REQUIRED
# @DESCRIPTION:
# Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
@@ -144,84 +172,150 @@
# Should only be used by 'kde-base'-ebuilds
if [[ "${KDEBASE}" == "kde-base" ]]; then
case ${PV} in
- 3.9*) _kdedir="3.9" ;;
- 4*) _kdedir="4.0" ;;
- *) die "NEED_KDE=latest not supported for PV=${PV}" ;;
+ 4.1*| 4.0.9* | 4.0.8*)
+ _kdedir="4.1"
+ _pv="-${PV}:4.1" ;;
+ 4.0*)
+ _kdedir="4.0"
+ _pv="-${PV}:kde-4" ;;
+ 3.9*)
+ _kdedir="3.9"
+ _pv="-${PV}:kde-4" ;;
+ *)
+ die "NEED_KDE=latest not supported for PV=${PV}" ;;
esac
_operator=">="
- _pv="-${PV}:kde-4"
else
- _kdedir="4.0"
- _pv=":kde-4"
+ case ${PV} in
+ 4.1 | 4.0.9* | 4.0.8*) _kdedir="4.1" ;;
+ 4.0*) _kdedir="4.0" ;;
+ 3.9*) _kdedir="3.9" ;;
+ *) die "NEED_KDE=latest not supported for PV=${PV}" ;;
+ esac
fi
;;
- scm|svn|9999*|:kde-svn)
- _kdedir="svn"
- _pv=":kde-svn"
- export NEED_KDE="svn"
- ;;
- *:kde-svn)
+
+ # NEED_KDE=":${SLOT}"
+ :kde-svn)
_kdedir="svn"
- _operator=">="
_pv="-${NEED_KDE}"
export NEED_KDE="svn"
;;
- # The ebuild handles dependencies, KDEDIR, SLOT.
- none)
- :
+ :4.1)
+ _kdedir="4.1"
+ _pv="${NEED_KDE}"
;;
- # NEED_KDE=":${SLOT}"
:kde-4)
_kdedir="4.0"
_pv="${NEED_KDE}"
;;
+
# NEED_KDE="${PV}:${SLOT}"
+ *:kde-svn)
+ _kdedir="svn"
+ _operator=">="
+ _pv="-${NEED_KDE}"
+ export NEED_KDE="svn"
+ ;;
+ *:4.1)
+ _kdedir="4.1"
+ _operator=">="
+ _pv="-${NEED_KDE}"
+ ;;
*:kde-4)
_kdedir="4.0"
_operator=">="
_pv="-${NEED_KDE}"
;;
- 3.9*)
- _kdedir="3.9"
+
+ # NEED_KDE="${PV}"
+ scm|svn|9999*)
+ _kdedir="svn"
_operator=">="
- _pv="-${NEED_KDE}:kde-4"
+ _pv="-${NEED_KDE}:kde-svn"
+ export NEED_KDE="svn"
+ ;;
+ 4.1 | 4.0.9* | 4.0.8*)
+ _kdedir="4.1"
+ _operator=">="
+ _pv="-${NEED_KDE}:4.1"
;;
- 4*)
+ 4.0* | 4)
_kdedir="4.0"
_operator=">="
_pv="-${NEED_KDE}:kde-4"
;;
- *) die "NEED_KDE=${NEED_KDE} currently not supported."
+ 3.9*)
+ _kdedir="3.9"
+ _operator=">="
+ _pv="-${NEED_KDE}:kde-4"
+ ;;
+
+ # The ebuild handles dependencies, KDEDIR, SLOT.
+ none)
+ :
+ ;;
+
+ *)
+ die "NEED_KDE=${NEED_KDE} currently not supported."
;;
esac
if [[ ${NEED_KDE} != none ]]; then
- KDEDIR="/usr/kde/${_kdedir}"
- KDEDIRS="/usr:/usr/local:${KDEDIR}"
+ #Set the SLOT
if [[ -n ${KDEBASE} ]]; then
if [[ ${NEED_KDE} = svn ]]; then
SLOT="kde-svn"
else
- SLOT="kde-4"
+ case ${PV} in
+ 4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
+ *) SLOT="kde-4" ;;
+ esac
fi
fi
+ # Block install of other SLOTS unless kdeprefix
+ case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ for KDE_SLOT in ${KDE_SLOTS[@]}; do
+ # block non kdeprefix ${PN} on other slots
+ if [[ ${SLOT} != ${KDE_SLOT} ]]; then
+ DEPEND="${DEPEND}
+ !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
+ RDEPEND="${RDEPEND}
+ !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
+ fi
+ done
+ ;;
+ esac
+
# 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}"
+ case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}[kdeprefix=]"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}[kdeprefix=]"
+ ;;
+ *)
+ DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}"
+ ;;
+ esac
if [[ ${PN} != "kdepimlibs" ]]; then
- DEPEND="${DEPEND}
- ${_operator}kde-base/kdepimlibs${_pv}"
- RDEPEND="${RDEPEND}
- ${_operator}kde-base/kdepimlibs${_pv}"
+ case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix=]"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix=]"
+ ;;
+ *)
+ DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
+ RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
+ esac
fi
fi
- unset _operator _pv _kdedir
+ unset _operator _pv
fi
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
@@ -237,7 +331,9 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2";;
+ 4.0.9* | 4.0.8*)
+ SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
+ *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2";;
esac
;;
koffice)
@@ -249,33 +345,16 @@
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:
# Set the installation PREFIX. All kde-base ebuilds go into the KDE4 installation directory.
# Applications installed by the other ebuilds go into /usr/ by default, this value
# can be superseded by defining PREFIX before inheriting kde4-base.
-if [[ -n ${KDEBASE} ]]; then
- PREFIX=${KDEDIR}
-else
- # if PREFIX is not defined we set it to the default value of /usr
- PREFIX="${PREFIX:-/usr}"
-fi
+# This value is set on pkg_setup
+PREFIX=""
-debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SLOT ${SLOT} - KDEDIR ${KDEDIR} - KDEDIRS ${KDEDIRS}- PREFIX ${PREFIX} - NEED_KDE ${NEED_KDE}"
+debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SLOT ${SLOT} - NEED_KDE ${NEED_KDE}"
# @FUNCTION: kde4-base_pkg_setup
# @DESCRIPTION:
@@ -286,8 +365,40 @@
kde4-base_pkg_setup() {
debug-print-function $FUNCNAME "$@"
+ # Don't set KDEHOME during compile, it will cause access violations
+ unset KDEHOME
+
+ if [[ ${NEED_KDE} != none ]]; then
+
+ # Set PREFIX
+ case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ if use kdeprefix; then
+ KDEDIR="/usr/kde/${_kdedir}"
+ KDEDIRS="/usr:/usr/local:${KDEDIR}"
+ else
+ KDEDIR="/usr"
+ KDEDIRS="/usr:/usr/local"
+ fi
+ ;;
+ *)
+ KDEDIR="/usr"
+ KDEDIRS="/usr:/usr/local"
+ ;;
+ esac
+ fi
+
+ if [[ -n ${KDEBASE} ]]; then
+ PREFIX=${KDEDIR}
+ else
+ # if PREFIX is not defined we set it to the default value of /usr
+ PREFIX="${PREFIX:-/usr}"
+ fi
+
+ unset _kdedir
+
case "${EAPI}" in
- kdebuild-1)
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
[[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
die "built_with_use illegal in this EAPI!"
;;
@@ -354,7 +465,7 @@
_packages="${PN}"
fi
if [[ $(declare -p PATCHES) != 'declare -a '* ]]; then
- PATCHES=(${PATCHES})
+ die "PATCHES needs to be an array!"
fi
for _p in ${_packages}; do
for _f in "${_patchdir}"/${_p}-${PV}-*{diff,patch}; do
@@ -418,9 +529,17 @@
# General function for compiling KDE4 applications.
kde4-base_src_compile() {
debug-print-function ${FUNCNAME} "$@"
-
- kde4-base_src_configure
- kde4-base_src_make
+ case "${EAPI}" in
+ 2)
+ ;;
+ *)
+ kde4-base_src_configure
+ ;;
+ esac
+ if [[ -d ${WORKDIR}/${PN}_build ]]; then
+ pushd "${WORKDIR}"/${PN}_build > /dev/null
+ fi
+ [ -e [Mm]akefile ] && kde4-base_src_make
}
# @FUNCTION: kde4-base_src_configure
@@ -453,11 +572,17 @@
# Here we set the install prefix
mycmakeargs="${mycmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
+ # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
+ [[ "${PREFIX}" == "/usr" ]] && mycmakeargs="${mycmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
+
# Set environment
QTEST_COLORED=1
QT_PLUGIN_PATH=${KDEDIR}/$(get_libdir)/kde4/plugins/
- cmake-utils_src_configureout
+ # hardcode path to *.cmake KDE files
+ PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig"
+
+ [ -e CMakeLists.txt ] && cmake-utils_src_configureout
}
# @FUNCTION: kde4-base_src_make
@@ -490,7 +615,10 @@
debug-print-function ${FUNCNAME} "$@"
kde4-base_src_make_doc
- cmake-utils_src_install
+ if [[ -d ${WORKDIR}/${PN}_build ]]; then
+ pushd "${WORKDIR}"/${PN}_build > /dev/null
+ fi
+ [ -e [Mm]akefile ] && cmake-utils_src_install
}
# @FUNCTION: kde4-base_src_make_doc
1.8 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.8&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.8&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.7&r2=1.8
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- kde4-functions.eclass 17 May 2008 14:09:03 -0000 1.7
+++ kde4-functions.eclass 2 Oct 2008 06:49:02 -0000 1.8
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.7 2008/05/17 14:09:03 zlin Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.8 2008/10/02 06:49:02 jmbsvicetto Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -29,6 +29,17 @@
KDEBASE="koffice"
fi
+# @ECLASS-VARIABLE: KDE_SLOTS
+# @DESCRIPTION:
+# The slots used by all KDE versions after 4.0 - this doesn't include kde-3.5 and the
+# live-ebuilds that use the following var.
+KDE_SLOTS=( "kde-4" "4.1" )
+
+# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
+# @DESCRIPTION:
+# The slots used by all KDE live versions.
+KDE_LIVE_SLOTS=( "kde-svn" )
+
# @ECLASS-VARIABLE: KDE_DERIVATION_MAP
# @DESCRIPTION:
# Map of the monolithic->split ebuild derivation.
@@ -37,6 +48,20 @@
#
# Also see get-parent-package(), get-child-packages(), is-parent-package()
KDE_DERIVATION_MAP='
+app-office/koffice app-office/karbon
+app-office/koffice app-office/kchart
+app-office/koffice app-office/kexi
+app-office/koffice app-office/kformula
+app-office/koffice app-office/kivio
+app-office/koffice app-office/koffice-data
+app-office/koffice app-office/koffice-libs
+app-office/koffice app-office/koshell
+app-office/koffice app-office/kplato
+app-office/koffice app-office/kpresenter
+app-office/koffice app-office/krita
+app-office/koffice app-office/kspread
+app-office/koffice app-office/kugar
+app-office/koffice app-office/kword
kde-base/kdeaccessibility kde-base/kdeaccessibility-colorschemes
kde-base/kdeaccessibility kde-base/kdeaccessibility-iconthemes
kde-base/kdeaccessibility kde-base/kmag
@@ -46,6 +71,8 @@
kde-base/kdeadmin kde-base/kcron
kde-base/kdeadmin kde-base/kdat
kde-base/kdeadmin kde-base/knetworkconf
+kde-base/kdeadmin kde-base/kpackage
+kde-base/kdeadmin kde-base/ksystemlog
kde-base/kdeadmin kde-base/ksysv
kde-base/kdeadmin kde-base/kuser
kde-base/kdeadmin kde-base/lilo-config
@@ -60,82 +87,88 @@
kde-base/kdeartwork kde-base/kdeartwork-styles
kde-base/kdeartwork kde-base/kdeartwork-wallpapers
kde-base/kdebase kde-base/dolphin
-kde-base/kdebase kde-base/kappfinder
-kde-base/kdebase kde-base/kdepasswd
-kde-base/kdebase kde-base/kdialog
-kde-base/kdebase kde-base/keditbookmarks
-kde-base/kdebase kde-base/kfind
-kde-base/kdebase kde-base/kinfocenter
-kde-base/kdebase kde-base/konqueror
-kde-base/kdebase kde-base/konsole
-kde-base/kdebase kde-base/kwrite
-kde-base/kdebase kde-base/libkonq
-kde-base/kdebase kde-base/nsplugins
kde-base/kdebase kde-base/drkonqi
+kde-base/kdebase kde-base/kappfinder
+kde-base/kdebase kde-base/kcheckpass
+kde-base/kdebase kde-base/kcminit
kde-base/kdebase kde-base/kcmshell
kde-base/kdebase kde-base/kcontrol
+kde-base/kdebase kde-base/kde-menu
+kde-base/kdebase kde-base/kde-menu-icons
+kde-base/kdebase kde-base/kde-wallpapers
+kde-base/kdebase kde-base/kdebase-cursors
kde-base/kdebase kde-base/kdebase-data
kde-base/kdebase kde-base/kdebase-kioslaves
+kde-base/kdebase kde-base/kdebase-startkde
kde-base/kdebase kde-base/kdebugdialog
-kde-base/kdebase kde-base/kde-menu
+kde-base/kdebase kde-base/kdepasswd
kde-base/kdebase kde-base/kdesu
+kde-base/kdebase kde-base/kdialog
+kde-base/kdebase kde-base/kdm
+kde-base/kdebase kde-base/keditbookmarks
kde-base/kdebase kde-base/kfile
+kde-base/kdebase kde-base/kfind
kde-base/kdebase kde-base/khelpcenter
+kde-base/kdebase kde-base/khotkeys
kde-base/kdebase kde-base/kiconfinder
+kde-base/kdebase kde-base/kinfocenter
kde-base/kdebase kde-base/kioclient
+kde-base/kdebase kde-base/klipper
+kde-base/kdebase kde-base/kmenuedit
kde-base/kdebase kde-base/kmimetypefinder
kde-base/kdebase kde-base/knetattach
kde-base/kdebase kde-base/knewstuff
kde-base/kdebase kde-base/knotify
+kde-base/kdebase kde-base/konqueror
+kde-base/kdebase kde-base/konsole
kde-base/kdebase kde-base/kpasswdserver
kde-base/kdebase kde-base/kquitapp
kde-base/kdebase kde-base/kreadconfig
-kde-base/kdebase kde-base/kstart
-kde-base/kdebase kde-base/kstyles
-kde-base/kdebase kde-base/ktimezoned
-kde-base/kdebase kde-base/ktraderclient
-kde-base/kdebase kde-base/kuiserver
-kde-base/kdebase kde-base/kurifilter-plugins
-kde-base/kdebase kde-base/nepomuk
-kde-base/kdebase kde-base/phonon
-kde-base/kdebase kde-base/solid-hardware
-kde-base/kdebase kde-base/soliduiserver
-kde-base/kdebase kde-base/kcheckpass
-kde-base/kdebase kde-base/kcminit
-kde-base/kdebase kde-base/kdebase-startkde
-kde-base/kdebase kde-base/kstartupconfig
-kde-base/kdebase kde-base/kde-menu-icons
-kde-base/kdebase kde-base/kde-wallpapers
-kde-base/kdebase kde-base/kdm
-kde-base/kdebase kde-base/khotkeys
-kde-base/kdebase kde-base/klipper
-kde-base/kdebase kde-base/kmenuedit
kde-base/kdebase kde-base/krunner
kde-base/kdebase kde-base/kscreensaver
kde-base/kdebase kde-base/ksmserver
kde-base/kdebase kde-base/ksplash
+kde-base/kdebase kde-base/kstart
+kde-base/kdebase kde-base/kstartupconfig
+kde-base/kdebase kde-base/kstyles
kde-base/kdebase kde-base/ksysguard
kde-base/kdebase kde-base/ksystraycmd
+kde-base/kdebase kde-base/ktimezoned
kde-base/kdebase kde-base/ktip
+kde-base/kdebase kde-base/ktraderclient
+kde-base/kdebase kde-base/kuiserver
+kde-base/kdebase kde-base/kurifilter-plugins
kde-base/kdebase kde-base/kwin
+kde-base/kdebase kde-base/kwrite
+kde-base/kdebase kde-base/libkonq
kde-base/kdebase kde-base/libkworkspace
kde-base/kdebase kde-base/libplasma
kde-base/kdebase kde-base/libtaskmanager
+kde-base/kdebase kde-base/nepomuk
+kde-base/kdebase kde-base/nsplugins
+kde-base/kdebase kde-base/phonon
+kde-base/kdebase kde-base/phonon-xine
kde-base/kdebase kde-base/plasma
+kde-base/kdebase kde-base/plasma-apps
+kde-base/kdebase kde-base/plasma-workspace
+kde-base/kdebase kde-base/renamedlg-plugins
kde-base/kdebase kde-base/solid
+kde-base/kdebase kde-base/solid-hardware
+kde-base/kdebase kde-base/soliduiserver
kde-base/kdebase kde-base/systemsettings
kde-base/kdebindings kde-base/kalyptus
kde-base/kdebindings kde-base/kdejava
kde-base/kdebindings kde-base/kimono
kde-base/kdebindings kde-base/kjsembed
kde-base/kdebindings kde-base/korundum
+kde-base/kdebindings kde-base/krossjava
kde-base/kdebindings kde-base/krosspython
kde-base/kdebindings kde-base/krossruby
kde-base/kdebindings kde-base/pykde4
-kde-base/kdebindings kde-base/qyoto
kde-base/kdebindings kde-base/qtjava
kde-base/kdebindings kde-base/qtruby
kde-base/kdebindings kde-base/qtsharp
+kde-base/kdebindings kde-base/qyoto
kde-base/kdebindings kde-base/smoke
kde-base/kdebindings kde-base/xparts
kde-base/kdeedu kde-base/blinken
@@ -162,7 +195,9 @@
kde-base/kdegames kde-base/katomic
kde-base/kdegames kde-base/kbattleship
kde-base/kdegames kde-base/kblackbox
+kde-base/kdegames kde-base/kblocks
kde-base/kdegames kde-base/kbounce
+kde-base/kdegames kde-base/kbreakout
kde-base/kdegames kde-base/kdiamond
kde-base/kdegames kde-base/kfourinline
kde-base/kdegames kde-base/kgoldrunner
@@ -179,6 +214,7 @@
kde-base/kdegames kde-base/kreversi
kde-base/kdegames kde-base/ksame
kde-base/kdegames kde-base/kshisen
+kde-base/kdegames kde-base/ksirk
kde-base/kdegames kde-base/kspaceduel
kde-base/kdegames kde-base/ksquares
kde-base/kdegames kde-base/ksudoku
@@ -190,17 +226,24 @@
kde-base/kdegraphics kde-base/gwenview
kde-base/kdegraphics kde-base/kamera
kde-base/kdegraphics kde-base/kcolorchooser
+kde-base/kdegraphics kde-base/kdegraphics-strigi-analyzer
kde-base/kdegraphics kde-base/kgamma
kde-base/kdegraphics kde-base/kghostview
kde-base/kdegraphics kde-base/kolourpaint
kde-base/kdegraphics kde-base/kruler
+kde-base/kdegraphics kde-base/ksaneplugin
kde-base/kdegraphics kde-base/ksnapshot
+kde-base/kdegraphics kde-base/libkdcraw
+kde-base/kdegraphics kde-base/libkexiv2
+kde-base/kdegraphics kde-base/libkipi
+kde-base/kdegraphics kde-base/libksane
kde-base/kdegraphics kde-base/libkscan
kde-base/kdegraphics kde-base/okular
kde-base/kdegraphics kde-base/svgpart
kde-base/kdemultimedia kde-base/dragonplayer
kde-base/kdemultimedia kde-base/juk
kde-base/kdemultimedia kde-base/kdemultimedia-kioslaves
+kde-base/kdemultimedia kde-base/kdemultimedia-strigi-analyzer
kde-base/kdemultimedia kde-base/kmix
kde-base/kdemultimedia kde-base/kscd
kde-base/kdemultimedia kde-base/libkcddb
@@ -221,11 +264,14 @@
kde-base/kdepim kde-base/kaddressbook
kde-base/kdepim kde-base/kalarm
kde-base/kdepim kde-base/kdemaildir
+kde-base/kdepim kde-base/kdepim-icons
kde-base/kdepim kde-base/kdepim-kioslaves
kde-base/kdepim kde-base/kdepim-kresources
+kde-base/kdepim kde-base/kdepim-strigi-analyzer
kde-base/kdepim kde-base/kdepim-wizards
kde-base/kdepim kde-base/kfeed
kde-base/kdepim kde-base/kitchensync
+kde-base/kdepim kde-base/kjots
kde-base/kdepim kde-base/kleopatra
kde-base/kdepim kde-base/kmail
kde-base/kdepim kde-base/kmailcvt
@@ -236,6 +282,7 @@
kde-base/kdepim kde-base/konsolekalendar
kde-base/kdepim kde-base/kontact
kde-base/kdepim kde-base/kontact-specialdates
+kde-base/kdepim kde-base/kontactinterfaces
kde-base/kdepim kde-base/korganizer
kde-base/kdepim kde-base/korn
kde-base/kdepim kde-base/kpilot
@@ -250,22 +297,24 @@
kde-base/kdepim kde-base/mimelib
kde-base/kdepim kde-base/networkstatus
kde-base/kdesdk kde-base/cervisia
-kde-base/kdesdk kde-base/kdeaccounts-plugin
kde-base/kdesdk kde-base/kapptemplate
kde-base/kdesdk kde-base/kate
kde-base/kdesdk kde-base/kbabel
kde-base/kdesdk kde-base/kbugbuster
kde-base/kdesdk kde-base/kcachegrind
+kde-base/kdesdk kde-base/kdeaccounts-plugin
kde-base/kdesdk kde-base/kdesdk-kioslaves
kde-base/kdesdk kde-base/kdesdk-misc
kde-base/kdesdk kde-base/kdesdk-scripts
+kde-base/kdesdk kde-base/kdesdk-strigi-analyzer
kde-base/kdesdk kde-base/kmtrace
kde-base/kdesdk kde-base/kompare
kde-base/kdesdk kde-base/kspy
kde-base/kdesdk kde-base/kstartperf
-kde-base/kdesdk kde-base/strigi-analyzer
kde-base/kdesdk kde-base/kuiviewer
+kde-base/kdesdk kde-base/lokalize
kde-base/kdesdk kde-base/poxml
+kde-base/kdesdk kde-base/strigi-analyzer
kde-base/kdesdk kde-base/umbrello
kde-base/kdetoys kde-base/amor
kde-base/kdetoys kde-base/kteatime
@@ -279,12 +328,11 @@
kde-base/kdeutils kde-base/kdf
kde-base/kdeutils kde-base/kfloppy
kde-base/kdeutils kde-base/kgpg
-kde-base/kdeutils kde-base/kjots
kde-base/kdeutils kde-base/kmilo
kde-base/kdeutils kde-base/kregexpeditor
-kde-base/kdeutils kde-base/kdessh
kde-base/kdeutils kde-base/ktimer
kde-base/kdeutils kde-base/kwallet
+kde-base/kdeutils kde-base/okteta
kde-base/kdeutils kde-base/superkaramba
kde-base/kdeutils kde-base/sweeper
kde-base/kdewebdev kde-base/kfilereplace
@@ -292,20 +340,6 @@
kde-base/kdewebdev kde-base/klinkstatus
kde-base/kdewebdev kde-base/kxsldbg
kde-base/kdewebdev kde-base/quanta
-app-office/koffice app-office/karbon
-app-office/koffice app-office/kchart
-app-office/koffice app-office/kexi
-app-office/koffice app-office/kformula
-app-office/koffice app-office/kivio
-app-office/koffice app-office/koffice-data
-app-office/koffice app-office/koffice-libs
-app-office/koffice app-office/koshell
-app-office/koffice app-office/kplato
-app-office/koffice app-office/kpresenter
-app-office/koffice app-office/krita
-app-office/koffice app-office/kspread
-app-office/koffice app-office/kugar
-app-office/koffice app-office/kword
'
# @FUNCTION: get-parent-package
@@ -357,41 +391,19 @@
debug-print-function ${FUNCNAME} "$@"
if [[ -x ${KDEDIR}/bin/kbuildsycoca4 && -z "${ROOT%%/}" ]]; then
- # First of all, make sure that the /usr/share/services directory exists
- # and it has the right permissions
- mkdir -p /usr/share/services
- chown root:0 /usr/share/services
- chmod 0755 /usr/share/services
-
- # kbuildsycoca4 needs a running dbus session to work correctly.
- # We have to start a new dbus session, because the DBUS_SESSION_BUS_ADDRESS in the environment
- # could from from the user's environment (through su [without '-']), causing kbuildsycoca4 to hang.
-
- echo "Starting dbus session for kbuildsycoca4"
- local _i
- for _i in $(dbus-launch); do
- # We export both the ADDRESS _and_ the PID. We need the latter only to kill our session.
- debug-print "Exporting: ${_i}"
- export "${_i}";
- done
- debug-print "kbuildsycoca4 is using ${DBUS_SESSION_BUS_ADDRESS}"
+ # Make sure tha cache file exists, or kbuildsycoca4 will fail
+ touch "${KDEDIR}/share/kde4/services/ksycoca4"
+
+ # We have to unset DISPLAY and DBUS_SESSION_BUS_ADDRESS, the ones
+ # in the user's environment (through su [without '-']) may cause
+ # kbuildsycoca4 to hang.
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
XDG_DATA_DIRS="/usr/share:${KDEDIRS//:/\/share:}/share:/usr/local/share" \
- ${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
- eend $?
-
- echo "Killing dbus session for kbuildsycoca4"
- debug-print "ADDRESS ${DBUS_SESSION_BUS_ADDRESS}"
- debug-print "PID: ${DBUS_SESSION_BUS_PID}"
- kill ${DBUS_SESSION_BUS_PID}
+ DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
+ ${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
- unset DBUS_SESSION_BUS_ADDRESS DBUS_SESSION_BUS_PID
-
- # For some reason this directory gets created with noone other than root
- # being able to read it. Hence we chmod it.
- chmod -R 0755 "${ROOT}"/usr/share/kde4
fi
}
@@ -426,13 +438,22 @@
# but this default can be overridden by defining KDE_LINGUAS_DIR.
enable_selected_linguas() {
local lingua
- comment_all_add_subdirectory "${KDE_LINGUAS_DIR:-${S}/po}"
+
for lingua in ${KDE_LINGUAS}; do
- if use linguas_${lingua}; then
+ if [ -e "${S}"/po/"${lingua}".po ]; then
+ mv "${S}"/po/"${lingua}".po "${S}"/po/"${lingua}".po.old
+ fi
+ done
+ comment_all_add_subdirectory "${KDE_LINGUAS_DIR:-${S}/po}"
+ for lingua in ${LINGUAS}; do
+ if [ -d "${S}"/po/"${lingua}" ]; then
sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-i "${KDE_LINGUAS_DIR:-${S}/po}"/CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
fi
+ if [ -e "${S}"/po/"${lingua}".po.old ]; then
+ mv "${S}"/po/"${lingua}".po.old "${S}"/po/"${lingua}".po
+ fi
done
}
1.7 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.7&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.7&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.6&r2=1.7
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- kde4-meta.eclass 15 May 2008 19:49:32 -0000 1.6
+++ kde4-meta.eclass 2 Oct 2008 06:49:02 -0000 1.7
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.6 2008/05/15 19:49:32 ingmar Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.7 2008/10/02 06:49:02 jmbsvicetto Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -17,7 +17,14 @@
inherit multilib kde4-functions kde4-base
-EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
+case "${EAPI}" in
+ 2)
+ EXPORT_FUNCTIONS pkg_setup src_unpack src_configure src_compile src_test src_install pkg_postinst pkg_postrm
+ ;;
+ *)
+ EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
+ ;;
+esac
if [[ -z ${KMNAME} ]]; then
die "kde4-meta.eclass inherited but KMNAME not defined - broken ebuild"
@@ -49,17 +56,17 @@
RDEPEND="${RDEPEND} >=kde-base/qimageblitz-0.0.4"
;;
kdepim)
- DEPEND="${DEPEND} dev-libs/boost"
+ DEPEND="${DEPEND} dev-libs/boost app-office/akonadi-server"
RDEPEND="${RDEPEND} dev-libs/boost"
if [[ ${PN} != kode ]]; then
DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}"
RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}"
fi
case ${PN} in
- akregator|kaddressbook|kmail|kmobiletools|knode|knotes|korganizer|ktimetracker)
+ akregator|kaddressbook|kjots|kmail|kmobiletools|knode|knotes|korganizer|ktimetracker)
IUSE="+kontact"
- DEPEND="${DEPEND} kontact? ( >=kde-base/kontact-${PV}:${SLOT} )"
- RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontact-${PV}:${SLOT} )"
+ DEPEND="${DEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
+ RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
;;
esac
;;
@@ -234,7 +241,7 @@
kleopatra/ConfigureChecks.cmake"
if has kontact ${IUSE//+} && use kontact; then
KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
- KMEXTRACTONLY="${KMEXTRACTONLY} kontact/interfaces/"
+ KMEXTRACTONLY="${KMEXTRACTONLY} kontactinterfaces/"
fi
;;
koffice)
@@ -248,14 +255,18 @@
esac
# Don't install cmake modules for split ebuilds to avoid collisions.
case ${KMNAME} in
- kdebase-workspace|kdebase-runtime|kdepim|kdegames|kdegraphics)
- if [[ ${PN} != "libkdegames" ]]; then
- KMCOMPILEONLY="${KMCOMPILEONLY}
- cmake/modules/"
- else
- KMEXTRA="${KMEXTRA}
- cmake/modules/"
- fi
+ kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics|kdepim)
+ case ${PN} in
+ libkdegames|libkdeedu|marble)
+ KMEXTRA="${KMEXTRA}
+ cmake/modules/"
+ ;;
+
+ *)
+ KMCOMPILEONLY="${KMCOMPILEONLY}
+ cmake/modules/"
+ ;;
+ esac
;;
esac
@@ -303,7 +314,7 @@
case ${PV} in
- scm|9999.4) : ;;
+ scm|9999*) : ;;
*) topdir="${KMNAME}-${PV}/" ;;
esac
@@ -352,7 +363,13 @@
kde4-meta_src_compile() {
debug-print-function ${FUNCNAME} "$@"
- kde4-meta_src_configure
+ case "${EAPI}" in
+ 2 | 2_pre3 | 2_pre2 | 2_pre1)
+ ;;
+ *)
+ kde4-base_meta_configure
+ ;;
+ esac
kde4-meta_src_make
}
@@ -467,7 +484,7 @@
;;
kdepim)
case ${PN} in
- kaddressbook|kmailcvt|kontact|korganizer)
+ kaddressbook|kalarm|kmailcvt|kontact|korganizer|korn)
sed -i -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
-e '/add_custom_target(kmail_xml /,/)/p' "${S}"/kmail/CMakeLists.txt || die "uncommenting xml failed"
_change_cmakelists_parent_dirs kmail
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-01-12 17:25 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-01-12 17:25 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/01/12 17:25:59
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update of kde4 eclasses with ones which understand 4.2 and live :]
Report all broken (in meaning with kde4.2) things, i will be revbumping and
fixing all packages using these eclasses but i might miss something.
Such package could became blocker for 4.2 so bumb if you maintain such thing
(i will write note on dev-ml today when i am done and if i wont forget).
Revision Changes Path
1.22 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.22&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.22&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.21&r2=1.22
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- kde4-base.eclass 6 Jan 2009 10:55:41 -0000 1.21
+++ kde4-base.eclass 12 Jan 2009 17:25:59 -0000 1.22
@@ -1,87 +1,58 @@
# Copyright 2007-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.21 2009/01/06 10:55:41 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.22 2009/01/12 17:25:59 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
# kde@gentoo.org
# @BLURB: This eclass provides functions for kde 4.X ebuilds
# @DESCRIPTION:
-# The kde4-base.eclass provides support for building KDE4 monolithic ebuilds
+# The kde4-base.eclass provides support for building KDE4 based ebuilds
# and KDE4 applications.
#
-# NOTE: This eclass uses the SLOT dependencies from EAPI="1" or compatible,
-# and use deps from EAPI="2", hence you must define EAPI="2" in the ebuild,
-# before inheriting any eclasses.
-
-inherit base cmake-utils eutils kde4-functions multilib
-
-case "${EAPI}" in
- 2)
- EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
- ;;
- *)
- EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
- ;;
-esac
+# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
+# eclass will fail with version older than 2.
-# Set the qt dependencies
-kde4-base_set_qt_dependencies() {
- local qt qtcore qtgui qt3support qtdepend qtopengldepend
+inherit base cmake-utils eutils multilib kde4-functions
- # use dependencies
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
-
- qt="["
- case "${OPENGL_REQUIRED}" in
- always)
- qt="${qt}opengl,"
- ;;
- optional)
- qt="${qt}opengl?,"
- ;;
- esac
- qt="${qt}accessibility,dbus,gif,jpeg,png,qt3support,ssl,zlib]"
- qtcore="[qt3support,ssl]"
- qtgui="[accessibility,dbus]"
- qt3support="[accessibility]"
- ;;
- esac
+get_build_type
+if [[ $BUILD_TYPE = live ]]; then
+ inherit subversion
+fi
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
+
+# @FUNCTION: kde4-base_set_qt_dependencies
+# @DESCRIPTION:
+# Set qt dependencies. And use opengl based on OPENGL_REQUIRED variable.
+kde4-base_set_qt_dependencies() {
+ local qtdepend qtopengldepend
- # split qt
qtdepend="
- x11-libs/qt-core:4${qtcore}
- x11-libs/qt-gui:4${qtgui}
- x11-libs/qt-qt3support:4${qt3support}
+ x11-libs/qt-core:4[qt3support,ssl]
+ x11-libs/qt-gui:4[accessibility,dbus]
+ x11-libs/qt-qt3support:4[accessibility]
x11-libs/qt-script:4
+ x11-libs/qt-sql:4[qt3support]
x11-libs/qt-svg:4
- x11-libs/qt-test:4"
+ x11-libs/qt-test:4
+ x11-libs/qt-webkit:4"
qtopengldepend="x11-libs/qt-opengl:4"
- # allow monolithic qt for PV < 4.1
- case "${PV}" in
- scm|9999*|4.1*|4.0.9*|4.0.8*) : ;;
- *)
- qtdepend="|| ( ( ${qtdepend} ) >=x11-libs/qt-4.3.3:4${qt} )"
- qtopengldepend="|| ( ${qtopengldepend} >=x11-libs/qt-4.3.3:4 )"
- ;;
- esac
-
# opengl dependencies
- case "${OPENGL_REQUIRED}" in
+ case ${OPENGL_REQUIRED} in
always)
- qtdepend="${qtdepend}
- ${qtopengldepend}"
- ;;
+ qtdepend="${qtdepend}
+ ${qtopengldepend}"
+ ;;
optional)
- IUSE="${IUSE} opengl"
- qtdepend="${qtdepend}
- opengl? ( ${qtopengldepend} )"
- ;;
+ IUSE="${IUSE} opengl"
+ qtdepend="${qtdepend}
+ opengl? ( ${qtopengldepend} )"
+ ;;
*)
- OPENGL_REQUIRED="never"
- ;;
+ OPENGL_REQUIRED="never"
+ ;;
esac
COMMONDEPEND="${COMMONDEPEND} ${qtdepend} !x11-libs/qt-phonon"
@@ -89,29 +60,25 @@
kde4-base_set_qt_dependencies
# Set the cmake dependencies
-case "${PV}" in
- 9999*)
- CMAKEDEPEND=">=dev-util/cmake-2.6"
- ;;
- *)
- CMAKEDEPEND=">=dev-util/cmake-2.4.7-r1"
- ;;
-esac
+# Quite a few packages fail with cmake-2.4 even for KDE 4.1, so we just require 2.6.2
+CMAKEDEPEND=">=dev-util/cmake-2.6.2"
# Set the common dependencies
DEPEND="${DEPEND} ${COMMONDEPEND} ${CMAKEDEPEND}
dev-util/pkgconfig
- kde-base/automoc
x11-libs/libXt
x11-proto/xf86vidmodeproto"
RDEPEND="${RDEPEND} ${COMMONDEPEND}"
-# Add the kdeprefix use flag
-case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- IUSE="${IUSE} kdeprefix"
- ;;
-esac
+if [[ $BUILD_TYPE = live ]]; then
+ # Disable tests for live ebuilds
+ RESTRICT="${RESTRICT} test"
+ # Live ebuilds in kde-base default to kdeprefix by default
+ IUSE="${IUSE} +kdeprefix"
+else
+ # All other ebuild types default to -kdeprefix as before
+ IUSE="${IUSE} kdeprefix"
+fi
# @ECLASS-VARIABLE: OPENGL_REQUIRED
# @DESCRIPTION:
@@ -125,131 +92,148 @@
# This variable must be set before inheriting any eclasses. Defaults to 'never'.
CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}"
-case "${CPPUNIT_REQUIRED}" in
+case ${CPPUNIT_REQUIRED} in
always)
- DEPEND="${DEPEND} dev-util/cppunit"
- ;;
+ DEPEND="${DEPEND} dev-util/cppunit"
+ ;;
optional)
- IUSE="${IUSE} test"
- DEPEND="${DEPEND}
- test? ( dev-util/cppunit )"
- ;;
+ IUSE="${IUSE} test"
+ DEPEND="${DEPEND}
+ test? ( dev-util/cppunit )"
+ ;;
*)
- CPPUNIT_REQUIRED="never"
- ;;
+ CPPUNIT_REQUIRED="never"
+ ;;
esac
# @ECLASS-VARIABLE: NEED_KDE
# @DESCRIPTION:
# This variable sets the version of KDE4 which will be used by the eclass.
-# This variable must be set by the ebuild, for all categories except for "kde-base".
# For kde-base packages, if it is not set by the ebuild,
-# it's assumed that the required KDE4 version is the latest, non-live, available.
+# it's assumed that the required KDE4 version is the latest available.
+# For non kde-base packages, it is also set to the latest by default.
+#
+# For more precise adjustments or for specifying particular kde version,
+# KDE_MINIMAL variable can be used.
#
# @CODE
# Acceptable values are:
# - latest - Use latest version in the portage tree
-# Default for kde-base ebuilds. Banned for ebuilds not part of kde or koffice.
-# - svn - Use svn release (live ebuilds)
-# - :SLOT - Use any version in the SLOT specified in the NEED_KDE value.
-# - VERSION_NUMBER - Use the minimum KDE4 version specified in the NEED_KDE value.
-# - VERSION_NUMBER:SLOT - Use the minimum KDE4 version and the SLOT specified in the NEED_KDE value.
+# Default for kde-base ebuilds.
+# - live - Use live release (live ebuilds)
# - none - Let the ebuild handle SLOT, kde dependencies, KDEDIR, ...
+# - 4.2, 4.1, kde-4 - respective slots for kde versions
# @CODE
-#
-# Note: There is no default NEED_KDE for ebuilds not in kde-base or part of
-# koffice, so you must set it explicitly in the ebuild, in all other cases.
-if [[ -z ${NEED_KDE} ]]; then
- if [[ -n ${KDEBASE} ]]; then
- NEED_KDE="latest"
- else
- die "kde4-base.eclass inherited but NEED_KDE not defined - broken ebuild"
- fi
-fi
+# Note: default NEED_KDE is latest
+NEED_KDE="${NEED_KDE:=latest}"
export NEED_KDE
+# @ECLASS-VARIABLE: KDE_MINIMAL
+# @DESCRIPTION:
+# This wariable is used when NEED_KDE="latest" is set, to specify the
+# required KDE minimal version for which apps will work.
+# @CODE
+# KDE_MINIMAL="-4.1"
+# @CODE
+# Note: default minimal version is kde-4.1, which means that the apps will work
+# with any KDE version >=${KDE_MINIMAL}
+KDE_MINIMAL="${KDE_MINIMAL:=4.1}"
+export KDE_MINIMAL
+
+# FIXME: the code section, explanation of live. The last sentence needs other
+# formulation too.
+#
+# @ECLASS-VARIABLE: KDE_WANTED
+# @DESCRIPTION:
+# When NEED_KDE=latest is inherited, KDE_WANTED serves to indicate the prefered kde
+# version. It's value is looked for before any other. Useful when having more
+# +kdeprefix installs: you can choose which kde version, if present, to link
+# against.
+#
+# @CODE
+# Acceptable values are:
+# stable = whatever is main tree (now 4.1)
+# testing = whatever is in testing on main tree
+# snapshot = whatever is released under snapshots (4.2 at present)
+# live = live svn ebuilds, also default value, do not be scared it goes in this
+#
+# order: live->snapshot->testing->stable, when searching for kde. This way we
+# allow users to use just kde4snapshots and use software from the tree.
+KDE_WANTED="${KDE_WANTED:=live}"
+export KDE_WANTED
+
case ${NEED_KDE} in
latest)
- # Should only be used by 'kde-base'-ebuilds
- if [[ "${KDEBASE}" == "kde-base" ]]; then
+ if [[ $KDEBASE = kde-base ]]; then
case ${PV} in
+ 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
+ _kdedir="4.2"
+ _pv="-${PV}:4.2"
+ _pvn="-${PV}"
+ ;;
4.1*| 4.0.9* | 4.0.8*)
_kdedir="4.1"
- _pv="-${PV}:4.1" ;;
+ _pv="-${PV}:4.1"
+ _pvn="-${PV}"
+ ;;
4.0*)
_kdedir="4.0"
- _pv="-${PV}:kde-4" ;;
+ _pv="-${PV}:kde-4"
+ _pvn="-${PV}"
+ ;;
3.9*)
_kdedir="3.9"
- _pv="-${PV}:kde-4" ;;
+ _pv="-${PV}:kde-4"
+ _pvn="-${PV}"
+ ;;
+ 9999*)
+ _kdedir="live"
+ _pv="-${PV}:live"
+ _pvn="-${PV}"
+ ;;
*)
die "NEED_KDE=latest not supported for PV=${PV}" ;;
- esac
+ esac
_operator=">="
else
- case ${PV} in
- 4.1 | 4.0.9* | 4.0.8*) _kdedir="4.1" ;;
- 4.0*) _kdedir="4.0" ;;
- 3.9*) _kdedir="3.9" ;;
- *) die "NEED_KDE=latest not supported for PV=${PV}" ;;
- esac
+ # this creates dependency on any version of kde4
+ _operator=">="
+ _pv="-${KDE_MINIMAL}"
+ _pvn=${_pv}
fi
;;
- # NEED_KDE=":${SLOT}"
- :kde-svn)
- _kdedir="svn"
- _pv="-${NEED_KDE}"
- export NEED_KDE="svn"
- ;;
- :4.1)
- _kdedir="4.1"
- _pv="${NEED_KDE}"
- ;;
- :kde-4)
- _kdedir="4.0"
- _pv="${NEED_KDE}"
- ;;
-
- # NEED_KDE="${PV}:${SLOT}"
- *:kde-svn)
- _kdedir="svn"
- _operator=">="
- _pv="-${NEED_KDE}"
- export NEED_KDE="svn"
- ;;
- *:4.1)
- _kdedir="4.1"
- _operator=">="
- _pv="-${NEED_KDE}"
- ;;
- *:kde-4)
- _kdedir="4.0"
- _operator=">="
- _pv="-${NEED_KDE}"
- ;;
-
# NEED_KDE="${PV}"
- scm|svn|9999*)
- _kdedir="svn"
+ scm|svn|live|9999*)
+ _kdedir="live"
+ _operator=">="
+ _pv="-${NEED_KDE}:live"
+ _pvn="-${NEED_KDE}"
+ export NEED_KDE="live"
+ ;;
+ 4.2 | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
+ _kdedir="4.2"
+ _pv="-${NEED_KDE}:4.2"
+ _pvn="-${NEED_KDE}"
_operator=">="
- _pv="-${NEED_KDE}:kde-svn"
- export NEED_KDE="svn"
;;
4.1 | 4.0.9* | 4.0.8*)
_kdedir="4.1"
- _operator=">="
_pv="-${NEED_KDE}:4.1"
+ _pvn="-${NEED_KDE}"
+ _operator=">="
;;
4.0* | 4)
_kdedir="4.0"
_operator=">="
_pv="-${NEED_KDE}:kde-4"
+ _pvn="-${NEED_KDE}"
;;
3.9*)
_kdedir="3.9"
_operator=">="
_pv="-${NEED_KDE}:kde-4"
+ _pvn="-${NEED_KDE}"
;;
# The ebuild handles dependencies, KDEDIR, SLOT.
@@ -265,103 +249,161 @@
if [[ ${NEED_KDE} != none ]]; then
#Set the SLOT
- if [[ -n ${KDEBASE} ]]; then
- if [[ ${NEED_KDE} = svn ]]; then
- SLOT="kde-svn"
+ if [[ -n $KDEBASE ]]; then
+ if [[ $NEED_KDE = live ]]; then
+ SLOT="live"
else
- case ${PV} in
- 4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
- *) SLOT="kde-4" ;;
- esac
+ case ${KMNAME} in
+ koffice)
+ case ${PV} in
+ 9999*) SLOT="live" ;;
+ *) SLOT="2" ;;
+ esac
+ ;;
+ kdevelop)
+ case ${PV} in
+ 9999*) SLOT="live" ;;
+ 4.0*|3.9*) SLOT="4" ;;
+ esac
+ ;;
+ kdevplatform)
+ case ${PV} in
+ 9999*) SLOT="live" ;;
+ 1.0*|0.9*) SLOT="1" ;;
+ esac
+ ;;
+ *)
+ case ${PV} in
+ 9999*) SLOT="live" ;;
+ 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
+ 4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
+ *) SLOT="4.1" ;;
+ esac
+ ;;
+ esac
fi
fi
- # Block install of other SLOTS unless kdeprefix
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- for KDE_SLOT in ${KDE_SLOTS[@]}; do
- # block non kdeprefix ${PN} on other slots
- if [[ ${SLOT} != ${KDE_SLOT} ]]; then
- DEPEND="${DEPEND}
- !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
- RDEPEND="${RDEPEND}
- !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
- fi
- done
- ;;
- esac
+ # Block installation of other SLOTS unless kdeprefix
+ for KDE_SLOT in ${KDE_SLOTS[@]}; do
+ # block non kdeprefix ${PN} on other slots
+ # we do this only if we do not depend on any version of kde
+ if [[ ${SLOT} != ${KDE_SLOT} ]]; then
+ DEPEND="${DEPEND}
+ !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
+ RDEPEND="${RDEPEND}
+ !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
+ fi
+ done
# Adding kdelibs, kdepimlibs and kdebase-data deps to all other packages.
# We only need to add the dependencies if ${PN} is not "kdelibs" or "kdepimlibs"
- if [[ ${PN} != "kdelibs" ]]; then
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}[kdeprefix=]"
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}[kdeprefix=]"
- ;;
- *)
- DEPEND="${DEPEND} ${_operator}kde-base/kdelibs${_pv}"
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdelibs${_pv}"
- ;;
- esac
- if [[ ${PN} != "kdepimlibs" ]]; then
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix=]"
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix=]"
- ;;
- *)
- DEPEND="${DEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdepimlibs${_pv}"
- esac
- if [[ ${PN} != "kdebase-data" ]]; then
- case "${EAPI}" in
- 2)
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdebase-data${_pv}[kdeprefix=]"
- ;;
- *)
- RDEPEND="${RDEPEND} ${_operator}kde-base/kdebase-data${_pv}"
- ;;
- esac
+ if [[ $PN != kdelibs ]]; then
+ DEPEND="${DEPEND}
+ kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
+ RDEPEND="${RDEPEND}
+ kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
+ if [[ $PN != kdepimlibs ]]; then
+ DEPEND="${DEPEND}
+ kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
+ RDEPEND="${RDEPEND}
+ kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
+ if [[ $PN != kdebase-data ]]; then
+ RDEPEND="${RDEPEND}
+ kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )"
fi
fi
fi
-
- unset _operator _pv
+ unset _operator _pv _pvn
fi
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
# koffice ebuild, the URI should be set in the ebuild itself
-if [[ -n ${KDEBASE} ]]; then
- if [[ -n ${KMNAME} ]]; then
- _kmname=${KMNAME}
- else
- _kmname=${PN}
- fi
- _kmname_pv="${_kmname}-${PV}"
- if [[ ${NEED_KDE} != "svn" ]]; then
- case ${KDEBASE} in
- kde-base)
- case ${PV} in
- 4.0.9* | 4.0.8*)
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
- *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2";;
+case ${SLOT} in
+ live)
+ ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
+ # Split ebuild, or extragear stuff
+ if [[ -n $KMNAME ]]; then
+ ESVN_PROJECT="${KMNAME}"
+ if [[ -z ${KMNOMODULE} && -z ${KMMODULE} ]]; then
+ KMMODULE="${PN}/"
+ fi
+ # Split kde-base/ ebuilds: (they reside in trunk/KDE)
+ case ${KMNAME} in
+ kdebase-*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/kdebase/${KMNAME#kdebase-}/"
+ ;;
+ kdereview)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ;;
+ kde*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${KMNAME}"
+ ;;
+ extragear*|playground*)
+ case ${PN} in
+ *-plasma)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ESVN_PROJECT="${KMNAME}/${KMMODULE}"
+ ;;
+ *)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ;;
+ esac
+ ;;
+ koffice)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
+ ;;
+ *)
+ # Extragear material
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}/"
+ ;;
esac
- ;;
- koffice)
- SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
- ;;
- esac
- fi
- unset _kmname _kmname_pv
-fi
+ else
+ # kdelibs, kdepimlibs
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${PN}"
+ ESVN_PROJECT="${PN}"
+ fi
+ # limit syncing to 1 hour.
+ ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
+ ;;
+ *)
+ if [[ -n $KDEBASE ]]; then
+ if [[ -n ${KMNAME} ]]; then
+ _kmname=${KMNAME}
+ else
+ _kmname=${PN}
+ fi
+ _kmname_pv="${_kmname}-${PV}"
+ if [[ $NEED_KDE != live ]]; then
+ case ${KDEBASE} in
+ kde-base)
+ case ${PV} in
+ 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
+ SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
+ *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
+ esac
+ ;;
+ koffice)
+ SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
+ ;;
+ esac
+ fi
+ unset _kmname _kmname_pv
+ fi
+ ;;
+esac
debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}"
# @ECLASS-VARIABLE: PREFIX
# @DESCRIPTION:
# Set the installation PREFIX. All kde-base ebuilds go into the KDE4 installation directory.
-# Applications installed by the other ebuilds go into /usr/ by default, this value
+# Applications installed by the other ebuilds go into ${KDEDIR} by default, this value
# can be superseded by defining PREFIX before inheriting kde4-base.
# This value is set on pkg_setup
PREFIX=""
@@ -380,114 +422,37 @@
# Don't set KDEHOME during compile, it will cause access violations
unset KDEHOME
- if [[ ${NEED_KDE} != none ]]; then
+ # Search for best suitable kde installation for misc kde package.
+ # Computation based on NEED_KDE and KDE_MINIMAL
+ get_latest_kdedir
+ if [[ $NEED_KDE != none ]]; then
# Set PREFIX
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- if use kdeprefix; then
- KDEDIR="/usr/kde/${_kdedir}"
- KDEDIRS="/usr:/usr/local:${KDEDIR}"
- else
- KDEDIR="/usr"
- KDEDIRS="/usr:/usr/local"
- fi
- ;;
- *)
- KDEDIR="/usr"
- KDEDIRS="/usr:/usr/local"
- ;;
- esac
+ if use kdeprefix; then
+ KDEDIR="/usr/kde/${_kdedir}"
+ KDEDIRS="/usr/local/:/usr:${KDEDIR}"
+ else
+ KDEDIR="/usr"
+ KDEDIRS="/usr/local/:/usr"
+ fi
fi
-
# Set the prefix based on KDEDIR
# Make it a consequence of kdeprefix
- PREFIX=${KDEDIR}
+ PREFIX=$KDEDIR
unset _kdedir
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
- die "built_with_use illegal in this EAPI!"
- ;;
- *)
- # Make KDE4_BUILT_WITH_USE_CHECK an array if it isn't already
- local line kde4_built_with_use_check=()
- if [[ -n ${KDE4_BUILT_WITH_USE_CHECK[@]} && $(declare -p KDE4_BUILT_WITH_USE_CHECK) != 'declare -a '* ]]; then
- while read line; do
- [[ -z ${line} ]] && continue
- kde4_built_with_use_check+=("${line}")
- done <<< "${KDE4_BUILT_WITH_USE_CHECK}"
- KDE4_BUILT_WITH_USE_CHECK=("${kde4_built_with_use_check[@]}")
- fi
-
- # KDE4 applications require qt4 compiled with USE="accessibility dbus gif jpeg png qt3support ssl zlib".
- if has_version '<x11-libs/qt-4.4_alpha:4'; then
- QT4_BUILT_WITH_USE_CHECK="${QT4_BUILT_WITH_USE_CHECK} accessibility dbus gif jpeg png qt3support ssl zlib"
- else
- KDE4_BUILT_WITH_USE_CHECK=("${KDE4_BUILT_WITH_USE_CHECK[@]}"
- "x11-libs/qt-core qt3support ssl"
- "x11-libs/qt-gui accessibility dbus"
- "x11-libs/qt-qt3support accessibility")
- fi
-
- if has opengl ${IUSE//+} && use opengl || [[ ${OPENGL_REQUIRED} == always ]]; then
- if has_version '<x11-libs/qt-4.4.0_alpha:4'; then
- QT4_BUILT_WITH_USE_CHECK="${QT4_BUILT_WITH_USE_CHECK} opengl"
- fi
- fi
- kde4-functions_check_use
- ;;
- esac
-}
-
-# @FUNCTION: kde4-base_apply_patches
-# @DESCRIPTION:
-# This function applies patches.
-#
-# If the directory ${WORKDIR}/patches/ exists, we apply all patches in that
-# directory, provided they follow this format:
-# @CODE
-# - Monolithic ebuilds, (from kde-base)
-# - $CATEGORY=kde-base:
-# Apply ${CHILD_EBUILD_NAME}-${SLOT}-*{diff,patch}
-# - $CATEGORY=!kde-base:
-# Apply ${CHILD_EBUILD_NAME}-${PV}-*{diff,patch}
-# - Split ebuilds:
-# - $CATEGORY=kde-base:
-# Apply ${PN}-${SLOT}-*{diff,patch}
-# - $CATEGORY!=kde-base:
-# Apply ${PN}-${PV}-*{diff,patch}
-# @CODE
-#
-# If ${PATCHES} is non-zero all patches in it get applied. If there is more
-# than one patch please make ${PATCHES} an array for proper quoting.
-kde4-base_apply_patches() {
- local _patchdir _packages _p _f
- _patchdir="${WORKDIR}/patches/"
- if [[ -d "${_patchdir}" ]]; then
- if is-parent-package ${CATEGORY}/${PN} ; then
- _packages="$(get-child-packages ${CATEGORY}/${PN})"
- _packages="${_packages//${CATEGORY}\//} ${PN}"
- else
- _packages="${PN}"
- fi
- if [[ $(declare -p PATCHES) != 'declare -a '* ]]; then
- die "PATCHES needs to be an array!"
- fi
- for _p in ${_packages}; do
- for _f in "${_patchdir}"/${_p}-${PV}-*{diff,patch}; do
- [[ -e ${_f} ]] && PATCHES+=("${_f}")
- done
- if [[ -n "${KDEBASE}" ]]; then
- for _f in "${_patchdir}"/${_p}-${SLOT}-*{diff,patch}; do
- [[ -e ${_f} ]] && PATCHES+=("${_f}")
- done
- fi
- done
+ # check if qt has correct deps
+ [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
+ die "built_with_use illegal in this EAPI!"
+
+ if [[ $BUILD_TYPE = live && -z $I_KNOW_WHAT_I_AM_DOING ]]; then
+ echo
+ elog "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
+ elog "Use it at your own risk."
+ elog "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
+ echo
fi
- [[ -n ${PATCHES[@]} ]] && base_src_unpack autopatch
}
# @FUNCTION: kde4-base_src_unpack
@@ -495,66 +460,79 @@
# This function unpacks the source tarballs for KDE4 applications.
#
# If no argument is passed to this function, then standard src_unpack is
-# executed. Otherwise options are passed to base_src_unpack.
-#
-# In addition it calls kde4-base_apply_patches when no arguments are passed to
-# this function.
-#
-# It also handles translations if KDE_LINGUAS is defined. See KDE_LINGUAS and
-# enable_selected_linguas() in kde4-functions.eclass(5) for further details.
+# executed. Otherwise, options are passed to base_src_unpack.
kde4-base_src_unpack() {
debug-print-function $FUNCNAME "$@"
- [[ -z "${KDE_S}" ]] && KDE_S="${S}"
-
- if [[ -z $* ]]; then
- # Unpack first and deal with KDE patches after examing possible patch sets.
- # To be picked up, patches need to conform to the guidelines stated before.
- # Monolithic ebuilds will use the split ebuild patches.
- [[ -d "${KDE_S}" ]] || unpack ${A}
- base_src_unpack $*
+ if [[ $BUILD_TYPE = live ]]; then
+ local cleandir
+ cleandir="${ESVN_STORE_DIR}/KDE"
+ if [[ -d "${cleandir}" ]]; then
+ ewarn "'${cleandir}' has been found. Moving contents to new location."
+ addwrite "${ESVN_STORE_DIR}"
+ # Split kdebase
+ local module
+ if pushd "${cleandir}"/kdebase/kdebase > /dev/null; then
+ for module in `find . -maxdepth 1 -type d -name [a-z0-9]\*`; do
+ module="${module#./}"
+ mkdir -p "${ESVN_STORE_DIR}/kdebase-${module}" && mv -f "${module}" "${ESVN_STORE_DIR}/kdebase-${module}" || \
+ die "Failed to move to '${ESVN_STORE_DIR}/kdebase-${module}'."
+ done
+ popd > /dev/null
+ rm -fr "${cleandir}/kdebase" || \
+ die "Failed to remove ${cleandir}/kdebase. You need to remove it manually."
+ fi
+ # Move the rest
+ local pkg
+ for pkg in "${cleandir}"/*; do
+ mv -f "${pkg}" "${ESVN_STORE_DIR}"/ || eerror "failed to move ${pkg}"
+ done
+ rmdir "${cleandir}" || die "Could not move obsolete KDE store dir. Please move '${cleandir}' contents to appropriate location (possibly ${ESVN_STORE_DIR}) and manually remove '${cleandir}' in order to continue."
+ fi
+ subversion_src_unpack
else
- # Call base_src_unpack, which unpacks and patches
- # step by step transparently as defined in the ebuild.
- base_src_unpack $*
+ [[ -z $KDE_S ]] && KDE_S="${S}"
+ if [[ -z $* ]]; then
+ # Unpack first and deal with KDE patches after examing possible patch sets.
+ # To be picked up, patches need to conform to the guidelines stated before.
+ # Monolithic ebuilds will use the split ebuild patches.
+ [[ -d "${KDE_S}" ]] || unpack ${A}
+ fi
+ # Updated cmake dir
+ if [[ -d "${WORKDIR}/cmake" && -d "${KDE_S}/cmake" ]]; then
+ ebegin "Updating cmake/ directory..."
+ rm -rf "${KDE_S}/cmake" || die "Unable to remove old cmake/ directory"
+ ln -s "${WORKDIR}/cmake" "${KDE_S}/cmake" || die "Unable to symlink the new cmake/ directory"
+ eend 0
+ fi
fi
+}
- # Updated cmake dir
- if [[ -d "${WORKDIR}/cmake" ]] && [[ -d "${KDE_S}/cmake" ]]; then
- ebegin "Updating cmake/ directory..."
- rm -rf "${KDE_S}/cmake" || die "Unable to remove old cmake/ directory"
- ln -s "${WORKDIR}/cmake" "${KDE_S}/cmake" || die "Unable to symlink the new cmake/ directory"
- eend 0
- fi
+# @FUNCTION: kde4-base_src_compile
+# @DESCRIPTION:
+# General pre-configure and pre-compile function for KDE4 applications.
+# It also handles translations if KDE_LINGUAS is defined. See KDE_LINGUAS and
+# enable_selected_linguas() in kde4-functions.eclass(5) for further details.
+kde4-base_src_prepare() {
+ debug-print-function ${FUNCNAME} "$@"
# Only enable selected languages, used for KDE extragear apps.
- if [[ -n ${KDE_LINGUAS} ]]; then
+ if [[ -n $KDE_LINGUAS ]]; then
enable_selected_linguas
fi
-}
-
-# transition function so we will be compatible with soon to come eclasses
-kde4-base_src_prepare() {
+ # Autopatch
base_src_prepare
-}
-# @FUNCTION: kde4-base_src_compile
-# @DESCRIPTION:
-# General function for compiling KDE4 applications.
-kde4-base_src_compile() {
- debug-print-function ${FUNCNAME} "$@"
- case "${EAPI}" in
- 2)
- ;;
- *)
- kde4-base_src_configure
- ;;
- esac
- if [[ -d ${WORKDIR}/${PN}_build ]]; then
- pushd "${WORKDIR}"/${PN}_build > /dev/null
+ # Save library dependencies
+ if [[ -n $KMSAVELIBS ]] ; then
+ save_library_dependencies
+ fi
+
+ # Inject library dependencies
+ if [[ -n $KMLOADLIBS ]] ; then
+ load_library_dependencies
fi
- [ -e [Mm]akefile ] && kde4-base_src_make
}
# @FUNCTION: kde4-base_src_configure
@@ -563,23 +541,25 @@
kde4-base_src_configure() {
debug-print-function ${FUNCNAME} "$@"
- # Final flag handling
- if has kdeenablefinal ${IUSE//+} && use kdeenablefinal; then
- echo "Activating enable-final flag"
- mycmakeargs="${mycmakeargs} -DKDE4_ENABLE_FINAL=ON"
+ # We prefer KDE's own Debugfull mode over the standard Debug
+ if has debug ${IUSE//+} && use debug ; then
+ ebegin "Enabling debug flag"
+ mycmakeargs="${mycmakeargs} -DCMAKE_BUILD_TYPE=Debugfull"
+ eend $?
fi
# Enable generation of HTML handbook
if has htmlhandbook ${IUSE//+} && use htmlhandbook; then
- echo "Enabling building of HTML handbook"
+ ebegin "Enabling building of HTML handbook"
mycmakeargs="${mycmakeargs} -DKDE4_ENABLE_HTMLHANDBOOK=ON"
+ eend $?
fi
# Build tests in src_test only, where we override this value
mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=OFF"
# Set distribution name
- [[ ${PN} == "kdelibs" ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
+ [[ $PN = kdelibs ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
# runpath linking
mycmakeargs="${mycmakeargs} -DKDE4_USE_ALWAYS_FULL_RPATH=ON"
@@ -588,7 +568,7 @@
mycmakeargs="${mycmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
# If prefix is /usr, sysconf needs to be /etc, not /usr/etc
- [[ "${PREFIX}" == "/usr" ]] && mycmakeargs="${mycmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
+ use kdeprefix || mycmakeargs="${mycmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
# Set environment
QTEST_COLORED=1
@@ -597,7 +577,33 @@
# hardcode path to *.cmake KDE files
PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig"
- [ -e CMakeLists.txt ] && cmake-utils_src_configureout
+ # additonal arguments for KOFFICE
+ if [[ $KMNAME = koffice ]]; then
+ case ${PN} in
+ koffice-data) : ;;
+ *)
+ mycmakeargs="${mycmakeargs}
+ -DWITH_OpenEXR=ON
+ $(cmake-utils_use_with crypt QCA2)
+ $(cmake-utils_use_with opengl OpenGL)"
+ if use crypt; then
+ mycmakeargs="${mycmakeargs}
+ -DQCA2_LIBRARIES=/usr/$(get_libdir)/qca2/libqca.so.2"
+ fi
+ ;;
+ esac
+ fi
+
+ [ -e CMakeLists.txt ] && cmake-utils_src_configure
+}
+
+# @FUNCTION: kde4-base_src_compile
+# @DESCRIPTION:
+# General function for compiling KDE4 applications.
+kde4-base_src_compile() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ kde4-base_src_make
}
# @FUNCTION: kde4-base_src_make
@@ -607,7 +613,10 @@
kde4-base_src_make() {
debug-print-function ${FUNCNAME} "$@"
- cmake-utils_src_make "$@"
+ if [[ -d "$WORKDIR/${PN}_build" ]]; then
+ pushd "${WORKDIR}"/${PN}_build > /dev/null
+ fi
+ [ -e [Mm]akefile ] && cmake-utils_src_make "$@"
}
# @FUNCTION: kde4-base_src_test
@@ -629,8 +638,12 @@
kde4-base_src_install() {
debug-print-function ${FUNCNAME} "$@"
+ if [[ -n $KMSAVELIBS ]] ; then
+ install_library_dependencies
+ fi
+
kde4-base_src_make_doc
- if [[ -d ${WORKDIR}/${PN}_build ]]; then
+ if [[ -d "$WORKDIR/${PN}_build" ]]; then
pushd "${WORKDIR}"/${PN}_build > /dev/null
fi
[ -e [Mm]akefile ] && cmake-utils_src_install
@@ -647,7 +660,7 @@
[[ -s $doc ]] && dodoc ${doc}
done
- if [[ -z ${KMNAME} ]]; then
+ if [[ -z $KMNAME ]]; then
for doc in {apps,runtime,workspace,.}/*/{AUTHORS,README*}; do
if [[ -s $doc ]]; then
local doc_complete=${doc}
@@ -657,7 +670,7 @@
done
fi
- if [[ -n ${KDEBASE} && -d "${D}"/usr/share/doc/${PF} ]]; then
+ if [[ -n ${KDEBASE} && -d "${D}/usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/kde && \
mv "${D}"/usr/share/doc/${PF} "${D}"/usr/share/doc/kde/ || \
1.10 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.9&r2=1.10
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- kde4-functions.eclass 7 Oct 2008 01:41:36 -0000 1.9
+++ kde4-functions.eclass 12 Jan 2009 17:25:59 -0000 1.10
@@ -1,386 +1,49 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.9 2008/10/07 01:41:36 jmbsvicetto Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.10 2009/01/12 17:25:59 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
# kde@gentoo.org
-# @BLURB: Common ebuild functions for monolithic and split KDE 4 packages
+# @BLURB: Common ebuild functions for KDE 4 packages
# @DESCRIPTION:
# This eclass contains all functions shared by the different eclasses,
-# for KDE 4 monolithic and split ebuilds.
-#
-# NOTE: This eclass uses the SLOT dependencies from EAPI="1" or compatible,
-# hence you must define EAPI="1" in the ebuild, before inheriting any eclasses.
+# for KDE 4 ebuilds.
+
+# @ECLASS-VARIABLE: EAPI
+# @DESCRIPTION:
+# By default kde eclass wants eapi 2 which might be redefinable.
+case ${EAPI} in
+ 2) : ;;
+ *) die "No way! EAPI older than 2 is not supported." ;;
+esac
# @ECLASS-VARIABLE: KDEBASE
# @DESCRIPTION:
# This gets set to a non-zero value when a package is considered a kde or
# koffice ebuild.
-if [[ "${CATEGORY}" == "kde-base" ]]; then
+if [[ $CATEGORY = kde-base ]]; then
debug-print "${ECLASS}: KDEBASE ebuild recognized"
- KDEBASE="kde-base"
+ KDEBASE=kde-base
fi
# is this a koffice ebuild?
-if [[ "${KMNAME}" == "koffice" || "${PN}" == "koffice" ]]; then
+if [[ $KMNAME = koffice || $PN = koffice ]]; then
debug-print "${ECLASS}: KOFFICE ebuild recognized"
- KDEBASE="koffice"
+ KDEBASE=koffice
fi
# @ECLASS-VARIABLE: KDE_SLOTS
# @DESCRIPTION:
-# The slots used by all KDE versions after 4.0 - this doesn't include kde-3.5 and the
-# live-ebuilds that use the following var.
-KDE_SLOTS=( "kde-4" "4.1" )
+# The slots used by all KDE versions later than 4.0. The live-ebuilds use
+# KDE_LIVE_SLOTS instead.
+KDE_SLOTS=( kde-4 4.1 4.2 )
# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
# @DESCRIPTION:
# The slots used by all KDE live versions.
-KDE_LIVE_SLOTS=( "kde-svn" )
-
-# @ECLASS-VARIABLE: KDE_DERIVATION_MAP
-# @DESCRIPTION:
-# Map of the monolithic->split ebuild derivation.
-# Used to build dependencies describing the relationships between them:
-# Monolithic ebuilds block their split counterparts in the same slot, and vice versa.
-#
-# Also see get-parent-package(), get-child-packages(), is-parent-package()
-KDE_DERIVATION_MAP='
-app-office/koffice app-office/karbon
-app-office/koffice app-office/kchart
-app-office/koffice app-office/kexi
-app-office/koffice app-office/kformula
-app-office/koffice app-office/kivio
-app-office/koffice app-office/koffice-data
-app-office/koffice app-office/koffice-libs
-app-office/koffice app-office/koshell
-app-office/koffice app-office/kplato
-app-office/koffice app-office/kpresenter
-app-office/koffice app-office/krita
-app-office/koffice app-office/kspread
-app-office/koffice app-office/kugar
-app-office/koffice app-office/kword
-kde-base/kdeaccessibility kde-base/kdeaccessibility-colorschemes
-kde-base/kdeaccessibility kde-base/kdeaccessibility-iconthemes
-kde-base/kdeaccessibility kde-base/kmag
-kde-base/kdeaccessibility kde-base/kmousetool
-kde-base/kdeaccessibility kde-base/kmouth
-kde-base/kdeaccessibility kde-base/kttsd
-kde-base/kdeadmin kde-base/kcron
-kde-base/kdeadmin kde-base/kdat
-kde-base/kdeadmin kde-base/knetworkconf
-kde-base/kdeadmin kde-base/kpackage
-kde-base/kdeadmin kde-base/ksystemlog
-kde-base/kdeadmin kde-base/ksysv
-kde-base/kdeadmin kde-base/kuser
-kde-base/kdeadmin kde-base/lilo-config
-kde-base/kdeadmin kde-base/secpolicy
-kde-base/kdeartwork kde-base/kdeartwork-colorschemes
-kde-base/kdeartwork kde-base/kdeartwork-emoticons
-kde-base/kdeartwork kde-base/kdeartwork-icewm-themes
-kde-base/kdeartwork kde-base/kdeartwork-iconthemes
-kde-base/kdeartwork kde-base/kdeartwork-kscreensaver
-kde-base/kdeartwork kde-base/kdeartwork-kworldclock
-kde-base/kdeartwork kde-base/kdeartwork-sounds
-kde-base/kdeartwork kde-base/kdeartwork-styles
-kde-base/kdeartwork kde-base/kdeartwork-wallpapers
-kde-base/kdebase kde-base/dolphin
-kde-base/kdebase kde-base/drkonqi
-kde-base/kdebase kde-base/kappfinder
-kde-base/kdebase kde-base/kcheckpass
-kde-base/kdebase kde-base/kcminit
-kde-base/kdebase kde-base/kcmshell
-kde-base/kdebase kde-base/kcontrol
-kde-base/kdebase kde-base/kde-menu
-kde-base/kdebase kde-base/kde-menu-icons
-kde-base/kdebase kde-base/kde-wallpapers
-kde-base/kdebase kde-base/kdebase-cursors
-kde-base/kdebase kde-base/kdebase-data
-kde-base/kdebase kde-base/kdebase-kioslaves
-kde-base/kdebase kde-base/kdebase-startkde
-kde-base/kdebase kde-base/kdebugdialog
-kde-base/kdebase kde-base/kdepasswd
-kde-base/kdebase kde-base/kdesu
-kde-base/kdebase kde-base/kdialog
-kde-base/kdebase kde-base/kdm
-kde-base/kdebase kde-base/keditbookmarks
-kde-base/kdebase kde-base/kfile
-kde-base/kdebase kde-base/kfind
-kde-base/kdebase kde-base/khelpcenter
-kde-base/kdebase kde-base/khotkeys
-kde-base/kdebase kde-base/kiconfinder
-kde-base/kdebase kde-base/kinfocenter
-kde-base/kdebase kde-base/kioclient
-kde-base/kdebase kde-base/klipper
-kde-base/kdebase kde-base/kmenuedit
-kde-base/kdebase kde-base/kmimetypefinder
-kde-base/kdebase kde-base/knetattach
-kde-base/kdebase kde-base/knewstuff
-kde-base/kdebase kde-base/knotify
-kde-base/kdebase kde-base/konqueror
-kde-base/kdebase kde-base/konsole
-kde-base/kdebase kde-base/kpasswdserver
-kde-base/kdebase kde-base/kquitapp
-kde-base/kdebase kde-base/kreadconfig
-kde-base/kdebase kde-base/krunner
-kde-base/kdebase kde-base/kscreensaver
-kde-base/kdebase kde-base/ksmserver
-kde-base/kdebase kde-base/ksplash
-kde-base/kdebase kde-base/kstart
-kde-base/kdebase kde-base/kstartupconfig
-kde-base/kdebase kde-base/kstyles
-kde-base/kdebase kde-base/ksysguard
-kde-base/kdebase kde-base/ksystraycmd
-kde-base/kdebase kde-base/ktimezoned
-kde-base/kdebase kde-base/ktip
-kde-base/kdebase kde-base/ktraderclient
-kde-base/kdebase kde-base/kuiserver
-kde-base/kdebase kde-base/kurifilter-plugins
-kde-base/kdebase kde-base/kwin
-kde-base/kdebase kde-base/kwrite
-kde-base/kdebase kde-base/libkonq
-kde-base/kdebase kde-base/libkworkspace
-kde-base/kdebase kde-base/libplasma
-kde-base/kdebase kde-base/libtaskmanager
-kde-base/kdebase kde-base/nepomuk
-kde-base/kdebase kde-base/nsplugins
-kde-base/kdebase kde-base/phonon
-kde-base/kdebase kde-base/phonon-xine
-kde-base/kdebase kde-base/plasma
-kde-base/kdebase kde-base/plasma-apps
-kde-base/kdebase kde-base/plasma-workspace
-kde-base/kdebase kde-base/renamedlg-plugins
-kde-base/kdebase kde-base/solid
-kde-base/kdebase kde-base/solid-hardware
-kde-base/kdebase kde-base/soliduiserver
-kde-base/kdebase kde-base/systemsettings
-kde-base/kdebindings kde-base/kalyptus
-kde-base/kdebindings kde-base/kdejava
-kde-base/kdebindings kde-base/kimono
-kde-base/kdebindings kde-base/kjsembed
-kde-base/kdebindings kde-base/korundum
-kde-base/kdebindings kde-base/krossjava
-kde-base/kdebindings kde-base/krosspython
-kde-base/kdebindings kde-base/krossruby
-kde-base/kdebindings kde-base/pykde4
-kde-base/kdebindings kde-base/qtjava
-kde-base/kdebindings kde-base/qtruby
-kde-base/kdebindings kde-base/qtsharp
-kde-base/kdebindings kde-base/qyoto
-kde-base/kdebindings kde-base/smoke
-kde-base/kdebindings kde-base/xparts
-kde-base/kdeedu kde-base/blinken
-kde-base/kdeedu kde-base/kalgebra
-kde-base/kdeedu kde-base/kalzium
-kde-base/kdeedu kde-base/kanagram
-kde-base/kdeedu kde-base/kbruch
-kde-base/kdeedu kde-base/kgeography
-kde-base/kdeedu kde-base/khangman
-kde-base/kdeedu kde-base/kig
-kde-base/kdeedu kde-base/kiten
-kde-base/kdeedu kde-base/klettres
-kde-base/kdeedu kde-base/kmplot
-kde-base/kdeedu kde-base/kpercentage
-kde-base/kdeedu kde-base/kstars
-kde-base/kdeedu kde-base/ktouch
-kde-base/kdeedu kde-base/kturtle
-kde-base/kdeedu kde-base/kwordquiz
-kde-base/kdeedu kde-base/libkdeedu
-kde-base/kdeedu kde-base/marble
-kde-base/kdeedu kde-base/parley
-kde-base/kdeedu kde-base/step
-kde-base/kdegames kde-base/bovo
-kde-base/kdegames kde-base/katomic
-kde-base/kdegames kde-base/kbattleship
-kde-base/kdegames kde-base/kblackbox
-kde-base/kdegames kde-base/kblocks
-kde-base/kdegames kde-base/kbounce
-kde-base/kdegames kde-base/kbreakout
-kde-base/kdegames kde-base/kdiamond
-kde-base/kdegames kde-base/kfourinline
-kde-base/kdegames kde-base/kgoldrunner
-kde-base/kdegames kde-base/kiriki
-kde-base/kdegames kde-base/kjumpingcube
-kde-base/kdegames kde-base/klines
-kde-base/kdegames kde-base/kmahjongg
-kde-base/kdegames kde-base/kmines
-kde-base/kdegames kde-base/knetwalk
-kde-base/kdegames kde-base/kolf
-kde-base/kdegames kde-base/kollision
-kde-base/kdegames kde-base/konquest
-kde-base/kdegames kde-base/kpat
-kde-base/kdegames kde-base/kreversi
-kde-base/kdegames kde-base/ksame
-kde-base/kdegames kde-base/kshisen
-kde-base/kdegames kde-base/ksirk
-kde-base/kdegames kde-base/kspaceduel
-kde-base/kdegames kde-base/ksquares
-kde-base/kdegames kde-base/ksudoku
-kde-base/kdegames kde-base/ktuberling
-kde-base/kdegames kde-base/kubrick
-kde-base/kdegames kde-base/libkdegames
-kde-base/kdegames kde-base/libkmahjongg
-kde-base/kdegames kde-base/lskat
-kde-base/kdegraphics kde-base/gwenview
-kde-base/kdegraphics kde-base/kamera
-kde-base/kdegraphics kde-base/kcolorchooser
-kde-base/kdegraphics kde-base/kdegraphics-strigi-analyzer
-kde-base/kdegraphics kde-base/kgamma
-kde-base/kdegraphics kde-base/kghostview
-kde-base/kdegraphics kde-base/kolourpaint
-kde-base/kdegraphics kde-base/kruler
-kde-base/kdegraphics kde-base/ksaneplugin
-kde-base/kdegraphics kde-base/ksnapshot
-kde-base/kdegraphics kde-base/libkdcraw
-kde-base/kdegraphics kde-base/libkexiv2
-kde-base/kdegraphics kde-base/libkipi
-kde-base/kdegraphics kde-base/libksane
-kde-base/kdegraphics kde-base/libkscan
-kde-base/kdegraphics kde-base/okular
-kde-base/kdegraphics kde-base/svgpart
-kde-base/kdemultimedia kde-base/dragonplayer
-kde-base/kdemultimedia kde-base/juk
-kde-base/kdemultimedia kde-base/kdemultimedia-kioslaves
-kde-base/kdemultimedia kde-base/kdemultimedia-strigi-analyzer
-kde-base/kdemultimedia kde-base/kmix
-kde-base/kdemultimedia kde-base/kscd
-kde-base/kdemultimedia kde-base/libkcddb
-kde-base/kdemultimedia kde-base/libkcompactdisc
-kde-base/kdenetwork kde-base/kdenetwork-filesharing
-kde-base/kdenetwork kde-base/kdnssd
-kde-base/kdenetwork kde-base/kget
-kde-base/kdenetwork kde-base/knewsticker
-kde-base/kdenetwork kde-base/kopete
-kde-base/kdenetwork kde-base/kppp
-kde-base/kdenetwork kde-base/krdc
-kde-base/kdenetwork kde-base/krfb
-kde-base/kdepim kde-base/akonadi
-kde-base/kdepim kde-base/akregator
-kde-base/kdepim kde-base/certmanager
-kde-base/kdepim kde-base/kabc2mutt
-kde-base/kdepim kde-base/kabcclient
-kde-base/kdepim kde-base/kaddressbook
-kde-base/kdepim kde-base/kalarm
-kde-base/kdepim kde-base/kdemaildir
-kde-base/kdepim kde-base/kdepim-icons
-kde-base/kdepim kde-base/kdepim-kioslaves
-kde-base/kdepim kde-base/kdepim-kresources
-kde-base/kdepim kde-base/kdepim-strigi-analyzer
-kde-base/kdepim kde-base/kdepim-wizards
-kde-base/kdepim kde-base/kfeed
-kde-base/kdepim kde-base/kitchensync
-kde-base/kdepim kde-base/kjots
-kde-base/kdepim kde-base/kleopatra
-kde-base/kdepim kde-base/kmail
-kde-base/kdepim kde-base/kmailcvt
-kde-base/kdepim kde-base/kmobiletools
-kde-base/kdepim kde-base/knode
-kde-base/kdepim kde-base/knotes
-kde-base/kdepim kde-base/kode
-kde-base/kdepim kde-base/konsolekalendar
-kde-base/kdepim kde-base/kontact
-kde-base/kdepim kde-base/kontact-specialdates
-kde-base/kdepim kde-base/kontactinterfaces
-kde-base/kdepim kde-base/korganizer
-kde-base/kdepim kde-base/korn
-kde-base/kdepim kde-base/kpilot
-kde-base/kdepim kde-base/ktimetracker
-kde-base/kdepim kde-base/ktnef
-kde-base/kdepim kde-base/libkdepim
-kde-base/kdepim kde-base/libkholidays
-kde-base/kdepim kde-base/libkleo
-kde-base/kdepim kde-base/libkpgp
-kde-base/kdepim kde-base/libksieve
-kde-base/kdepim kde-base/mailtransport
-kde-base/kdepim kde-base/mimelib
-kde-base/kdepim kde-base/networkstatus
-kde-base/kdesdk kde-base/cervisia
-kde-base/kdesdk kde-base/kapptemplate
-kde-base/kdesdk kde-base/kate
-kde-base/kdesdk kde-base/kbabel
-kde-base/kdesdk kde-base/kbugbuster
-kde-base/kdesdk kde-base/kcachegrind
-kde-base/kdesdk kde-base/kdeaccounts-plugin
-kde-base/kdesdk kde-base/kdesdk-kioslaves
-kde-base/kdesdk kde-base/kdesdk-misc
-kde-base/kdesdk kde-base/kdesdk-scripts
-kde-base/kdesdk kde-base/kdesdk-strigi-analyzer
-kde-base/kdesdk kde-base/kmtrace
-kde-base/kdesdk kde-base/kompare
-kde-base/kdesdk kde-base/kspy
-kde-base/kdesdk kde-base/kstartperf
-kde-base/kdesdk kde-base/kuiviewer
-kde-base/kdesdk kde-base/lokalize
-kde-base/kdesdk kde-base/poxml
-kde-base/kdesdk kde-base/strigi-analyzer
-kde-base/kdesdk kde-base/umbrello
-kde-base/kdetoys kde-base/amor
-kde-base/kdetoys kde-base/kteatime
-kde-base/kdetoys kde-base/ktux
-kde-base/kdetoys kde-base/kweather
-kde-base/kdetoys kde-base/kworldclock
-kde-base/kdeutils kde-base/ark
-kde-base/kdeutils kde-base/kcalc
-kde-base/kdeutils kde-base/kcharselect
-kde-base/kdeutils kde-base/kdessh
-kde-base/kdeutils kde-base/kdf
-kde-base/kdeutils kde-base/kfloppy
-kde-base/kdeutils kde-base/kgpg
-kde-base/kdeutils kde-base/kmilo
-kde-base/kdeutils kde-base/kregexpeditor
-kde-base/kdeutils kde-base/ktimer
-kde-base/kdeutils kde-base/kwallet
-kde-base/kdeutils kde-base/okteta
-kde-base/kdeutils kde-base/superkaramba
-kde-base/kdeutils kde-base/sweeper
-kde-base/kdewebdev kde-base/kfilereplace
-kde-base/kdewebdev kde-base/kimagemapeditor
-kde-base/kdewebdev kde-base/klinkstatus
-kde-base/kdewebdev kde-base/kommander
-kde-base/kdewebdev kde-base/kxsldbg
-kde-base/kdewebdev kde-base/quanta
-'
-
-# @FUNCTION: get-parent-package
-# @USAGE: <split ebuild>
-# @DESCRIPTION:
-# Echoes the name of the monolithic package that a given split ebuild was derived from.
-get-parent-package() {
- local parent child
- while read parent child; do
- if [[ "${child}" == "$1" ]]; then
- echo ${parent}
- return 0
- fi
- done <<< "$KDE_DERIVATION_MAP"
- die "Package $target not found in KDE_DERIVATION_MAP, please report bug"
-}
-
-# @FUNCTION: get-child-packages
-# @USAGE: <monolithic ebuild>
-# @DESCRIPTION:
-# Echoes the names of all (split) ebuilds derived from a given monolithic ebuild.
-get-child-packages() {
- local parent child
- while read parent child; do
- [[ "${parent}" == "$1" ]] && echo -n "${child} "
- done <<< "$KDE_DERIVATION_MAP"
-}
-
-# @FUNCTION: is-parent-package
-# @USAGE: <$CATEGORY/$PN>
-# @DESCRIPTION:
-# Returns zero exit-status if the given package is a parent (monolithic) ebuild.
-# Returns non-zero exit-status if it's not.
-is-parent-package() {
- local parent child
- while read parent child; do
- [[ "${parent}" == "$1" ]] && return 0
- done <<< "$KDE_DERIVATION_MAP"
- return 1
-}
+KDE_LIVE_SLOTS=( live )
# @FUNCTION: buildsycoca
# @DESCRIPTION:
@@ -391,7 +54,7 @@
buildsycoca() {
debug-print-function ${FUNCNAME} "$@"
- if [[ -x ${KDEDIR}/bin/kbuildsycoca4 && -z "${ROOT%%/}" ]]; then
+ if [[ -z ${ROOT%%/} && -x ${KDEDIR}/bin/kbuildsycoca4 ]]; then
# Make sure tha cache file exists, or kbuildsycoca4 will fail
touch "${KDEDIR}/share/kde4/services/ksycoca4"
@@ -411,8 +74,8 @@
# @FUNCTION: comment_all_add_subdirectory
# @USAGE: [list of directory names]
# @DESCRIPTION:
-# recursively comment all add_subdirectory instructions in listed directories
-# except the ones in cmake/.
+# Recursively comment all add_subdirectory instructions in listed directories,
+# except those in cmake/.
comment_all_add_subdirectory() {
find "$@" -name CMakeLists.txt -print0 | grep -vFzZ "./cmake" | \
xargs -0 sed -i -e '/add_subdirectory/s/^/#DONOTCOMPILE /' -e '/ADD_SUBDIRECTORY/s/^/#DONOTCOMPILE /' || \
@@ -421,10 +84,10 @@
# @ECLASS-VARIABLE: KDE_LINGUAS
# @DESCRIPTION:
-# This is a whitespace-separated list of translations that this ebuild supports.
-# These translations automatically get added to IUSE. Therefore ebuilds must set
-# this variable before inheriting any eclasses. To only enable selected
-# translations ebuilds must call enable_selected_linguas(). kde4-base.eclass does
+# This is a whitespace-separated list of translations this ebuild supports.
+# These translations are automatically added to IUSE. Therefore ebuilds must set
+# this variable before inheriting any eclasses. To enable only selected
+# translations, ebuilds must call enable_selected_linguas(). kde4-base.eclass does
# this for you.
#
# Example: KDE_LINGUAS="en_GB de nl"
@@ -434,125 +97,215 @@
# @FUNCTION: enable_selected_linguas
# @DESCRIPTION:
-# Enable translations based on LINGUAS settings and what translations are
-# supported (see KDE_LINGUAS). By default translations are found in "${S}"/po
+# Enable translations based on LINGUAS settings and translations supported by
+# the package (see KDE_LINGUAS). By default, translations are found in "${S}"/po
# but this default can be overridden by defining KDE_LINGUAS_DIR.
enable_selected_linguas() {
- local lingua
+ local lingua sr_mess wp
+ # inform user about kde-l10n for full translation.
+ if ! has_version kde-base/kde-l10n; then
+ echo
+ elog "For fully translated application you should also emerge"
+ elog "kde-base/kde-l10n package which ships translated kde core"
+ elog "strings."
+ echo
+ fi
+
+ # ebuild overridable linguas directory definition
+ KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:=${S}/po}
+ cd "$KDE_LINGUAS_DIR" || die "wrong linguas dir specified"
+
+ # fix all various crazy sr@Latn variations
+ # this part is only ease for ebuilds, so there wont be any die when this
+ # fail at any point
+ sr_mess="sr@latn sr@latin sr@Latin"
+ for wp in ${sr_mess}; do
+ [[ -e "$wp.po" ]] && mv "$wp.po" "sr@Latn.po"
+ if [[ -d "$wp" ]]; then
+ # move dir and fix cmakelists
+ mv "$wp" "sr@Latn"
+ sed -i \
+ -e "s:$wp:sr@Latin:g" \
+ CMakeLists.txt
+ fi
+ done
for lingua in ${KDE_LINGUAS}; do
- if [ -e "${S}"/po/"${lingua}".po ]; then
- mv "${S}"/po/"${lingua}".po "${S}"/po/"${lingua}".po.old
+ if [[ -e "$lingua.po" ]]; then
+ mv "$lingua.po" "$lingua.po.old"
fi
done
- comment_all_add_subdirectory "${KDE_LINGUAS_DIR:-${S}/po}"
+ comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
for lingua in ${LINGUAS}; do
- if [ -d "${S}"/po/"${lingua}" ]; then
+ ebegin "Enabling LANGUAGE: ${lingua}"
+ if [[ -d "$lingua" ]]; then
sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
- -i "${KDE_LINGUAS_DIR:-${S}/po}"/CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
+ -i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
fi
- if [ -e "${S}"/po/"${lingua}".po.old ]; then
- mv "${S}"/po/"${lingua}".po.old "${S}"/po/"${lingua}".po
+ if [[ -e "$lingua.po.old" ]]; then
+ mv "$lingua.po.old" "$lingua.po"
fi
+ eend $?
done
}
-# @ECLASS-VARIABLE: QT4_BUILT_WITH_USE_CHECK
+# @FUNCTION: koffice_fix_libraries
# @DESCRIPTION:
-# A list of USE flags that x11-libs/qt:4 needs to be built with.
-#
-# This list is automatically appended to KDE4_BUILT_WITH_USE_CHECK,
-# so don't call qt4_pkg_setup manually.
-
-# @ECLASS-VARIABLE: KDE4_BUILT_WITH_USE_CHECK
+# replace the weird koffice lib search with hardcoded one, so it
+# actually builds and works.
+koffice_fix_libraries() {
+ local LIB_ARRAY R_QT_kostore R_BAS_kostore R_BAS_koodf R_KROSS_kokross R_QT_komain
+ local R_CMS_pigmentcms R_BAS_pigmentcms R_BAS_koresources R_BAS_flake R_BAS_koguiutils
+ local R_BAS_kopageapp R_BAS_kotext R_BAS_kowmf libname R
+ case ${PN} in
+ koffice-data|koffice-libs)
+ ;;
+ *)
+ ### basic array
+ LIB_ARRAY="kostore koodf kokross komain pigmentcms koresources flake koguiutils kopageapp kotext kowmf"
+ ### dep array
+ R_QT_kostore="\"/usr/$(get_libdir)/qt4/libQtCore.so\"
+ \"/usr/$(get_libdir)/qt4/libQtXml.so\"
+ \"${KDEDIR}/$(get_libdir)/libkdecore.so\""
+ R_BAS_kostore="libkostore ${R_QT_kostore}"
+ R_BAS_koodf="libkoodf ${R_BAS_kostore}"
+ R_KROSS_kokross="
+ \"${KDEDIR}/$(get_libdir)/libkrossui.so\"
+ \"${KDEDIR}/$(get_libdir)/libkrosscore.so\""
+ R_BAS_kokross="libkokross ${R_BAS_koodf} ${R_KROSS_kokross}"
+ R_QT_komain="\"/usr/$(get_libdir)/qt4/libQtGui.so\""
+ R_BAS_komain="libkomain ${R_BAS_koodf} ${R_QT_komain}"
+ R_CMS_pigmentcms="\"/usr/$(get_libdir)/liblcms.so\""
+ R_BAS_pigmentcms="libpigmentcms ${R_BAS_komain} ${R_CMS_pigmentcms}"
+ R_BAS_koresources="libkoresources ${R_BAS_pigmentcms}"
+ R_BAS_flake="libflake ${R_BAS_pigmentcms}"
+ R_BAS_koguiutils="libkoguiutils libkoresources libflake ${R_BAS_pigmentcms}"
+ R_BAS_kopageapp="libkopageapp ${R_BAS_koguitls}"
+ R_BAS_kotext="libkotext libkoresources libflake ${R_BAS_pigmentcms}"
+ ### additional unmentioned stuff
+ R_BAS_kowmf="libkowmf"
+ for libname in ${LIB_ARRAY}; do
+ ebegin "Fixing library ${libname} with hardcoded path"
+ for libpath in $(eval "echo \$R_BAS_${libname}"); do
+ if [[ "${libpath}" != "\"/usr/"* ]]; then
+ R="${R} \"${KDEDIR}/$(get_libdir)/${libpath}.so\""
+ else
+ R="${R} ${libpath}"
+ fi
+ done
+ find "${S}" -name CMakeLists.txt -print| xargs -i \
+ sed -i \
+ -e "s: ${libname} : ${R} :g" \
+ -e "s: ${libname}): ${R}):g" \
+ -e "s:(${libname} :(${R} :g" \
+ -e "s:(${libname}):(${R}):g" \
+ -e "s: ${libname}$: ${R}:g" \
+ {} || die "Fixing library names failed."
+ eend $?
+ done
+ ;;
+ esac
+}
+# @FUNCTION: get_build_type
# @DESCRIPTION:
-# The contents of $KDE4_BUILT_WITH_USE_CHECK gets fed to built_with_use
-# (eutils.eclass), line per line.
-#
-# Example:
-# @CODE
-# pkg_setup() {
-# KDE4_BUILT_WITH_USE_CHECK="--missing true sys-apps/dbus X"
-# use alsa && KDE4_BUILT_WITH_USE_CHECK="${KDE4_BUILT_WITH_USE_CHECK}
-# --missing true media-libs/alsa-lib midi"
-# kde4-base_pkg_setup
-# }
-# @CODE
-
-# run built_with_use on each flag and print appropriate error messages if any
-# flags are missing
-_kde4-functions_built_with_use() {
- local missing opt pkg flag flags
-
- if [[ ${1} = "--missing" ]]; then
- missing="${1} ${2}" && shift 2
- fi
- if [[ ${1:0:1} = "-" ]]; then
- opt=${1} && shift
- fi
-
- pkg=${1} && shift
-
- for flag in "${@}"; do
- flags="${flags} ${flag}"
- if ! built_with_use ${missing} ${opt} ${pkg} ${flag}; then
- flags="${flags}*"
- else
- [[ ${opt} = "-o" ]] && return 0
- fi
- done
- if [[ "${flags# }" = "${@}" ]]; then
- return 0
- fi
- if [[ ${opt} = "-o" ]]; then
- eerror "This package requires '${pkg}' to be built with any of the following USE flags: '$*'."
+# Determine whether we are using live ebuild or tbzs.
+get_build_type() {
+ if [[ $SLOT = live || $PV = 9999* ]]; then
+ BUILD_TYPE="live"
else
- eerror "This package requires '${pkg}' to be built with the following USE flags: '${flags# }'."
+ BUILD_TYPE="release"
fi
- return 1
+ export BUILD_TYPE
}
-# @FUNCTION: kde4-functions_check_use
+# @FUNCTION: get_latest_kdedir
# @DESCRIPTION:
-# Check if the Qt4 libraries are built with the USE flags listed in
-# $QT4_BUILT_WITH_USE_CHECK.
-#
-# Check if a list of packages are built with certain USE flags, as listed in
-# $KDE4_BUILT_WITH_USE_CHECK.
-#
-# If any of the required USE flags are missing, an eerror will be printed for
-# each package with missing USE flags.
-kde4-functions_check_use() {
- # I like to keep flags sorted
- QT4_BUILT_WITH_USE_CHECK=$(echo "${QT4_BUILT_WITH_USE_CHECK}" | \
- tr '[:space:]' '\n' | sort | uniq | xargs)
-
- local line missing
- if [[ -n ${KDE4_BUILT_WITH_USE_CHECK[@]} && $(declare -p KDE4_BUILT_WITH_USE_CHECK) = 'declare -a '* ]]; then
- KDE4_BUILT_WITH_USE_CHECK=("x11-libs/qt:4 ${QT4_BUILT_WITH_USE_CHECK}"
- "${KDE4_BUILT_WITH_USE_CHECK[@]}")
-
- for line in "${KDE4_BUILT_WITH_USE_CHECK[@]}"; do
- [[ -z ${line} ]] && continue
- if ! _kde4-functions_built_with_use ${line}; then
- missing=true
+# We set up KDEDIR according to the latest KDE version installed; installing our
+# package for all available installs is just insane.
+# We can check for kdelibs because it is the most basic package; no KDE package
+# working without it. This might be changed in future.
+get_latest_kdedir() {
+ if [[ $NEED_KDE = latest && $KDEBASE != kde-base ]]; then
+ case ${KDE_WANTED} in
+ # note this will need to be updated as stable moves and so on
+ live)
+ _versions="9999 4.1.69 4.1.0"
+ ;;
+ snapshot)
+ _versions="4.1.69 4.1.0 9999"
+ ;;
+ testing)
+ _versions="4.1.0 4.1.69 9999"
+ ;;
+ stable)
+ _versions="4.1.0 4.1.69 9999"
+ ;;
+ *) die "KDE_WANTED=${KDE_WANTED} not supported here." ;;
+ esac
+ # check if exists and fallback as we go
+ for X in ${_versions}; do
+ if has_version ">=kde-base/kdelibs-${X}"; then
+ # figure out which X we are in and set it into _kdedir
+ case ${X} in
+ # also keep track here same for kde_wanted
+ 9999)
+ _kdedir="live"
+ break
+ ;;
+ 4.1.69)
+ _kdedir="4.2"
+ break
+ ;;
+ 4.1.0)
+ _kdedir="4.1"
+ break
+ ;;
+ esac
fi
done
- else
- KDE4_BUILT_WITH_USE_CHECK="x11-libs/qt:4 ${QT4_BUILT_WITH_USE_CHECK}
- ${KDE4_BUILT_WITH_USE_CHECK}"
-
- while read line; do
- [[ -z ${line} ]] && continue
- if ! _kde4-functions_built_with_use ${line}; then
- missing=true
- fi
- done <<< "${KDE4_BUILT_WITH_USE_CHECK}"
- fi
- if [[ -n ${missing} ]]; then
- echo
- eerror "Flags marked with an * are missing."
- die "Missing USE flags found"
fi
}
+
+# Functions handling KMLOADLIBS and KMSAVELIBS
+
+# @FUNCTION: save_library_dependencies
+# @DESCRIPTION:
+# Add exporting CMake dependencies for current package
+save_library_dependencies() {
+ local depsfile="${T}/${PN}:${SLOT}"
+
+ ebegin "Saving library dependendencies in ${depsfile##*/}"
+ echo "EXPORT_LIBRARY_DEPENDENCIES(\"${depsfile}\")" >> "${S}/CMakeLists.txt" || \
+ die "Failed to save the library dependencies."
+ eend $?
+}
+
+# @FUNCTION: install_library_dependencies
+# @DESCRIPTION:
+# Install generated CMake library dependencies to /var/lib/kde
+install_library_dependencies() {
+ local depsfile="$T/$PN:$SLOT"
+ ebegin "Installing library dependendencies as ${depsfile##*/}"
+ insinto /var/lib/kde
+ doins "${depsfile}" || die "Failed to install library dependencies."
+ eend $?
+}
+
+# @FUNCTION: load_library_dependencies
+# @DESCRIPTION:
+# Inject specified library dependencies in current package
+load_library_dependencies() {
+ local pn i depsfile
+ ebegin "Injecting library dependendencies from '${KMLOADLIBS}'"
+
+ i=0
+ for pn in ${KMLOADLIBS} ; do
+ ((i++))
+ depsfile="/var/lib/kde/${pn}:${SLOT}"
+ [[ -r "${depsfile}" ]] || die "Depsfile '${depsfile}' not accessible. You probably need to reinstall ${pn}."
+ sed -i -e "${i}iINCLUDE(\"${depsfile}\")" "${S}/CMakeLists.txt" || \
+ die "Failed to include library dependencies for ${pn}"
+ done
+ eend $?
+}
1.9 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.9&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.9&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.8&r2=1.9
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- kde4-meta.eclass 3 Jan 2009 18:20:00 -0000 1.8
+++ kde4-meta.eclass 12 Jan 2009 17:25:59 -0000 1.9
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.8 2009/01/03 18:20:00 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.9 2009/01/12 17:25:59 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -11,54 +11,47 @@
#
# You must define KMNAME to use this eclass, and do so before inheriting it. All other variables are optional.
# Do not include the same item in more than one of KMMODULE, KMMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY.
-#
-# NOTE: This eclass uses the SLOT dependencies from EAPI="1" or compatible,
-# hence you must define EAPI="1" in the ebuild, before inheriting any eclasses.
-inherit multilib kde4-functions kde4-base
+# we want opengl optional in each koffice package
+if [[ $KMNAME = koffice ]]; then
+ case ${PN} in
+ koffice-data)
+ ;;
+ *)
+ OPENGL_REQUIRED=optional
+ ;;
+ esac
+fi
-case "${EAPI}" in
- 2)
- EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
- ;;
- *)
- EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
- ;;
-esac
+inherit kde4-base versionator
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
if [[ -z ${KMNAME} ]]; then
die "kde4-meta.eclass inherited but KMNAME not defined - broken ebuild"
fi
case ${KDEBASE} in
- kde-base) HOMEPAGE="http://www.kde.org/"
- LICENSE="GPL-2" ;;
- koffice) HOMEPAGE="http://www.koffice.org/"
- LICENSE="GPL-2" ;;
+ kde-base)
+ HOMEPAGE="http://www.kde.org/"
+ LICENSE="GPL-2"
+ ;;
+ koffice)
+ HOMEPAGE="http://www.koffice.org/"
+ LICENSE="GPL-2"
+ ;;
esac
-debug-print "${BASH_SOURCE} ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - before blockers"
-debug-print "${BASH_SOURCE} ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - before blockers"
-
-# Add a blocker on the package we're derived from
-if [[ -n ${KDEBASE} ]]; then
- DEPEND="${DEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
- RDEPEND="${RDEPEND} !$(get-parent-package ${CATEGORY}/${PN}):${SLOT}"
-fi
-
-debug-print "line ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - after blockers"
-debug-print "line ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - after blockers"
-
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
kdebase|kdebase-workspace|kdebase-runtime)
DEPEND="${DEPEND} >=kde-base/qimageblitz-0.0.4"
RDEPEND="${RDEPEND} >=kde-base/qimageblitz-0.0.4"
- ;;
+ ;;
kdepim)
DEPEND="${DEPEND} dev-libs/boost app-office/akonadi-server"
RDEPEND="${RDEPEND} dev-libs/boost"
- if [[ ${PN} != kode ]]; then
+ if [[ $PN != kode ]]; then
DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}"
RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}"
fi
@@ -67,24 +60,40 @@
IUSE="+kontact"
DEPEND="${DEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
- ;;
+ ;;
esac
- ;;
+ ;;
kdegames)
- if [[ ${PN} != "libkdegames" ]]; then
+ if [[ $PN != libkdegames ]]; then
DEPEND="${DEPEND} >=kde-base/libkdegames-${PV}:${SLOT}"
RDEPEND="${RDEPEND} >=kde-base/libkdegames-${PV}:${SLOT}"
fi
- ;;
+ ;;
koffice)
+ case ${PV} in
+ 9999*) DEPEND="${DEPEND} !app-office/${PN}:2" ;;
+ 1.9*|2*) DEPEND="${DEPEND} !app-office/${PN}:live" ;;
+ esac
+ DEPEND="${DEPEND}
+ !app-office/${PN}:0
+ !app-office/koffice:0
+ !app-office/koffice-meta:0"
case ${PN} in
- koffice-libs|koffice-data) : ;;
+ koffice-data)
+ DEPEND="${DEPEND} media-libs/lcms"
+ RDEPEND="${RDEPEND} media-libs/lcms"
+ ;;
*)
- DEPEND="${DEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
- RDEPEND="${RDEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
- ;;
+ IUSE="+crypt"
+ DEPEND="${DEPEND} crypt? ( >=app-crypt/qca-2 )"
+ RDEPEND="${RDEPEND} crypt? ( >=app-crypt/qca-2 )"
+ if [[ $PN != koffice-libs ]]; then
+ DEPEND="${DEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
+ RDEPEND="${RDEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
+ fi
+ ;;
esac
- ;;
+ ;;
esac
debug-print "line ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - after metapackage-specific dependencies"
@@ -92,8 +101,9 @@
# @ECLASS-VARIABLE: KMNAME
# @DESCRIPTION:
-# Name of the parent-module (e.g. kdebase, kdepim, ...). You _must_ set it _before_ inheriting this eclass,
-# (unlike the other parameters), since it's used to set $SRC_URI.
+# Name of the parent-module (e.g. kdebase, kdepim, ...). You _must_ set it
+# _before_ inheriting this eclass, (unlike the other parameters), since it's
+# used to set $SRC_URI.
# @ECLASS-VARIABLE: KMMODULE
# @DESCRIPTION:
@@ -108,9 +118,10 @@
# If set to "true", $KMMODULE doesn't have to be defined.
#
# Example usage: If you're installing subdirectories of a package, like plugins,
-# you mark the topsubdirectory (containing the package) as $KMEXTRACTONLY, and set KMNOMODULE="true".
-if [[ ${KMNOMODULE} != "true" && -z ${KMMODULE} ]]; then
- KMMODULE=${PN}
+# you mark the top subdirectory (containing the package) as $KMEXTRACTONLY, and
+# set KMNOMODULE="true".
+if [[ -z $KMMODULE && $KMNOMODULE != true ]]; then
+ KMMODULE=$PN
fi
# @ECLASS-VARIABLE: KMEXTRA
@@ -126,9 +137,10 @@
# @DESCRIPTION:
# All subdirectories listed here will be extracted & compiled, but not installed.
+# TODO: better formulation may be needed
# @ECLASS-VARIABLE: KMEXTRACTONLY
# @DESCRIPTION:
-# All subdirectories listed here will be extracted, but not compiled nor installed.
+# All subdirectories listed here will be extracted, but neither compiled nor installed.
# This can be used to avoid compilation in a subdirectory of a directory in $KMMODULE or $KMEXTRA
# @ECLASS-VARIABLE: KMTARPARAMS
@@ -138,8 +150,8 @@
# @FUNCTION: kde4-meta_pkg_setup
# @DESCRIPTION:
-# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
-# ebuilds.
+# Currently just calls its equivalent in kde4-base.eclass(5). Use this one in
+# split ebuilds.
kde4-meta_pkg_setup() {
kde4-base_pkg_setup
}
@@ -150,56 +162,111 @@
# kde4-meta-src_extract.
kde4-meta_src_unpack() {
debug-print-function ${FUNCNAME} "$@"
-
- kde4-meta_src_extract
- kde4-meta_change_cmakelists
+ if [[ $BUILD_TYPE = live ]]; then
+ kde4-base_src_unpack
+ kde4-meta_src_extract
+ else
+ kde4-meta_src_extract
+ fi
}
+# FIXME: the difference between kde4-meta_src_extract and kde4-meta_src_unpack?
+
# @FUNCTION: kde4-meta_src_extract
# @DESCRIPTION:
# A function to unpack the source for a split KDE ebuild.
-# Also see KMMODULE, KMNOMODULE, KMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY and KMTARPARAMS.
+# Also see KMMODULE, KMNOMODULE, KMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY and
+# KMTARPARAMS.
kde4-meta_src_extract() {
- local abort tarball tarfile f extractlist
- tarball="${KMNAME}-${PV}.tar.bz2"
- tarfile="${DISTDIR}"/${tarball}
-
- echo "Unpacking parts of ${tarball} to ${WORKDIR}"
-
- kde4-meta_create_extractlists
-
- for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake \
- AUTHORS COPYING INSTALL README NEWS ChangeLog
- do
- extractlist="${extractlist} ${KMNAME}-${PV}/${f}"
- done
- extractlist="${extractlist} $(__list_needed_subdirectories)"
- KMTARPARAMS="${KMTARPARAMS} -j"
+ if [[ $BUILD_TYPE = live ]]; then
+ local rsync_options subdir kmnamedir targetdir
+ # Export working copy to ${S}
+ einfo "Exporting parts of working copy to ${S}"
+ kde4-meta_create_extractlists
+
+ rsync_options="--group --links --owner --perms --quiet --exclude=.svn/"
+
+ # Copy ${KMNAME} non-recursively (toplevel files)
+ rsync ${rsync_options} "${ESVN_WC_PATH}"/${kmnamedir}* "${S}" \
+ || die "${ESVN}: can't export toplevel files to '${S}'."
+ # Copy cmake directory
+ if [[ -d "${ESVN_WC_PATH}/${kmnamedir}cmake" ]]; then
+ rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}cmake" "${S}" \
+ || die "${ESVN}: can't export cmake files to '${S}'."
+ fi
+ # Copy all subdirectories
+ for subdir in $(__list_needed_subdirectories); do
+ targetdir=""
+ if [[ $subdir = doc/* && ! -e "$ESVN_WC_PATH/$kmnamedir$subdir" ]]; then
+ continue
+ fi
+
+ [[ ${subdir%/} = */* ]] && targetdir=${subdir%/} && targetdir=${targetdir%/*} && mkdir -p "${S}/${targetdir}"
+ rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \
+ || die "${ESVN}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'."
+ done
- pushd "${WORKDIR}" > /dev/null
- [[ -n ${KDE4_STRICTER} ]] && echo tar -xpf $tarfile $KMTARPARAMS $extractlist >&2
- tar -xpf $tarfile $KMTARPARAMS $extractlist 2> /dev/null
+ if [[ $KMNAME = kdebase-runtime && $PN != kdebase-data ]]; then
+ sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
+ "${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
+ fi
+ else
+ local abort tarball tarfile f extractlist
+ case $KMNAME in
+ kdebase-apps)
+ tarball="${KMNAME#-apps}-${PV}.tar.bz2"
+ ;;
+ *)
+ tarball="${KMNAME}-${PV}.tar.bz2"
+ ;;
+ esac
+ tarfile="${DISTDIR}"/${tarball}
- # Default $S is based on $P; rename the extracted directory to match $S
- mv ${KMNAME}-${PV} ${P} || die "Died while moving \"${KMNAME}-${PV}\" to \"${P}\""
+ ebegin "Unpacking parts of ${tarball} to ${WORKDIR}"
- popd > /dev/null
+ kde4-meta_create_extractlists
- if [[ -n ${KDE4_STRICTER} ]]; then
- for f in $(__list_needed_subdirectories fatal); do
- if [[ ! -e ${S}/${f#*/} ]]; then
- eerror "'${f#*/}' is missing"
- abort=true
- fi
+ for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake \
+ AUTHORS COPYING INSTALL README NEWS ChangeLog
+ do
+ extractlist="${extractlist} ${KMNAME}-${PV}/${f}"
done
- [[ -n ${abort} ]] && die "There were missing files."
- fi
+ extractlist="${extractlist} $(__list_needed_subdirectories)"
+ KMTARPARAMS="${KMTARPARAMS} -j"
- kde4-base_src_unpack
+ pushd "${WORKDIR}" > /dev/null
+ [[ -n ${KDE4_STRICTER} ]] && echo tar -xpf $tarfile $KMTARPARAMS $extractlist >&2
+ tar -xpf $tarfile $KMTARPARAMS $extractlist 2> /dev/null
+
+ # Default $S is based on $P; rename the extracted directory to match $S
+ mv ${KMNAME}-${PV} ${P} || die "Died while moving \"${KMNAME}-${PV}\" to \"${P}\""
+
+ popd > /dev/null
+
+ eend $?
+
+ if [[ -n ${KDE4_STRICTER} ]]; then
+ for f in $(__list_needed_subdirectories fatal); do
+ if [[ ! -e ${S}/${f#*/} ]]; then
+ eerror "'${f#*/}' is missing"
+ abort=true
+ fi
+ done
+ [[ -n ${abort} ]] && die "There were missing files."
+ fi
+ kde4-base_src_unpack
+ fi
+ # fix koffice linking
+ if [[ $KMNAME = koffice ]]; then
+ koffice_fix_libraries
+ fi
}
+# @FUNCTION: kde4-meta_create_extractlists
+# @DESCRIPTION:
# Create lists of files and subdirectories to extract.
-# Also see the descriptions of KMMODULE, KMNOMODULE, KMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY and KMTARPARAMS.
+# Also see descriptions of KMMODULE, KMNOMODULE, KMEXTRA, KMCOMPILEONLY,
+# KMEXTRACTONLY and KMTARPARAMS.
kde4-meta_create_extractlists() {
debug-print-function ${FUNCNAME} "$@"
@@ -214,54 +281,81 @@
# In those cases you should care to add the relevant files to KMEXTRACTONLY
case ${KMNAME} in
kdebase)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- apps/config-apps.h.cmake
- apps/ConfigureChecks.cmake"
- ;;
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ apps/config-apps.h.cmake
+ apps/ConfigureChecks.cmake"
+ ;;
+ kdebase-apps)
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ config-apps.h.cmake
+ ConfigureChecks.cmake"
+ ;;
kdebase-runtime)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- config-runtime.h.cmake"
- ;;
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ config-runtime.h.cmake"
+ ;;
kdebase-workspace)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- config-unix.h.cmake
- ConfigureChecks.cmake
- config-workspace.h.cmake
- config-X11.h.cmake
- startkde.cmake"
- ;;
- kdegames)
- if [[ ${PN} != "libkdegames" ]]; then
KMEXTRACTONLY="${KMEXTRACTONLY}
- libkdegames"
- fi
- ;;
+ config-unix.h.cmake
+ ConfigureChecks.cmake
+ config-workspace.h.cmake
+ config-X11.h.cmake
+ startkde.cmake"
+ case ${SLOT} in
+ 4.2)
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ KDE4WorkspaceConfig.cmake.in"
+ ;;
+ *) : ;;
+ esac
+ ;;
+ kdegames)
+ if [[ ${PN} != "libkdegames" ]]; then
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ libkdegames"
+ fi
+ ;;
kdepim)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- kleopatra/ConfigureChecks.cmake"
- if has kontact ${IUSE//+} && use kontact; then
- KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
- KMEXTRACTONLY="${KMEXTRACTONLY} kontactinterfaces/"
- fi
- ;;
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ kleopatra/ConfigureChecks.cmake
+ libkdepim/kdepim_export.h"
+ if has kontact ${IUSE//+} && use kontact; then
+ KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
+ KMEXTRACTONLY="${KMEXTRACTONLY} kontactinterfaces/"
+ fi
+ ;;
koffice)
KMEXTRACTONLY="${KMEXTRACTONLY}
config-endian.h.cmake
filters/config-filters.h.cmake
+ config-openctl.h.cmake
config-openexr.h.cmake
config-opengl.h.cmake
config-prefix.h.cmake"
- ;;
+ case ${PN} in
+ koffice-libs|koffice-data)
+ ;;
+ *)
+ # add basic extract for all packages
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ filters/
+ libs/
+ plugins/"
+ if [[ ${PN} != "kplato" ]]; then
+ KMEXTRA="${KMEXTRA} filters/${PN}"
+ fi
+ ;;
+ esac
+ ;;
esac
- # Don't install cmake modules for split ebuilds to avoid collisions.
+ # Don't install cmake modules for split ebuilds, to avoid collisions.
case ${KMNAME} in
kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics|kdepim)
case ${PN} in
- libkdegames|libkdeedu|marble)
+ libkdegames|libkdeedu|marble|libkworkspace)
KMEXTRA="${KMEXTRA}
cmake/modules/"
;;
-
*)
KMCOMPILEONLY="${KMCOMPILEONLY}
cmake/modules/"
@@ -289,7 +383,7 @@
done
# Expand KMMODULE
- if [[ -n ${KMMODULE} ]]; then
+ if [[ -n $KMMODULE ]]; then
kmmodule_expanded="${KMMODULE}"
j=$(dirname ${KMMODULE})
while [[ ${j} != "." ]]; do
@@ -328,51 +422,18 @@
echo ${extractlist}
}
-save_library_dependencies() {
- local depsfile="${T}/${PN}:${SLOT}"
-
- echo "Saving library dependendencies in ${depsfile##*/}"
- echo "EXPORT_LIBRARY_DEPENDENCIES(\"${depsfile}\")" >> "${S}/CMakeLists.txt" || \
- die "Failed to save the library dependencies."
-}
-
-install_library_dependencies() {
- local depsfile="${T}/${PN}:${SLOT}"
- echo "Installing library dependendencies as ${depsfile##*/}"
- insinto /var/lib/kde
- doins "${depsfile}" || die "Failed to install library dependencies."
-}
-
-load_library_dependencies() {
- local pn i depsfile
- echo "Injecting library dependendencies from '${KMLOADLIBS}'"
-
- i=0
- for pn in ${KMLOADLIBS} ; do
- ((i++))
- depsfile="/var/lib/kde/${pn}:${SLOT}"
- [[ -r "${depsfile}" ]] || die "Depsfile '${depsfile}' not accessible. You probably need to reinstall ${pn}."
- sed -i -e "${i}iINCLUDE(\"${depsfile}\")" "${S}/CMakeLists.txt" || \
- die "Failed to include library dependencies for ${pn}"
- done
-}
-
-# @FUNCTION: kde4-meta_src_compile
+# @FUNCTION: kde4-meta_src_prepare
# @DESCRIPTION:
-# General function for compiling split KDE4 applications.
-kde4-meta_src_compile() {
+# Meta-package build system configuration handling - commenting out targets, etc..
+kde4-meta_src_prepare() {
debug-print-function ${FUNCNAME} "$@"
- case "${EAPI}" in
- 2 | 2_pre3 | 2_pre2 | 2_pre1)
- ;;
- *)
- kde4-base_meta_configure
- ;;
- esac
- kde4-meta_src_make
+ kde4-meta_change_cmakelists
+ kde4-base_src_prepare
}
+
+# FIXME: no comment here?
_change_cmakelists_parent_dirs() {
debug-print-function ${FUNCNAME} "$@"
@@ -390,19 +451,14 @@
done
}
+# FIXME: add description
+# @FUNCTION: kde4-meta_change_cmakelists
+# @DESCRIPTION:
kde4-meta_change_cmakelists() {
debug-print-function ${FUNCNAME} "$@"
pushd "${S}" > /dev/null
- if [[ -n ${KMSAVELIBS} ]] ; then
- save_library_dependencies
- fi
-
- if [[ -n ${KMLOADLIBS} ]] ; then
- load_library_dependencies
- fi
-
comment_all_add_subdirectory ./
# Restore "add_subdirectory( cmake )" in ${S}/CMakeLists.txt
@@ -462,65 +518,47 @@
case ${KMNAME} in
kdebase-workspace)
- # COLLISION PROTECT section
- # Only install the startkde script as part of kde-base/kdebase-startkde,
- # instead of with every package.
- if [[ ${PN} != "kdebase-startkde" && -f "${S}"/CMakeLists.txt ]]; then
- case ${PV} in
- *) # The startkde script moved to kdebase-workspace for KDE4 versions > 3.93.0.
+ # COLLISION PROTECT section
+ # Install the startkde script just once, as a part of kde-base/kdebase-startkde,
+ # not as a part of every package.
+ if [[ ${PN} != "kdebase-startkde" && -f "${S}"/CMakeLists.txt ]]; then
+ # The startkde script moved to kdebase-workspace for KDE4 versions > 3.93.0.
sed -i -e '/startkde/s/^/#DONOTINSTALL /' "${S}"/CMakeLists.txt || \
die "${LINENO}: sed died in the kdebase-startkde collision prevention section"
- ;;
- esac
- fi
- ;;
+ fi
+ # Strip EXPORT feature section from workspace for KDE4 versions > 4.1.82
+ if [[ ${SLOT} == 4.2 ]] || [[ ${PV} == 9999 ]]; then
+ if [[ ${PN} != libkworkspace ]]; then
+ sed -i -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip EXPORT section"
+ fi
+ fi
+ ;;
kdebase-runtime)
- # COLLISION PROTECT section
- # Only install the kde4 script as part of kde-base/kdebase-data
- if [[ ${PN} != "kdebase-data" && -f "${S}"/CMakeLists.txt ]]; then
- sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
- "${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
- fi
- ;;
+ # COLLISION PROTECT section
+ # Only install the kde4 script as part of kde-base/kdebase-data
+ if [[ ${PN} != "kdebase-data" && -f "${S}"/CMakeLists.txt ]]; then
+ sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
+ "${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
+ fi
+ ;;
kdepim)
- case ${PN} in
- kaddressbook|kalarm|kmailcvt|kontact|korganizer|korn)
- sed -i -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
- -e '/add_custom_target(kmail_xml /,/)/p' "${S}"/kmail/CMakeLists.txt || die "uncommenting xml failed"
- _change_cmakelists_parent_dirs kmail
+ case ${PN} in
+ kaddressbook|kalarm|kmailcvt|kontact|korganizer|korn)
+ sed -i -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
+ -e '/add_custom_target(kmail_xml /,/)/p' "${S}"/kmail/CMakeLists.txt || die "uncommenting xml failed"
+ _change_cmakelists_parent_dirs kmail
+ ;;
+ esac
;;
- esac
- ;;
- kdeutils)
- # This is sort of a hack to avoid patching 16 kdeutils packages with
- # r775410 from upstream trunk which makes blitz optional so superkaramba
- # only gets compiled when it is found. Bug #209324. Remove this no later
- # than 4.1.
- if [[ ${PN} != superkaramba && ${SLOT} == kde-4 ]]; then
- sed -i -e '/find_package(Blitz REQUIRED)/d' "${S}"/CMakeLists.txt \
- || die "${LINENO}: sed to remove dependency on Blitz failed."
- fi
- ;;
- koffice)
- if [[ ${PN} != koffice-libs ]]; then
- sed -i -e '/^INSTALL(FILES.*koffice.desktop/ s/^/#DONOTINSTALL /' \
- doc/CMakeLists.txt || \
- die "${LINENO}: sed died in the koffice.desktop collision prevention section"
- fi
- ;;
esac
popd > /dev/null
}
-# transition function so we will work with soon to come eclasses.
-kde4-meta_src_prepare() {
- kde4-base_src_prepare
-}
-
# @FUNCTION: kde4-meta_src_configure
# @DESCRIPTION:
-# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
+# Currently just calls its equivalent in kde4-base.eclass(5). Use this one in split
# ebuilds.
kde4-meta_src_configure() {
debug-print-function ${FUNCNAME} "$@"
@@ -528,11 +566,11 @@
kde4-base_src_configure
}
-# @FUNCTION: kde4-meta_src_make
+# @FUNCTION: kde4-meta_src_compile
# @DESCRIPTION:
-# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
-# ebuilds.
-kde4-meta_src_make() {
+# General function for compiling split KDE4 applications.
+# Overrides kde4-base_src_compile.
+kde4-meta_src_compile() {
debug-print-function ${FUNCNAME} "$@"
kde4-base_src_make
@@ -557,14 +595,20 @@
kde4-meta_src_make_doc
cmake-utils_src_install
- if [[ -n ${KMSAVELIBS} ]] ; then
+ if [[ -n ${KMSAVELIBS} ]]; then
install_library_dependencies
fi
+
+ # remove unvanted koffice stuff
+ if [[ $KMNAME = koffice && $PN != koffice-data ]]; then
+ rm "$D/$KDEDIR/include/config-openexr.h"
+ rm "$D/$KDEDIR/share/apps/cmake/modules/FindKOfficeLibs.cmake"
+ fi
}
# @FUNCTION: kde4-meta_src_make_doc
# @DESCRIPTION:
-# This function searches under ${S}/${KMMODULE},
+# This function searches in ${S}/${KMMODULE},
# and tries to install "AUTHORS ChangeLog* README* NEWS todo" if these files exist.
kde4-meta_src_make_doc() {
debug-print-function $FUNCNAME "$@"
@@ -592,3 +636,4 @@
kde4-meta_pkg_postrm() {
kde4-base_pkg_postrm
}
+
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-01-12 19:40 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-01-12 19:40 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/01/12 19:40:34
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Add one missed patch for the eclasses. Affect only live stuff so no breakage for tree users. Thanks reavertm for pointing out.
Revision Changes Path
1.23 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.23&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.23&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.22&r2=1.23
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- kde4-base.eclass 12 Jan 2009 17:25:59 -0000 1.22
+++ kde4-base.eclass 12 Jan 2009 19:40:34 -0000 1.23
@@ -1,6 +1,6 @@
# Copyright 2007-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.22 2009/01/12 17:25:59 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.23 2009/01/12 19:40:34 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -465,30 +465,7 @@
debug-print-function $FUNCNAME "$@"
if [[ $BUILD_TYPE = live ]]; then
- local cleandir
- cleandir="${ESVN_STORE_DIR}/KDE"
- if [[ -d "${cleandir}" ]]; then
- ewarn "'${cleandir}' has been found. Moving contents to new location."
- addwrite "${ESVN_STORE_DIR}"
- # Split kdebase
- local module
- if pushd "${cleandir}"/kdebase/kdebase > /dev/null; then
- for module in `find . -maxdepth 1 -type d -name [a-z0-9]\*`; do
- module="${module#./}"
- mkdir -p "${ESVN_STORE_DIR}/kdebase-${module}" && mv -f "${module}" "${ESVN_STORE_DIR}/kdebase-${module}" || \
- die "Failed to move to '${ESVN_STORE_DIR}/kdebase-${module}'."
- done
- popd > /dev/null
- rm -fr "${cleandir}/kdebase" || \
- die "Failed to remove ${cleandir}/kdebase. You need to remove it manually."
- fi
- # Move the rest
- local pkg
- for pkg in "${cleandir}"/*; do
- mv -f "${pkg}" "${ESVN_STORE_DIR}"/ || eerror "failed to move ${pkg}"
- done
- rmdir "${cleandir}" || die "Could not move obsolete KDE store dir. Please move '${cleandir}' contents to appropriate location (possibly ${ESVN_STORE_DIR}) and manually remove '${cleandir}' in order to continue."
- fi
+ migrate_store_dir
subversion_src_unpack
else
[[ -z $KDE_S ]] && KDE_S="${S}"
1.11 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.11&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.11&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.10&r2=1.11
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- kde4-functions.eclass 12 Jan 2009 17:25:59 -0000 1.10
+++ kde4-functions.eclass 12 Jan 2009 19:40:34 -0000 1.11
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.10 2009/01/12 17:25:59 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.11 2009/01/12 19:40:34 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -267,6 +267,37 @@
fi
}
+# @FUNCTION: migrate_store_dir
+# @DESCRIPTION:
+# Migrate the remnants of ${ESVN_STORE_DIR}/KDE/ to ${ESVN_STORE_DIR}/.
+# Perform experimental split of kdebase to kdebase-apps.
+migrate_store_dir() {
+ local cleandir
+ cleandir="${ESVN_STORE_DIR}/KDE"
+ if [[ -d "${cleandir}" ]]; then
+ ewarn "'${cleandir}' has been found. Moving contents to new location."
+ addwrite "${ESVN_STORE_DIR}"
+ # Split kdebase
+ local module
+ if pushd "${cleandir}"/kdebase/kdebase > /dev/null; then
+ for module in `find . -maxdepth 1 -type d -name [a-z0-9]\*`; do
+ module="${module#./}"
+ mkdir -p "${ESVN_STORE_DIR}/kdebase-${module}" && mv -f "${module}" "${ESVN_STORE_DIR}/kdebase-${module}" || \
+ die "Failed to move to '${ESVN_STORE_DIR}/kdebase-${module}'."
+ done
+ popd > /dev/null
+ rm -fr "${cleandir}/kdebase" || \
+ die "Failed to remove ${cleandir}/kdebase. You need to remove it manually."
+ fi
+ # Move the rest
+ local pkg
+ for pkg in "${cleandir}"/*; do
+ mv -f "${pkg}" "${ESVN_STORE_DIR}"/ || eerror "failed to move ${pkg}"
+ done
+ rmdir "${cleandir}" || die "Could not move obsolete KDE store dir. Please move '${cleandir}' contents to appropriate location (possibly ${ESVN_STORE_DIR}) and manually remove '${cleandir}' in order to continue."
+ fi
+}
+
# Functions handling KMLOADLIBS and KMSAVELIBS
# @FUNCTION: save_library_dependencies
1.10 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.9&r2=1.10
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- kde4-meta.eclass 12 Jan 2009 17:25:59 -0000 1.9
+++ kde4-meta.eclass 12 Jan 2009 19:40:34 -0000 1.10
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.9 2009/01/12 17:25:59 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.10 2009/01/12 19:40:34 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -163,7 +163,12 @@
kde4-meta_src_unpack() {
debug-print-function ${FUNCNAME} "$@"
if [[ $BUILD_TYPE = live ]]; then
- kde4-base_src_unpack
+ migrate_store_dir
+ S="${WORKDIR}/${PN}-${PV}"
+ mkdir -p "${S}"
+ ESVN_RESTRICT="export" subversion_src_unpack
+ subversion_wc_info
+ subversion_bootstrap
kde4-meta_src_extract
else
kde4-meta_src_extract
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-03-01 11:44 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-03-01 11:44 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/03/01 11:44:09
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update kde4 eclasses. Was in testing for month now so hope all problems squashed. Resolves some annoying issues and enhance deps.
Revision Changes Path
1.30 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.30&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.30&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.29&r2=1.30
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- kde4-base.eclass 10 Feb 2009 20:07:24 -0000 1.29
+++ kde4-base.eclass 1 Mar 2009 11:44:09 -0000 1.30
@@ -1,6 +1,6 @@
-# Copyright 2007-2008 Gentoo Foundation
+# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.29 2009/02/10 20:07:24 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.30 2009/03/01 11:44:09 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -16,7 +16,7 @@
inherit base cmake-utils eutils multilib kde4-functions
get_build_type
-if [[ $BUILD_TYPE = live ]]; then
+if [[ ${BUILD_TYPE} = live ]]; then
inherit subversion
fi
@@ -59,15 +59,36 @@
}
kde4-base_set_qt_dependencies
-# Set the cmake dependencies
-# Quite a few packages fail with cmake-2.4 even for KDE 4.1, so we just require 2.6.2
-CMAKEDEPEND=">=dev-util/cmake-2.6.2"
+# Xorg
+COMMONDEPEND="${COMMONDEPEND}
+ >=x11-base/xorg-server-1.5.2
+"
+
+# X11 libs
+COMMONDEPEND="${COMMONDEPEND}
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+"
+
+# localization deps
+# DISABLED UNTIL PMS decide correct approach :(
+if [[ -n ${KDE_LINGUAS} ]]; then
+ LNG_DEP=""
+ for _lng in ${KDE_LINGUAS}; do
+ # there must be or due to issue if lingua is not present in kde-l10n so
+ # it wont die but pick kde-l10n as-is.
+ LNG_DEP="${LNG_DEP}
+ || ( kde-base/kde-l10n[linguas_${_lng},kdeprefix=] kde-base/kde-l10n[kdeprefix=] )"
+ done
+fi
-# Set the common dependencies
-DEPEND="${DEPEND} ${COMMONDEPEND} ${CMAKEDEPEND}
+# Set common dependencies for all ebuilds that inherit this eclass
+DEPEND="${DEPEND} ${COMMONDEPEND}
+ >=dev-util/cmake-2.6.2
dev-util/pkgconfig
- x11-libs/libXt
- x11-proto/xf86vidmodeproto"
+ >=sys-apps/sandbox-1.3.2
+"
RDEPEND="${RDEPEND} ${COMMONDEPEND}"
if [[ $BUILD_TYPE = live ]]; then
@@ -137,7 +158,7 @@
# @CODE
# Note: default minimal version is kde-4.1, which means that the apps will work
# with any KDE version >=${KDE_MINIMAL}
-KDE_MINIMAL="${KDE_MINIMAL:=4.1}"
+KDE_MINIMAL="${KDE_MINIMAL:=4.2}"
export KDE_MINIMAL
# FIXME: the code section, explanation of live. The last sentence needs other
@@ -166,7 +187,7 @@
latest)
if [[ $KDEBASE = kde-base ]]; then
case ${PV} in
- 4.2.6*)
+ 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
_kdedir="4.3"
_pv="-${PV}:4.3"
_pvn="-${PV}"
@@ -198,7 +219,7 @@
;;
*)
die "NEED_KDE=latest not supported for PV=${PV}" ;;
- esac
+ esac
_operator=">="
else
# this creates dependency on any version of kde4
@@ -216,7 +237,7 @@
_pvn="-${NEED_KDE}"
export NEED_KDE="live"
;;
- 4.2.6*)
+ 4.3 | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
_kdedir="4.3"
_pv="-${NEED_KDE}:4.3"
_pvn="-${NEED_KDE}"
@@ -258,10 +279,9 @@
esac
if [[ ${NEED_KDE} != none ]]; then
-
#Set the SLOT
- if [[ -n $KDEBASE ]]; then
- if [[ $NEED_KDE = live ]]; then
+ if [[ -n ${KDEBASE} ]]; then
+ if [[ ${NEED_KDE} = live ]]; then
SLOT="live"
else
case ${KMNAME} in
@@ -286,12 +306,13 @@
*)
case ${PV} in
9999*) SLOT="live" ;;
+ 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
*) SLOT="4.1" ;;
esac
;;
- esac
+ esac
fi
fi
@@ -309,21 +330,21 @@
# Adding kdelibs, kdepimlibs and kdebase-data deps to all other packages.
# We only need to add the dependencies if ${PN} is not "kdelibs" or "kdepimlibs"
- if [[ $PN != kdelibs ]]; then
+ if [[ ${PN} != kdelibs ]]; then
DEPEND="${DEPEND}
kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
!kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
RDEPEND="${RDEPEND}
kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
!kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
- if [[ $PN != kdepimlibs ]]; then
+ if [[ ${PN} != kdepimlibs ]]; then
DEPEND="${DEPEND}
kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
!kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
RDEPEND="${RDEPEND}
kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
!kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
- if [[ $PN != kdebase-data ]]; then
+ if [[ ${PN} != kdebase-data ]]; then
RDEPEND="${RDEPEND}
kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
!kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )"
@@ -335,11 +356,12 @@
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
# koffice ebuild, the URI should be set in the ebuild itself
-case ${SLOT} in
+case ${BUILD_TYPE} in
live)
+ SRC_URI=""
ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
# Split ebuild, or extragear stuff
- if [[ -n $KMNAME ]]; then
+ if [[ -n ${KMNAME} ]]; then
ESVN_PROJECT="${KMNAME}"
if [[ -z ${KMNOMODULE} && -z ${KMMODULE} ]]; then
KMMODULE="${PN}"
@@ -347,31 +369,22 @@
# Split kde-base/ ebuilds: (they reside in trunk/KDE)
case ${KMNAME} in
kdebase-*)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/kdebase/${KMNAME#kdebase-}/"
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/kdebase/${KMNAME#kdebase-}"
;;
kdereview)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}/"
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
kde*)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${KMNAME}"
;;
extragear*|playground*)
- case ${PN} in
- *-plasma)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}/"
- ESVN_PROJECT="${KMNAME}/${KMMODULE}/"
- ;;
- *)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}/"
- ;;
- esac
- ;;
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ;;
koffice)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
;;
*)
- # Extragear material
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}/"
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
esac
else
@@ -383,9 +396,14 @@
ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
;;
*)
- if [[ -n $KDEBASE ]]; then
+ if [[ -n ${KDEBASE} ]]; then
if [[ -n ${KMNAME} ]]; then
- _kmname=${KMNAME}
+ case ${KMNAME} in
+ kdebase-apps)
+ _kmname="kdebase" ;;
+ *)
+ _kmname=${KMNAME} ;;
+ esac
else
_kmname=${PN}
fi
@@ -394,11 +412,7 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.2.60)
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.svn912032tar.bz2" ;;
- 4.2.61)
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.svn917530.tar.bz2" ;;
- 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
+ 4.2.6* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
*) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
esac
@@ -408,8 +422,8 @@
;;
esac
fi
- unset _kmname _kmname_pv
- fi
+ unset _kmname _kmname_pv
+ fi
;;
esac
@@ -432,14 +446,14 @@
# errors and die if any required flags listed in $QT4_BUILT_WITH_USE_CHECK or
# $KDE4_BUILT_WITH_USE_CHECK are missing.
kde4-base_pkg_setup() {
- debug-print-function $FUNCNAME "$@"
+ debug-print-function ${FUNCNAME} "$@"
# Don't set KDEHOME during compile, it will cause access violations
unset KDEHOME
# Search for best suitable kde installation for misc kde package.
# Computation based on NEED_KDE and KDE_MINIMAL
- [[ ${NEED_KDE} = latest || ${NEED_KDE} = none ]] && get_latest_kdedir
+ [[ ${KDEBASE} != kde-base ]] && [[ ${NEED_KDE} = latest || ${NEED_KDE} = none ]] && get_latest_kdedir
# Set PREFIX
if use kdeprefix; then
@@ -451,7 +465,7 @@
fi
# Set the prefix based on KDEDIR
# Make it a consequence of kdeprefix
- PREFIX=$KDEDIR
+ PREFIX=${KDEDIR}
unset _kdedir
@@ -459,7 +473,7 @@
[[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
die "built_with_use illegal in this EAPI!"
- if [[ $BUILD_TYPE = live && -z $I_KNOW_WHAT_I_AM_DOING ]]; then
+ if [[ ${BUILD_TYPE} = live && -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
echo
elog "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
elog "Use it at your own risk."
@@ -471,30 +485,14 @@
# @FUNCTION: kde4-base_src_unpack
# @DESCRIPTION:
# This function unpacks the source tarballs for KDE4 applications.
-#
-# If no argument is passed to this function, then standard src_unpack is
-# executed. Otherwise, options are passed to base_src_unpack.
kde4-base_src_unpack() {
- debug-print-function $FUNCNAME "$@"
+ debug-print-function ${FUNCNAME} "$@"
- if [[ $BUILD_TYPE = live ]]; then
+ if [[ ${BUILD_TYPE} = live ]]; then
migrate_store_dir
subversion_src_unpack
else
- [[ -z $KDE_S ]] && KDE_S="${S}"
- if [[ -z $* ]]; then
- # Unpack first and deal with KDE patches after examing possible patch sets.
- # To be picked up, patches need to conform to the guidelines stated before.
- # Monolithic ebuilds will use the split ebuild patches.
- [[ -d "${KDE_S}" ]] || unpack ${A}
- fi
- # Updated cmake dir
- if [[ -d "${WORKDIR}/cmake" && -d "${KDE_S}/cmake" ]]; then
- ebegin "Updating cmake/ directory..."
- rm -rf "${KDE_S}/cmake" || die "Unable to remove old cmake/ directory"
- ln -s "${WORKDIR}/cmake" "${KDE_S}/cmake" || die "Unable to symlink the new cmake/ directory"
- eend 0
- fi
+ base_src_unpack
fi
}
@@ -507,7 +505,7 @@
debug-print-function ${FUNCNAME} "$@"
# Only enable selected languages, used for KDE extragear apps.
- if [[ -n $KDE_LINGUAS ]]; then
+ if [[ -n ${KDE_LINGUAS} ]]; then
enable_selected_linguas
fi
@@ -515,12 +513,12 @@
base_src_prepare
# Save library dependencies
- if [[ -n $KMSAVELIBS ]] ; then
+ if [[ -n ${KMSAVELIBS} ]] ; then
save_library_dependencies
fi
# Inject library dependencies
- if [[ -n $KMLOADLIBS ]] ; then
+ if [[ -n ${KMLOADLIBS} ]] ; then
load_library_dependencies
fi
}
@@ -549,7 +547,7 @@
mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=OFF"
# Set distribution name
- [[ $PN = kdelibs ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
+ [[ ${PN} = kdelibs ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
# runpath linking
mycmakeargs="${mycmakeargs} -DKDE4_USE_ALWAYS_FULL_RPATH=ON"
@@ -562,26 +560,22 @@
# Set environment
QTEST_COLORED=1
- QT_PLUGIN_PATH=${KDEDIR}/$(get_libdir)/kde4/plugins/
+ QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
- # hardcode path to *.cmake KDE files
+ # Hardcode path to *.pc KDE files
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig"
- # additonal arguments for KOFFICE
- if [[ $KMNAME = koffice ]]; then
- case ${PN} in
- koffice-data) : ;;
- *)
- mycmakeargs="${mycmakeargs}
- -DWITH_OpenEXR=ON
- $(cmake-utils_use_with crypt QCA2)
- $(cmake-utils_use_with opengl OpenGL)"
- if use crypt; then
- mycmakeargs="${mycmakeargs}
- -DQCA2_LIBRARIES=/usr/$(get_libdir)/qca2/libqca.so.2"
- fi
- ;;
- esac
+ # Override some environment variables
+ PATH="${KDEDIR}/bin:${PATH}"
+ LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
+
+ # Set cmake prefixes to allow buildsystem to localize valid KDE installation when more are present
+ if use kdeprefix; then
+ mycmakeargs="${mycmakeargs}
+ -DCMAKE_SYSTEM_INCLUDE_PATH=${KDEDIR}/include
+ -DCMAKE_SYSTEM_LIBRARY_PATH=${KDEDIR}/$(get_libdir)
+ -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}
+ -DCMAKE_SYSTEM_PROGRAM_PATH=${KDEDIR}/bin"
fi
[ -e CMakeLists.txt ] && cmake-utils_src_configure
@@ -604,7 +598,7 @@
debug-print-function ${FUNCNAME} "$@"
if [[ -d "$WORKDIR/${PN}_build" ]]; then
- pushd "${WORKDIR}"/${PN}_build > /dev/null
+ pushd "${WORKDIR}/${PN}_build" > /dev/null
fi
[ -e [Mm]akefile ] && cmake-utils_src_make "$@"
}
@@ -617,7 +611,8 @@
# Override this value, set in kde4-base_src_configure()
mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=ON"
- cmake-utils_src_compile
+ cmake-utils_src_configure
+ kde4-base_src_compile
cmake-utils_src_test
}
@@ -628,13 +623,13 @@
kde4-base_src_install() {
debug-print-function ${FUNCNAME} "$@"
- if [[ -n $KMSAVELIBS ]] ; then
+ if [[ -n ${KMSAVELIBS} ]] ; then
install_library_dependencies
fi
kde4-base_src_make_doc
if [[ -d "$WORKDIR/${PN}_build" ]]; then
- pushd "${WORKDIR}"/${PN}_build > /dev/null
+ pushd "${WORKDIR}/${PN}_build" > /dev/null
fi
[ -e [Mm]akefile ] && cmake-utils_src_install
}
@@ -647,12 +642,12 @@
local doc
for doc in AUTHORS ChangeLog* README* NEWS TODO; do
- [[ -s $doc ]] && dodoc ${doc}
+ [[ -s ${doc} ]] && dodoc ${doc}
done
- if [[ -z $KMNAME ]]; then
+ if [[ -z ${KMNAME} ]]; then
for doc in {apps,runtime,workspace,.}/*/{AUTHORS,README*}; do
- if [[ -s $doc ]]; then
+ if [[ -s ${doc} ]]; then
local doc_complete=${doc}
doc="${doc#*/}"
newdoc "$doc_complete" "${doc%/*}.${doc##*/}"
@@ -663,7 +658,7 @@
if [[ -n ${KDEBASE} && -d "${D}/usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/kde && \
- mv "${D}"/usr/share/doc/${PF} "${D}"/usr/share/doc/kde/ || \
+ mv "${D}/usr/share/doc/${PF}" "${D}"/usr/share/doc/kde/ || \
die "Failed to move docs to kde/ failed."
fi
}
@@ -672,6 +667,8 @@
# @DESCRIPTION:
# Function to rebuild the KDE System Configuration Cache after an application has been installed.
kde4-base_pkg_postinst() {
+ debug-print-function ${FUNCNAME} "$@"
+
buildsycoca
}
@@ -679,5 +676,7 @@
# @DESCRIPTION:
# Function to rebuild the KDE System Configuration Cache after an application has been removed.
kde4-base_pkg_postrm() {
+ debug-print-function ${FUNCNAME} "$@"
+
buildsycoca
}
1.13 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.13&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.13&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.12&r2=1.13
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- kde4-functions.eclass 10 Feb 2009 20:07:24 -0000 1.12
+++ kde4-functions.eclass 1 Mar 2009 11:44:09 -0000 1.13
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.12 2009/02/10 20:07:24 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.13 2009/03/01 11:44:09 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -38,7 +38,7 @@
# @DESCRIPTION:
# The slots used by all KDE versions later than 4.0. The live-ebuilds use
# KDE_LIVE_SLOTS instead.
-KDE_SLOTS=( kde-4 4.1 4.2 )
+KDE_SLOTS=( kde-4 4.1 4.2 4.3 )
# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
# @DESCRIPTION:
@@ -64,7 +64,7 @@
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
- XDG_DATA_DIRS="/usr/share:${KDEDIRS//:/\/share:}/share:/usr/local/share" \
+ XDG_DATA_DIRS="/usr/share:${KDEDIR}/share:/usr/local/share" \
DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
@@ -102,14 +102,6 @@
# but this default can be overridden by defining KDE_LINGUAS_DIR.
enable_selected_linguas() {
local lingua sr_mess wp
- # inform user about kde-l10n for full translation.
- if ! has_version kde-base/kde-l10n; then
- echo
- elog "For fully translated application you should also emerge"
- elog "kde-base/kde-l10n package which ships translated kde core"
- elog "strings."
- echo
- fi
# ebuild overridable linguas directory definition
KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:=${S}/po}
@@ -150,63 +142,6 @@
done
}
-# @FUNCTION: koffice_fix_libraries
-# @DESCRIPTION:
-# replace the weird koffice lib search with hardcoded one, so it
-# actually builds and works.
-koffice_fix_libraries() {
- local LIB_ARRAY R_QT_kostore R_BAS_kostore R_BAS_koodf R_KROSS_kokross R_QT_komain
- local R_CMS_pigmentcms R_BAS_pigmentcms R_BAS_koresources R_BAS_flake R_BAS_koguiutils
- local R_BAS_kopageapp R_BAS_kotext R_BAS_kowmf libname R
- case ${PN} in
- koffice-data|koffice-libs)
- ;;
- *)
- ### basic array
- LIB_ARRAY="kostore koodf kokross komain pigmentcms koresources flake koguiutils kopageapp kotext kowmf"
- ### dep array
- R_QT_kostore="\"/usr/$(get_libdir)/qt4/libQtCore.so\"
- \"/usr/$(get_libdir)/qt4/libQtXml.so\"
- \"${KDEDIR}/$(get_libdir)/libkdecore.so\""
- R_BAS_kostore="libkostore ${R_QT_kostore}"
- R_BAS_koodf="libkoodf ${R_BAS_kostore}"
- R_KROSS_kokross="
- \"${KDEDIR}/$(get_libdir)/libkrossui.so\"
- \"${KDEDIR}/$(get_libdir)/libkrosscore.so\""
- R_BAS_kokross="libkokross ${R_BAS_koodf} ${R_KROSS_kokross}"
- R_QT_komain="\"/usr/$(get_libdir)/qt4/libQtGui.so\""
- R_BAS_komain="libkomain ${R_BAS_koodf} ${R_QT_komain}"
- R_CMS_pigmentcms="\"/usr/$(get_libdir)/liblcms.so\""
- R_BAS_pigmentcms="libpigmentcms ${R_BAS_komain} ${R_CMS_pigmentcms}"
- R_BAS_koresources="libkoresources ${R_BAS_pigmentcms}"
- R_BAS_flake="libflake ${R_BAS_pigmentcms}"
- R_BAS_koguiutils="libkoguiutils libkoresources libflake ${R_BAS_pigmentcms}"
- R_BAS_kopageapp="libkopageapp ${R_BAS_koguitls}"
- R_BAS_kotext="libkotext libkoresources libflake ${R_BAS_pigmentcms}"
- ### additional unmentioned stuff
- R_BAS_kowmf="libkowmf"
- for libname in ${LIB_ARRAY}; do
- ebegin "Fixing library ${libname} with hardcoded path"
- for libpath in $(eval "echo \$R_BAS_${libname}"); do
- if [[ "${libpath}" != "\"/usr/"* ]]; then
- R="${R} \"${KDEDIR}/$(get_libdir)/${libpath}.so\""
- else
- R="${R} ${libpath}"
- fi
- done
- find "${S}" -name CMakeLists.txt -print| xargs -i \
- sed -i \
- -e "s: ${libname} : ${R} :g" \
- -e "s: ${libname}): ${R}):g" \
- -e "s:(${libname} :(${R} :g" \
- -e "s:(${libname}):(${R}):g" \
- -e "s: ${libname}$: ${R}:g" \
- {} || die "Fixing library names failed."
- eend $?
- done
- ;;
- esac
-}
# @FUNCTION: get_build_type
# @DESCRIPTION:
# Determine whether we are using live ebuild or tbzs.
@@ -229,16 +164,16 @@
case ${KDE_WANTED} in
# note this will need to be updated as stable moves and so on
live)
- _versions="9999 4.1.69 4.1.0"
+ _versions="9999 4.2.61 4.2.0 4.1.0"
;;
snapshot)
- _versions="4.1.69 4.1.0 9999"
+ _versions="4.2.61 4.2.0 4.1.0 9999"
;;
testing)
- _versions="4.1.0 4.1.69 9999"
+ _versions="4.2.0 4.1.0 4.2.61 9999"
;;
stable)
- _versions="4.1.0 4.1.69 9999"
+ _versions="4.2.0 4.1.0 4.1.61 9999"
;;
*) die "KDE_WANTED=${KDE_WANTED} not supported here." ;;
esac
@@ -252,7 +187,11 @@
_kdedir="live"
break
;;
- 4.1.69)
+ 4.3.0 | 4.2.61)
+ _kdedir="4.3"
+ break
+ ;;
+ 4.2.0 | 4.1.61)
_kdedir="4.2"
break
;;
@@ -263,6 +202,8 @@
esac
fi
done
+
+ debug-print-function ${FUNCNAME} "$@" "KDE_WANTED=${KDE_WANTED} -> _kdedir=${_kdedir}"
}
# @FUNCTION: migrate_store_dir
1.11 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.11&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.11&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.10&r2=1.11
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- kde4-meta.eclass 12 Jan 2009 19:40:34 -0000 1.10
+++ kde4-meta.eclass 1 Mar 2009 11:44:09 -0000 1.11
@@ -1,6 +1,6 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.10 2009/01/12 19:40:34 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.11 2009/03/01 11:44:09 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -12,17 +12,6 @@
# You must define KMNAME to use this eclass, and do so before inheriting it. All other variables are optional.
# Do not include the same item in more than one of KMMODULE, KMMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY.
-# we want opengl optional in each koffice package
-if [[ $KMNAME = koffice ]]; then
- case ${PN} in
- koffice-data)
- ;;
- *)
- OPENGL_REQUIRED=optional
- ;;
- esac
-fi
-
inherit kde4-base versionator
EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
@@ -51,25 +40,26 @@
kdepim)
DEPEND="${DEPEND} dev-libs/boost app-office/akonadi-server"
RDEPEND="${RDEPEND} dev-libs/boost"
- if [[ $PN != kode ]]; then
- DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}"
- RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}"
+ if [[ ${PN} != kode ]]; then
+ DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}[kdeprefix=]"
+ RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}[kdeprefix=]"
fi
case ${PN} in
akregator|kaddressbook|kjots|kmail|kmobiletools|knode|knotes|korganizer|ktimetracker)
IUSE="+kontact"
- DEPEND="${DEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
- RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT} )"
+ DEPEND="${DEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
+ RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
;;
esac
;;
kdegames)
- if [[ $PN != libkdegames ]]; then
- DEPEND="${DEPEND} >=kde-base/libkdegames-${PV}:${SLOT}"
- RDEPEND="${RDEPEND} >=kde-base/libkdegames-${PV}:${SLOT}"
+ if [[ ${PN} != libkdegames ]]; then
+ DEPEND="${DEPEND} >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]"
+ RDEPEND="${RDEPEND} >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]"
fi
;;
koffice)
+ [[ ${PN} != koffice-data ]] && IUSE="debug"
case ${PV} in
9999*) DEPEND="${DEPEND} !app-office/${PN}:2" ;;
1.9*|2*) DEPEND="${DEPEND} !app-office/${PN}:live" ;;
@@ -84,12 +74,18 @@
RDEPEND="${RDEPEND} media-libs/lcms"
;;
*)
- IUSE="+crypt"
- DEPEND="${DEPEND} crypt? ( >=app-crypt/qca-2 )"
- RDEPEND="${RDEPEND} crypt? ( >=app-crypt/qca-2 )"
- if [[ $PN != koffice-libs ]]; then
- DEPEND="${DEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
- RDEPEND="${RDEPEND} >=app-office/koffice-libs-${PV}:${SLOT}"
+ DEPEND="${DEPEND}
+ dev-cpp/eigen:2
+ media-gfx/imagemagick[openexr?]
+ media-libs/fontconfig
+ media-libs/freetype:2
+ "
+ RDEPEND="${DEPEND}"
+ if [[ ${PN} != koffice-libs && ${PN} != koffice-data ]]; then
+ DEPEND="${DEPEND}
+ >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]"
+ RDEPEND="${RDEPEND}
+ >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]"
fi
;;
esac
@@ -99,6 +95,17 @@
debug-print "line ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - after metapackage-specific dependencies"
debug-print "line ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - after metapackage-specific dependencies"
+# Useful to build kde4-meta style stuff from extragear/playground (plasmoids etc)
+case ${SLOT} in
+ live)
+ case ${KMNAME} in
+ extragear*|playground*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
+ ;;
+ esac
+ ;;
+esac
+
# @ECLASS-VARIABLE: KMNAME
# @DESCRIPTION:
# Name of the parent-module (e.g. kdebase, kdepim, ...). You _must_ set it
@@ -120,8 +127,8 @@
# Example usage: If you're installing subdirectories of a package, like plugins,
# you mark the top subdirectory (containing the package) as $KMEXTRACTONLY, and
# set KMNOMODULE="true".
-if [[ -z $KMMODULE && $KMNOMODULE != true ]]; then
- KMMODULE=$PN
+if [[ -z ${KMMODULE} && ${KMNOMODULE} != true ]]; then
+ KMMODULE=${PN}
fi
# @ECLASS-VARIABLE: KMEXTRA
@@ -153,6 +160,8 @@
# Currently just calls its equivalent in kde4-base.eclass(5). Use this one in
# split ebuilds.
kde4-meta_pkg_setup() {
+ debug-print-function ${FUNCNAME} "$@"
+
kde4-base_pkg_setup
}
@@ -161,10 +170,11 @@
# This function unpacks the source for split ebuilds. See also
# kde4-meta-src_extract.
kde4-meta_src_unpack() {
- debug-print-function ${FUNCNAME} "$@"
- if [[ $BUILD_TYPE = live ]]; then
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${BUILD_TYPE} = live ]]; then
migrate_store_dir
- S="${WORKDIR}/${PN}-${PV}"
+ S="${WORKDIR}/${P}"
mkdir -p "${S}"
ESVN_RESTRICT="export" subversion_src_unpack
subversion_wc_info
@@ -183,7 +193,9 @@
# Also see KMMODULE, KMNOMODULE, KMEXTRA, KMCOMPILEONLY, KMEXTRACTONLY and
# KMTARPARAMS.
kde4-meta_src_extract() {
- if [[ $BUILD_TYPE = live ]]; then
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${BUILD_TYPE} = live ]]; then
local rsync_options subdir kmnamedir targetdir
# Export working copy to ${S}
einfo "Exporting parts of working copy to ${S}"
@@ -211,12 +223,13 @@
|| die "${ESVN}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'."
done
- if [[ $KMNAME = kdebase-runtime && $PN != kdebase-data ]]; then
+ if [[ ${KMNAME} = kdebase-runtime && ${PN} != kdebase-data ]]; then
sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
"${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
fi
else
- local abort tarball tarfile f extractlist
+ local abort tarball tarfile f extractlist moduleprefix
+
case $KMNAME in
kdebase-apps)
tarball="${KMNAME#-apps}-${PV}.tar.bz2"
@@ -225,7 +238,7 @@
tarball="${KMNAME}-${PV}.tar.bz2"
;;
esac
- tarfile="${DISTDIR}"/${tarball}
+ tarfile="${DISTDIR}/${tarball}"
ebegin "Unpacking parts of ${tarball} to ${WORKDIR}"
@@ -240,30 +253,28 @@
KMTARPARAMS="${KMTARPARAMS} -j"
pushd "${WORKDIR}" > /dev/null
- [[ -n ${KDE4_STRICTER} ]] && echo tar -xpf $tarfile $KMTARPARAMS $extractlist >&2
- tar -xpf $tarfile $KMTARPARAMS $extractlist 2> /dev/null
+ [[ -n ${KDE4_STRICTER} ]] && echo tar -xpf "${tarfile}" ${KMTARPARAMS} ${extractlist} >&2
+ tar -xpf "${tarfile}" ${KMTARPARAMS} ${extractlist} 2> /dev/null
- # Default $S is based on $P; rename the extracted directory to match $S
+ # Default $S is based on $P; rename the extracted directory to match $S if necessary
mv ${KMNAME}-${PV} ${P} || die "Died while moving \"${KMNAME}-${PV}\" to \"${P}\""
popd > /dev/null
eend $?
+ # We need to clear it here to make verification below work
+ unset moduleprefix
+
if [[ -n ${KDE4_STRICTER} ]]; then
for f in $(__list_needed_subdirectories fatal); do
- if [[ ! -e ${S}/${f#*/} ]]; then
+ if [[ ! -e "${S}/${f#*/}" ]]; then
eerror "'${f#*/}' is missing"
abort=true
fi
done
[[ -n ${abort} ]] && die "There were missing files."
fi
- kde4-base_src_unpack
- fi
- # fix koffice linking
- if [[ $KMNAME = koffice ]]; then
- koffice_fix_libraries
fi
}
@@ -305,17 +316,11 @@
ConfigureChecks.cmake
config-workspace.h.cmake
config-X11.h.cmake
- startkde.cmake"
- case ${SLOT} in
- 4.2)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- KDE4WorkspaceConfig.cmake.in"
- ;;
- *) : ;;
- esac
+ startkde.cmake
+ KDE4WorkspaceConfig.cmake.in"
;;
kdegames)
- if [[ ${PN} != "libkdegames" ]]; then
+ if [[ ${PN} != libkdegames ]]; then
KMEXTRACTONLY="${KMEXTRACTONLY}
libkdegames"
fi
@@ -337,20 +342,6 @@
config-openexr.h.cmake
config-opengl.h.cmake
config-prefix.h.cmake"
- case ${PN} in
- koffice-libs|koffice-data)
- ;;
- *)
- # add basic extract for all packages
- KMEXTRACTONLY="${KMEXTRACTONLY}
- filters/
- libs/
- plugins/"
- if [[ ${PN} != "kplato" ]]; then
- KMEXTRA="${KMEXTRA} filters/${PN}"
- fi
- ;;
- esac
;;
esac
# Don't install cmake modules for split ebuilds, to avoid collisions.
@@ -388,12 +379,12 @@
done
# Expand KMMODULE
- if [[ -n $KMMODULE ]]; then
+ if [[ -n ${KMMODULE} ]]; then
kmmodule_expanded="${KMMODULE}"
j=$(dirname ${KMMODULE})
while [[ ${j} != "." ]]; do
- kmmodule_expanded="${kmmodule_expanded} $j/CMakeLists.txt";
- j=$(dirname $j)
+ kmmodule_expanded="${kmmodule_expanded} ${j}/CMakeLists.txt";
+ j=$(dirname ${j})
done
fi
@@ -411,17 +402,16 @@
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME} - kmmodule_expanded: ${kmmodule_expanded}"
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME} - kmcompileonly_expanded: ${kmcompileonly_expanded}"
-
case ${PV} in
scm|9999*) : ;;
*) topdir="${KMNAME}-${PV}/" ;;
esac
-
# Create final list of stuff to extract
+ # We append topleveldir only when specified (usually for tarballs)
for i in ${kmmodule_expanded} ${kmextra_expanded} ${kmcompileonly_expanded} \
${KMEXTRACTONLY}
do
- extractlist="${extractlist} ${topdir}${i}"
+ extractlist="${extractlist} ${topdir}${moduleprefix}${i}"
done
echo ${extractlist}
@@ -460,7 +450,7 @@
# @FUNCTION: kde4-meta_change_cmakelists
# @DESCRIPTION:
kde4-meta_change_cmakelists() {
- debug-print-function ${FUNCNAME} "$@"
+ debug-print-function ${FUNCNAME} "$@"
pushd "${S}" > /dev/null
@@ -526,23 +516,21 @@
# COLLISION PROTECT section
# Install the startkde script just once, as a part of kde-base/kdebase-startkde,
# not as a part of every package.
- if [[ ${PN} != "kdebase-startkde" && -f "${S}"/CMakeLists.txt ]]; then
+ if [[ ${PN} != kdebase-startkde && -f "${S}"/CMakeLists.txt ]]; then
# The startkde script moved to kdebase-workspace for KDE4 versions > 3.93.0.
sed -i -e '/startkde/s/^/#DONOTINSTALL /' "${S}"/CMakeLists.txt || \
die "${LINENO}: sed died in the kdebase-startkde collision prevention section"
fi
# Strip EXPORT feature section from workspace for KDE4 versions > 4.1.82
- if [[ ${SLOT} == 4.2 ]] || [[ ${PV} == 9999 ]]; then
- if [[ ${PN} != libkworkspace ]]; then
- sed -i -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
- CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip EXPORT section"
- fi
+ if [[ ${PN} != libkworkspace ]]; then
+ sed -i -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip EXPORT section"
fi
;;
kdebase-runtime)
# COLLISION PROTECT section
# Only install the kde4 script as part of kde-base/kdebase-data
- if [[ ${PN} != "kdebase-data" && -f "${S}"/CMakeLists.txt ]]; then
+ if [[ ${PN} != kdebase-data && -f "${S}"/CMakeLists.txt ]]; then
sed -i -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
"${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
fi
@@ -556,6 +544,16 @@
;;
esac
;;
+ koffice)
+ # prevent collisions
+ if [[ ${PN} != koffice-data ]]; then
+ sed -i -e '/install(.*FindKOfficeLibs.cmake/,/)/ d' \
+ "${S}"/cmake/modules/CMakeLists.txt || \
+ die "${LINENO}: sed died in collision prevention section"
+ sed -i -n -e '1h;1!H;${g;s/install(.\+config-openexr.h.\+)//;p}' \
+ "${S}"/CMakeLists.txt || \
+ die "${LINENO}: sed died in collision prevention section"
+ fi
esac
popd > /dev/null
@@ -566,7 +564,7 @@
# Currently just calls its equivalent in kde4-base.eclass(5). Use this one in split
# ebuilds.
kde4-meta_src_configure() {
- debug-print-function ${FUNCNAME} "$@"
+ debug-print-function ${FUNCNAME} "$@"
kde4-base_src_configure
}
@@ -576,7 +574,7 @@
# General function for compiling split KDE4 applications.
# Overrides kde4-base_src_compile.
kde4-meta_src_compile() {
- debug-print-function ${FUNCNAME} "$@"
+ debug-print-function ${FUNCNAME} "$@"
kde4-base_src_make
}
@@ -603,12 +601,6 @@
if [[ -n ${KMSAVELIBS} ]]; then
install_library_dependencies
fi
-
- # remove unvanted koffice stuff
- if [[ $KMNAME = koffice && $PN != koffice-data ]]; then
- rm "$D/$KDEDIR/include/config-openexr.h"
- rm "$D/$KDEDIR/share/apps/cmake/modules/FindKOfficeLibs.cmake"
- fi
}
# @FUNCTION: kde4-meta_src_make_doc
@@ -616,11 +608,11 @@
# This function searches in ${S}/${KMMODULE},
# and tries to install "AUTHORS ChangeLog* README* NEWS todo" if these files exist.
kde4-meta_src_make_doc() {
- debug-print-function $FUNCNAME "$@"
+ debug-print-function ${FUNCNAME} "$@"
local doc
for doc in AUTHORS ChangeLog* README* NEWS TODO; do
- [[ -s ${KMMODULE}/$doc ]] && newdoc "${KMMODULE}/${doc}" "${doc}.${KMMODULE##*/}"
+ [[ -s ${KMMODULE}/${doc} ]] && newdoc "${KMMODULE}/${doc}" "${doc}.${KMMODULE##*/}"
done
kde4-base_src_make_doc
@@ -631,6 +623,8 @@
# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
# ebuilds.
kde4-meta_pkg_postinst() {
+ debug-print-function ${FUNCNAME} "$@"
+
kde4-base_pkg_postinst
}
@@ -639,6 +633,7 @@
# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
# ebuilds.
kde4-meta_pkg_postrm() {
+ debug-print-function ${FUNCNAME} "$@"
+
kde4-base_pkg_postrm
}
-
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-03-09 19:41 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-03-09 19:41 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/03/09 19:41:27
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Sync kde4 eclasses with kde-testing (review by scarabeus and jmbsvicetto).
Revision Changes Path
1.31 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.31&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.31&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.30&r2=1.31
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- kde4-base.eclass 1 Mar 2009 11:44:09 -0000 1.30
+++ kde4-base.eclass 9 Mar 2009 19:41:26 -0000 1.31
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.30 2009/03/01 11:44:09 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.31 2009/03/09 19:41:26 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -13,7 +13,7 @@
# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
# eclass will fail with version older than 2.
-inherit base cmake-utils eutils multilib kde4-functions
+inherit base cmake-utils eutils kde4-functions
get_build_type
if [[ ${BUILD_TYPE} = live ]]; then
@@ -36,60 +36,82 @@
x11-libs/qt-sql:4[qt3support]
x11-libs/qt-svg:4
x11-libs/qt-test:4
- x11-libs/qt-webkit:4"
- qtopengldepend="x11-libs/qt-opengl:4"
+ "
+ qtwebkitdepend="
+ x11-libs/qt-webkit:4
+ "
+ qtopengldepend="
+ x11-libs/qt-opengl:4
+ "
+ case ${WEBKIT_REQUIRED} in
+ always)
+ qtdepend="${qtdepend}
+ ${qtwebkitdepend}"
+ ;;
+ optional)
+ IUSE="${IUSE} webkit"
+ qtdepend="${qtdepend}
+ webkit? ( ${qtwebkitdepend} )
+ "
+ ;;
+ *) WEBKIT_REQUIRED="never" ;;
+ esac
# opengl dependencies
case ${OPENGL_REQUIRED} in
always)
qtdepend="${qtdepend}
- ${qtopengldepend}"
+ ${qtopengldepend}
+ "
;;
optional)
IUSE="${IUSE} opengl"
qtdepend="${qtdepend}
- opengl? ( ${qtopengldepend} )"
- ;;
- *)
- OPENGL_REQUIRED="never"
+ opengl? ( ${qtopengldepend} )
+ "
;;
+ *) OPENGL_REQUIRED="never" ;;
esac
COMMONDEPEND="${COMMONDEPEND} ${qtdepend}"
}
-kde4-base_set_qt_dependencies
-# Xorg
-COMMONDEPEND="${COMMONDEPEND}
- >=x11-base/xorg-server-1.5.2
-"
-
-# X11 libs
-COMMONDEPEND="${COMMONDEPEND}
- x11-libs/libXext
- x11-libs/libXt
- x11-libs/libXxf86vm
-"
-
-# localization deps
-# DISABLED UNTIL PMS decide correct approach :(
-if [[ -n ${KDE_LINGUAS} ]]; then
- LNG_DEP=""
- for _lng in ${KDE_LINGUAS}; do
- # there must be or due to issue if lingua is not present in kde-l10n so
- # it wont die but pick kde-l10n as-is.
- LNG_DEP="${LNG_DEP}
- || ( kde-base/kde-l10n[linguas_${_lng},kdeprefix=] kde-base/kde-l10n[kdeprefix=] )"
- done
-fi
+if [[ ${NEED_KDE} != "none" ]] ; then
+ # Qt
+ kde4-base_set_qt_dependencies
+
+ # Xorg
+ COMMONDEPEND="${COMMONDEPEND}
+ >=x11-base/xorg-server-1.5.2
+ "
+
+ # X11 libs
+ COMMONDEPEND="${COMMONDEPEND}
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ "
-# Set common dependencies for all ebuilds that inherit this eclass
-DEPEND="${DEPEND} ${COMMONDEPEND}
- >=dev-util/cmake-2.6.2
- dev-util/pkgconfig
- >=sys-apps/sandbox-1.3.2
-"
-RDEPEND="${RDEPEND} ${COMMONDEPEND}"
+ # localization deps
+ # DISABLED UNTIL PMS decide correct approach :(
+ if [[ -n ${KDE_LINGUAS} ]]; then
+ LNG_DEP=""
+ for _lng in ${KDE_LINGUAS}; do
+ # there must be or due to issue if lingua is not present in kde-l10n so
+ # it wont die but pick kde-l10n as-is.
+ LNG_DEP="${LNG_DEP}
+ || ( kde-base/kde-l10n[linguas_${_lng},kdeprefix=] kde-base/kde-l10n[kdeprefix=] )"
+ done
+ fi
+
+ # Set common dependencies for all ebuilds that inherit this eclass
+ DEPEND="${DEPEND} ${COMMONDEPEND}
+ >=dev-util/cmake-2.6.2
+ dev-util/pkgconfig
+ >=sys-apps/sandbox-1.3.2
+ "
+ RDEPEND="${RDEPEND} ${COMMONDEPEND}"
+fi # NEED_KDE != NONE block
if [[ $BUILD_TYPE = live ]]; then
# Disable tests for live ebuilds
@@ -107,6 +129,12 @@
# This variable must be set before inheriting any eclasses. Defaults to 'never'.
OPENGL_REQUIRED="${OPENGL_REQUIRED:-never}"
+# @ECLASS-VARIABLE: WEBKIT_REQUIRED
+# @DESCRIPTION:
+# Is qt-webkit requred? Possible values are 'always', 'optional' and 'never'.
+# This variable must be set before inheriting any eclasses. Defaults to 'never'.
+WEBKIT_REQUIRED="${WEBKIT_REQUIRED:-never}"
+
# @ECLASS-VARIABLE: CPPUNIT_REQUIRED
# @DESCRIPTION:
# Is cppunit required for tests? Possible values are 'always', 'optional' and 'never'.
@@ -115,12 +143,15 @@
case ${CPPUNIT_REQUIRED} in
always)
- DEPEND="${DEPEND} dev-util/cppunit"
+ DEPEND="${DEPEND}
+ dev-util/cppunit
+ "
;;
optional)
IUSE="${IUSE} test"
DEPEND="${DEPEND}
- test? ( dev-util/cppunit )"
+ test? ( dev-util/cppunit )
+ "
;;
*)
CPPUNIT_REQUIRED="never"
@@ -321,34 +352,27 @@
# block non kdeprefix ${PN} on other slots
# we do this only if we do not depend on any version of kde
if [[ ${SLOT} != ${KDE_SLOT} ]]; then
- DEPEND="${DEPEND}
- !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
RDEPEND="${RDEPEND}
- !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )"
+ !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )
+ "
fi
done
- # Adding kdelibs, kdepimlibs and kdebase-data deps to all other packages.
- # We only need to add the dependencies if ${PN} is not "kdelibs" or "kdepimlibs"
+ # Adding kdelibs and kdebase-data deps to all other packages.
if [[ ${PN} != kdelibs ]]; then
DEPEND="${DEPEND}
- kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
+ kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )
+ "
RDEPEND="${RDEPEND}
- kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )"
- if [[ ${PN} != kdepimlibs ]]; then
- DEPEND="${DEPEND}
- kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
+ kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )
+ "
+ if [[ ${PN} != kdepimlibs && ${PN} != kdebase-data ]]; then
RDEPEND="${RDEPEND}
- kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdepimlibs${_pvn}[-kdeprefix] )"
- if [[ ${PN} != kdebase-data ]]; then
- RDEPEND="${RDEPEND}
- kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )"
- fi
+ kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
+ !kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )
+ "
fi
fi
unset _operator _pv _pvn
@@ -412,7 +436,9 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.2.6* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
+ 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
+ SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
+ 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
*) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
esac
@@ -509,7 +535,6 @@
enable_selected_linguas
fi
- # Autopatch
base_src_prepare
# Save library dependencies
@@ -529,11 +554,9 @@
kde4-base_src_configure() {
debug-print-function ${FUNCNAME} "$@"
- # We prefer KDE's own Debugfull mode over the standard Debug
- if has debug ${IUSE//+} && use debug ; then
- ebegin "Enabling debug flag"
- mycmakeargs="${mycmakeargs} -DCMAKE_BUILD_TYPE=Debugfull"
- eend $?
+ # Handle common release builds
+ if ! has debug ${IUSE//+} || ! use debug; then
+ append-cppflags -DQT_NO_DEBUG
fi
# Enable generation of HTML handbook
1.14 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.14&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.14&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.13&r2=1.14
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- kde4-functions.eclass 1 Mar 2009 11:44:09 -0000 1.13
+++ kde4-functions.eclass 9 Mar 2009 19:41:26 -0000 1.14
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.13 2009/03/01 11:44:09 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.14 2009/03/09 19:41:26 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -12,10 +12,11 @@
# @ECLASS-VARIABLE: EAPI
# @DESCRIPTION:
-# By default kde eclass wants eapi 2 which might be redefinable.
-case ${EAPI} in
+# By default kde4 eclasses wants eapi 2 which might be redefinable to newer
+# versions.
+case ${EAPI:-0} in
2) : ;;
- *) die "No way! EAPI older than 2 is not supported." ;;
+ *) die "No way! EAPI other than 2 is not supported for now." ;;
esac
# @ECLASS-VARIABLE: KDEBASE
1.12 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.12&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.12&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.11&r2=1.12
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- kde4-meta.eclass 1 Mar 2009 11:44:09 -0000 1.11
+++ kde4-meta.eclass 9 Mar 2009 19:41:26 -0000 1.12
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.11 2009/03/01 11:44:09 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.12 2009/03/09 19:41:26 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -33,59 +33,95 @@
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
- kdebase|kdebase-workspace|kdebase-runtime)
- DEPEND="${DEPEND} >=kde-base/qimageblitz-0.0.4"
- RDEPEND="${RDEPEND} >=kde-base/qimageblitz-0.0.4"
+ kdebase|kdebase-{apps,workspace,runtime})
+ DEPEND="${DEPEND}
+ >=kde-base/qimageblitz-0.0.4
+ "
+ RDEPEND="${RDEPEND}
+ >=kde-base/qimageblitz-0.0.4
+ "
+ ;;
+ kdenetwork)
+ DEPEND="${DEPEND}
+ >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
+ "
+ RDEPEND="${RDEPEND}
+ >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
+ "
;;
kdepim)
- DEPEND="${DEPEND} dev-libs/boost app-office/akonadi-server"
- RDEPEND="${RDEPEND} dev-libs/boost"
- if [[ ${PN} != kode ]]; then
- DEPEND="${DEPEND} >=kde-base/kode-${PV}:${SLOT}[kdeprefix=]"
- RDEPEND="${RDEPEND} >=kde-base/kode-${PV}:${SLOT}[kdeprefix=]"
- fi
+ DEPEND="${DEPEND}
+ dev-libs/boost
+ >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
+ "
+ RDEPEND="${RDEPEND}
+ dev-libs/boost
+ >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
+ "
case ${PN} in
akregator|kaddressbook|kjots|kmail|kmobiletools|knode|knotes|korganizer|ktimetracker)
IUSE="+kontact"
- DEPEND="${DEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
- RDEPEND="${RDEPEND} kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
+ RDEPEND="${RDEPEND}
+ kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )
+ "
;;
esac
;;
kdegames)
if [[ ${PN} != libkdegames ]]; then
- DEPEND="${DEPEND} >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]"
- RDEPEND="${RDEPEND} >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]"
+ DEPEND="${DEPEND}
+ >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]
+ "
+ RDEPEND="${RDEPEND}
+ >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]
+ "
fi
;;
koffice)
[[ ${PN} != koffice-data ]] && IUSE="debug"
case ${PV} in
- 9999*) DEPEND="${DEPEND} !app-office/${PN}:2" ;;
- 1.9*|2*) DEPEND="${DEPEND} !app-office/${PN}:live" ;;
+ 9999*)
+ DEPEND="${DEPEND}
+ !app-office/${PN}:2
+ "
+ ;;
+ 1.9*|2*)
+ DEPEND="${DEPEND}
+ !app-office/${PN}:live
+ "
+ ;;
esac
DEPEND="${DEPEND}
!app-office/${PN}:0
!app-office/koffice:0
- !app-office/koffice-meta:0"
+ !app-office/koffice-meta:0
+ "
case ${PN} in
koffice-data)
- DEPEND="${DEPEND} media-libs/lcms"
- RDEPEND="${RDEPEND} media-libs/lcms"
+ DEPEND="${DEPEND}
+ media-libs/lcms
+ "
+ RDEPEND="${RDEPEND}
+ media-libs/lcms
+ "
;;
*)
- DEPEND="${DEPEND}
+ COMMON_DEPEND="
dev-cpp/eigen:2
media-gfx/imagemagick[openexr?]
media-libs/fontconfig
media-libs/freetype:2
"
- RDEPEND="${DEPEND}"
+ DEPEND="${DEPEND} ${COMMON_DEPEND}"
+ RDEPEND="${RDEPEND} ${COMMON_DEPEND}"
+ unset COMMON_DEPEND
if [[ ${PN} != koffice-libs && ${PN} != koffice-data ]]; then
DEPEND="${DEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]"
+ >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]
+ "
RDEPEND="${RDEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]"
+ >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]
+ "
fi
;;
esac
@@ -213,14 +249,14 @@
fi
# Copy all subdirectories
for subdir in $(__list_needed_subdirectories); do
- targetdir=""
- if [[ $subdir = doc/* && ! -e "$ESVN_WC_PATH/$kmnamedir$subdir" ]]; then
- continue
- fi
+ targetdir=""
+ if [[ $subdir = doc/* && ! -e "$ESVN_WC_PATH/$kmnamedir$subdir" ]]; then
+ continue
+ fi
- [[ ${subdir%/} = */* ]] && targetdir=${subdir%/} && targetdir=${targetdir%/*} && mkdir -p "${S}/${targetdir}"
- rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \
- || die "${ESVN}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'."
+ [[ ${subdir%/} = */* ]] && targetdir=${subdir%/} && targetdir=${targetdir%/*} && mkdir -p "${S}/${targetdir}"
+ rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \
+ || die "${ESVN}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'."
done
if [[ ${KMNAME} = kdebase-runtime && ${PN} != kdebase-data ]]; then
@@ -228,18 +264,38 @@
"${S}"/CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
fi
else
- local abort tarball tarfile f extractlist moduleprefix
-
- case $KMNAME in
+ local abort tarball tarfile f extractlist moduleprefix postfix
+ case ${PV} in
+ 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
+ KMTARPARAMS="${KMTARPARAMS} --lzma" # lzma
+ postfix="lzma"
+ ;;
+ *)
+ KMTARPARAMS="${KMTARPARAMS} --bzip2" # bz2
+ postfix="bz2"
+ ;;
+ esac
+ case ${KMNAME} in
kdebase-apps)
- tarball="${KMNAME#-apps}-${PV}.tar.bz2"
+ # kdebase/apps -> kdebasa-apps
+ tarball="kdebase-${PV}.tar.${postfix}"
+ # Go one level deeper for kdebase-apps in tarballs
+ moduleprefix=apps/
+ KMTARPARAMS="${KMTARPARAMS} --transform=s|apps/||"
;;
*)
- tarball="${KMNAME}-${PV}.tar.bz2"
+ # Create tarball name from module name (this is the default)
+ tarball="${KMNAME}-${PV}.tar.${postfix}"
;;
esac
+
+ # Full patch to source tarball
tarfile="${DISTDIR}/${tarball}"
+ # Detect real toplevel dir from tarball name - it will be used upon extraction
+ # and in __list_needed_subdirectories
+ topdir="${tarball%.tar.*}/"
+
ebegin "Unpacking parts of ${tarball} to ${WORKDIR}"
kde4-meta_create_extractlists
@@ -247,17 +303,16 @@
for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake \
AUTHORS COPYING INSTALL README NEWS ChangeLog
do
- extractlist="${extractlist} ${KMNAME}-${PV}/${f}"
+ extractlist="${extractlist} ${topdir}${moduleprefix}${f}"
done
extractlist="${extractlist} $(__list_needed_subdirectories)"
- KMTARPARAMS="${KMTARPARAMS} -j"
pushd "${WORKDIR}" > /dev/null
[[ -n ${KDE4_STRICTER} ]] && echo tar -xpf "${tarfile}" ${KMTARPARAMS} ${extractlist} >&2
tar -xpf "${tarfile}" ${KMTARPARAMS} ${extractlist} 2> /dev/null
# Default $S is based on $P; rename the extracted directory to match $S if necessary
- mv ${KMNAME}-${PV} ${P} || die "Died while moving \"${KMNAME}-${PV}\" to \"${P}\""
+ mv ${topdir} ${P} || die "Died while moving \"${topdir}\" to \"${P}\""
popd > /dev/null
@@ -275,6 +330,9 @@
done
[[ -n ${abort} ]] && die "There were missing files."
fi
+
+ # We don't need it anymore
+ unset topdir
fi
}
@@ -326,9 +384,12 @@
fi
;;
kdepim)
+ if [[ ${PN} != libkdepim ]]; then
+ KMEXTRACTONLY="${KMEXTRACTONLY}
+ libkdepim"
+ fi
KMEXTRACTONLY="${KMEXTRACTONLY}
- kleopatra/ConfigureChecks.cmake
- libkdepim/kdepim_export.h"
+ kleopatra/ConfigureChecks.cmake"
if has kontact ${IUSE//+} && use kontact; then
KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
KMEXTRACTONLY="${KMEXTRACTONLY} kontactinterfaces/"
@@ -364,7 +425,7 @@
}
__list_needed_subdirectories() {
- local i j kmextra kmextra_expanded kmmodule_expanded kmcompileonly_expanded extractlist topdir
+ local i j kmextra kmextra_expanded kmmodule_expanded kmcompileonly_expanded extractlist
# We expand KMEXTRA by adding CMakeLists.txt files
kmextra="${KMEXTRA}"
@@ -402,12 +463,8 @@
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME} - kmmodule_expanded: ${kmmodule_expanded}"
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME} - kmcompileonly_expanded: ${kmcompileonly_expanded}"
- case ${PV} in
- scm|9999*) : ;;
- *) topdir="${KMNAME}-${PV}/" ;;
- esac
# Create final list of stuff to extract
- # We append topleveldir only when specified (usually for tarballs)
+ # We append topdir only when specified (usually for tarballs)
for i in ${kmmodule_expanded} ${kmextra_expanded} ${kmcompileonly_expanded} \
${KMEXTRACTONLY}
do
@@ -427,7 +484,6 @@
kde4-base_src_prepare
}
-
# FIXME: no comment here?
_change_cmakelists_parent_dirs() {
debug-print-function ${FUNCNAME} "$@"
@@ -470,8 +526,17 @@
_change_cmakelists_parent_dirs ${KMMODULE}
fi
- # KMCOMPILEONLY
local i
+
+ # KMEXTRACTONLY section - Some ebuilds need to comment out some subdirs in KMMODULE and they use KMEXTRACTONLY
+ for i in ${KMEXTRACTONLY}; do
+ if [[ -d "${S}"/${i} && -f "${S}"/${i}/../CMakeLists.txt ]]; then
+ sed -i -e "/([[:space:]]*$(basename $i)[[:space:]]*)/s/^/#DONOTCOMPILE /" "${S}"/${i}/../CMakeLists.txt || \
+ die "${LINENO}: sed died while working in the KMEXTRACTONLY section while processing ${i}"
+ fi
+ done
+
+ # KMCOMPILEONLY
for i in ${KMCOMPILEONLY}; do
debug-print "${LINENO}: KMCOMPILEONLY, processing ${i}"
# Uncomment "add_subdirectory" instructions inside $KMCOMPILEONLY, then comment "install" instructions.
@@ -503,14 +568,6 @@
fi
done
- # KMEXTRACTONLY section - Some ebuilds need to comment out some subdirs in KMMODULE and they use KMEXTRACTONLY
- for i in ${KMEXTRACTONLY}; do
- if [[ -d "${S}"/${i} && -f "${S}"/${i}/../CMakeLists.txt ]]; then
- sed -i -e "/([[:space:]]*$(basename $i)[[:space:]]*)/s/^/#DONOTCOMPILE /" "${S}"/${i}/../CMakeLists.txt || \
- die "${LINENO}: sed died while working in the KMEXTRACTONLY section while processing ${i}"
- fi
- done
-
case ${KMNAME} in
kdebase-workspace)
# COLLISION PROTECT section
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-04-13 0:02 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-04-13 0:02 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/04/13 00:02:45
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update kde4 eclasses
Add back support for doc handling (now via doc useflag)
Force kdeprefix only for kde-base things (others are going unprefixed to /usr) ->
Note for this: if user find that some application is pulling [-kdeprefix] kde uninstall/install of that app should help.
Rewritten slot handling with simpler code.
Added detection and alert system for finding what aplication break sth for /usr/share/config and /usr/share/kde4 and screw up perms.
Left for next time: "Support for stable live (live packages from stable branch [shiny huh]). :]"
Revision Changes Path
1.34 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.34&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.34&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.33&r2=1.34
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- kde4-base.eclass 26 Mar 2009 21:55:09 -0000 1.33
+++ kde4-base.eclass 13 Apr 2009 00:02:45 -0000 1.34
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.33 2009/03/26 21:55:09 jmbsvicetto Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.34 2009/04/13 00:02:45 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -22,102 +22,6 @@
EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
-# @FUNCTION: kde4-base_set_qt_dependencies
-# @DESCRIPTION:
-# Set qt dependencies. And use opengl based on OPENGL_REQUIRED variable.
-kde4-base_set_qt_dependencies() {
- local qtdepend qtopengldepend
-
- qtdepend="
- x11-libs/qt-core:4[qt3support,ssl]
- x11-libs/qt-gui:4[accessibility,dbus]
- x11-libs/qt-qt3support:4[accessibility]
- x11-libs/qt-script:4
- x11-libs/qt-sql:4[qt3support]
- x11-libs/qt-svg:4
- x11-libs/qt-test:4
- "
- qtwebkitdepend="
- x11-libs/qt-webkit:4
- "
- qtopengldepend="
- x11-libs/qt-opengl:4
- "
-
- case ${WEBKIT_REQUIRED} in
- always)
- qtdepend="${qtdepend}
- ${qtwebkitdepend}"
- ;;
- optional)
- IUSE="${IUSE} webkit"
- qtdepend="${qtdepend}
- webkit? ( ${qtwebkitdepend} )
- "
- ;;
- *) WEBKIT_REQUIRED="never" ;;
- esac
- # opengl dependencies
- case ${OPENGL_REQUIRED} in
- always)
- qtdepend="${qtdepend}
- ${qtopengldepend}
- "
- ;;
- optional)
- IUSE="${IUSE} opengl"
- qtdepend="${qtdepend}
- opengl? ( ${qtopengldepend} )
- "
- ;;
- *) OPENGL_REQUIRED="never" ;;
- esac
-
- COMMONDEPEND="${COMMONDEPEND} ${qtdepend}"
-}
-
-if [[ ${NEED_KDE} != "none" ]] ; then
- # Qt
- kde4-base_set_qt_dependencies
-
- # X11 libs
- COMMONDEPEND="${COMMONDEPEND}
- x11-libs/libXext
- x11-libs/libXt
- x11-libs/libXxf86vm
- "
-
- # localization deps
- # DISABLED UNTIL PMS decide correct approach :(
- if [[ -n ${KDE_LINGUAS} ]]; then
- LNG_DEP=""
- for _lng in ${KDE_LINGUAS}; do
- # there must be or due to issue if lingua is not present in kde-l10n so
- # it wont die but pick kde-l10n as-is.
- LNG_DEP="${LNG_DEP}
- || ( kde-base/kde-l10n[linguas_${_lng},kdeprefix=] kde-base/kde-l10n[kdeprefix=] )"
- done
- fi
-
- # Set common dependencies for all ebuilds that inherit this eclass
- DEPEND="${DEPEND} ${COMMONDEPEND}
- >=dev-util/cmake-2.6.2
- dev-util/pkgconfig
- >=sys-apps/sandbox-1.3.2
- "
- RDEPEND="${RDEPEND} ${COMMONDEPEND}"
-fi # NEED_KDE != NONE block
-
-if [[ $BUILD_TYPE = live ]]; then
- # Disable tests for live ebuilds
- RESTRICT="${RESTRICT} test"
- # Live ebuilds in kde-base default to kdeprefix by default
- IUSE="${IUSE} +kdeprefix"
-else
- # All other ebuild types default to -kdeprefix as before
- IUSE="${IUSE} kdeprefix"
-fi
-
# @ECLASS-VARIABLE: OPENGL_REQUIRED
# @DESCRIPTION:
# Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
@@ -136,242 +40,223 @@
# This variable must be set before inheriting any eclasses. Defaults to 'never'.
CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}"
-case ${CPPUNIT_REQUIRED} in
+# @ECLASS-VARIABLE: KDE_REQUIRED
+# @DESCRIPTION:
+# Is kde required? Possible values are 'always', 'optional' and 'never'.
+# This variable must be set before inheriting any eclasses. Defaults to 'always'
+# If set to always or optional, KDE_MINIMAL may be overriden as well.
+# Note that for kde-base packages this variable is fixed to 'always'.
+KDE_REQUIRED="${KDE_REQUIRED:-always}"
+
+# Verify KDE_MINIMAL (display QA notice in pkg_setup, still we need to fix it here)
+if [[ -n ${KDE_MINIMAL} ]]; then
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ [[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
+ done
+ [[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
+else
+ KDE_MINIMAL_VALID=1
+fi
+
+# @ECLASS-VARIABLE: KDE_MINIMAL
+# @DESCRIPTION:
+# This wariable is used when KDE_REQUIRED is set, to specify required KDE minimal
+# version for apps to work. Currently defaults to 4.2
+# One may override this variable to raise version requirements.
+# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
+# Note that for kde-base packages is fixed to ${SLOT}.
+KDE_MINIMAL="${KDE_MINIMAL:-4.2}"
+
+# Fallback behaviour (for now)
+# TODO Remove when tree is clean
+if [[ -n ${NEED_KDE} ]]; then
+ case ${NEED_KDE} in
+ none)
+ KDE_REQUIRED="never"
+ ;;
+ *)
+ KDE_REQUIRED="always"
+ KDE_MINIMAL="${NEED_KDE}"
+ ;;
+ esac
+fi
+
+# OpenGL dependencies
+qtopengldepend="
+ x11-libs/qt-opengl:4
+"
+case ${OPENGL_REQUIRED} in
always)
- DEPEND="${DEPEND}
- dev-util/cppunit
+ COMMONDEPEND="${COMMONDEPEND} ${qtopengldepend}"
+ ;;
+ optional)
+ IUSE="${IUSE} opengl"
+ COMMONDEPEND="${COMMONDEPEND}
+ opengl? ( ${qtopengldepend} )
"
;;
+ *) ;;
+esac
+unset qtopengldepend
+
+# WebKit dependencies
+qtwebkitdepend="
+ x11-libs/qt-webkit:4
+"
+case ${WEBKIT_REQUIRED} in
+ always)
+ COMMONDEPEND="${COMMONDEPEND} ${qtwebkitdepend}"
+ ;;
+ optional)
+ IUSE="${IUSE} webkit"
+ COMMONDEPEND="${COMMONDEPEND}
+ webkit? ( ${qtwebkitdepend} )
+ "
+ ;;
+ *) ;;
+esac
+unset qtwebkitdepend
+
+# CppUnit dependencies
+cppuintdepend="
+ dev-util/cppunit
+"
+case ${CPPUNIT_REQUIRED} in
+ always)
+ DEPEND="${DEPEND} ${cppuintdepend}"
+ ;;
optional)
IUSE="${IUSE} test"
DEPEND="${DEPEND}
- test? ( dev-util/cppunit )
+ test? ( ${cppuintdepend} )
"
;;
- *)
- CPPUNIT_REQUIRED="never"
- ;;
+ *) ;;
esac
+unset cppuintdepend
-# @ECLASS-VARIABLE: NEED_KDE
-# @DESCRIPTION:
-# This variable sets the version of KDE4 which will be used by the eclass.
-# For kde-base packages, if it is not set by the ebuild,
-# it's assumed that the required KDE4 version is the latest available.
-# For non kde-base packages, it is also set to the latest by default.
-#
-# For more precise adjustments or for specifying particular kde version,
-# KDE_MINIMAL variable can be used.
-#
-# @CODE
-# Acceptable values are:
-# - latest - Use latest version in the portage tree
-# Default for kde-base ebuilds.
-# - live - Use live release (live ebuilds)
-# - none - Let the ebuild handle SLOT, kde dependencies, KDEDIR, ...
-# - 4.2, 4.1, kde-4 - respective slots for kde versions
-# @CODE
-# Note: default NEED_KDE is latest
-NEED_KDE="${NEED_KDE:=latest}"
-export NEED_KDE
+# DEPRECATED block
+if [[ ${NEED_KDE} != "none" ]]; then
+ # localization deps
+ # DISABLED UNTIL PMS decide correct approach :(
+ if [[ -n ${KDE_LINGUAS} ]]; then
+ LNG_DEP=""
+ for _lng in ${KDE_LINGUAS}; do
+ # there must be or due to issue if lingua is not present in kde-l10n so
+ # it wont die but pick kde-l10n as-is.
+ LNG_DEP="${LNG_DEP}
+ || (
+ kde-base/kde-l10n[linguas_${_lng},kdeprefix=]
+ kde-base/kde-l10n[kdeprefix=]
+ )
+ "
+ done
+ fi
+fi # NEED_KDE != NONE block
-# @ECLASS-VARIABLE: KDE_MINIMAL
-# @DESCRIPTION:
-# This wariable is used when NEED_KDE="latest" is set, to specify the
-# required KDE minimal version for which apps will work.
-# @CODE
-# KDE_MINIMAL="-4.1"
-# @CODE
-# Note: default minimal version is kde-4.1, which means that the apps will work
-# with any KDE version >=${KDE_MINIMAL}
-KDE_MINIMAL="${KDE_MINIMAL:=4.2}"
-export KDE_MINIMAL
+# Setup packages inheriting this eclass
+case ${KDEBASE} in
-# FIXME: the code section, explanation of live. The last sentence needs other
-# formulation too.
-#
-# @ECLASS-VARIABLE: KDE_WANTED
-# @DESCRIPTION:
-# When NEED_KDE=latest is inherited, KDE_WANTED serves to indicate the prefered kde
-# version. It's value is looked for before any other. Useful when having more
-# +kdeprefix installs: you can choose which kde version, if present, to link
-# against.
-#
-# @CODE
-# Acceptable values are:
-# stable = whatever is main tree (now 4.1)
-# testing = whatever is in testing on main tree
-# snapshot = whatever is released under snapshots (4.2 at present)
-# live = live svn ebuilds, also default value, do not be scared it goes in this
-#
-# order: live->snapshot->testing->stable, when searching for kde. This way we
-# allow users to use just kde4snapshots and use software from the tree.
-KDE_WANTED="${KDE_WANTED:=live}"
-export KDE_WANTED
-
-case ${NEED_KDE} in
- latest)
- if [[ $KDEBASE = kde-base ]]; then
- case ${PV} in
- 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
- _kdedir="4.3"
- _pv="-${PV}:4.3"
- _pvn="-${PV}"
- ;;
- 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
- _kdedir="4.2"
- _pv="-${PV}:4.2"
- _pvn="-${PV}"
- ;;
- 4.1*| 4.0.9* | 4.0.8*)
- _kdedir="4.1"
- _pv="-${PV}:4.1"
- _pvn="-${PV}"
- ;;
- 4.0*)
- _kdedir="4.0"
- _pv="-${PV}:kde-4"
- _pvn="-${PV}"
- ;;
- 3.9*)
- _kdedir="3.9"
- _pv="-${PV}:kde-4"
- _pvn="-${PV}"
- ;;
- 9999*)
- _kdedir="live"
- _pv="-${PV}:live"
- _pvn="-${PV}"
- ;;
- *)
- die "NEED_KDE=latest not supported for PV=${PV}" ;;
- esac
- _operator=">="
+ kde-base)
+ if [[ $BUILD_TYPE = live ]]; then
+ # Disable tests for live ebuilds
+ RESTRICT="${RESTRICT} test"
+ # Live ebuilds in kde-base default to kdeprefix by default
+ IUSE="${IUSE} +kdeprefix"
else
- # this creates dependency on any version of kde4
- _operator=">="
- _pv="-${KDE_MINIMAL}"
- _pvn=${_pv}
+ # All other ebuild types default to -kdeprefix as before
+ IUSE="${IUSE} kdeprefix"
fi
+ # Determine SLOT from PV
+ case ${PV} in
+ 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
+ 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
+ *9999*) SLOT="live" ;;
+ *) die "Unsupported ${PV}" ;;
+ esac
+ _kdedir="${SLOT}"
+ _pv="-${PV}:${SLOT}"
+ _pvn="-${PV}"
+
+ # Block installation of other SLOTS unless kdeprefix
+ for slot in ${KDE_SLOTS[@]}; do
+ # Block non kdeprefix ${PN} on other slots
+ if [[ ${SLOT} != ${slot} ]]; then
+ RDEPEND="${RDEPEND}
+ !kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )
+ "
+ fi
+ done
;;
- # NEED_KDE="${PV}"
- scm|svn|live|9999*)
- _kdedir="live"
- _operator=">="
- _pv="-${NEED_KDE}:live"
- _pvn="-${NEED_KDE}"
- export NEED_KDE="live"
- ;;
- 4.3 | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
- _kdedir="4.3"
- _pv="-${NEED_KDE}:4.3"
- _pvn="-${NEED_KDE}"
- _operator=">="
- ;;
- 4.2 | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*)
- _kdedir="4.2"
- _pv="-${NEED_KDE}:4.2"
- _pvn="-${NEED_KDE}"
- _operator=">="
- ;;
- 4.1 | 4.0.9* | 4.0.8*)
- _kdedir="4.1"
- _pv="-${NEED_KDE}:4.1"
- _pvn="-${NEED_KDE}"
- _operator=">="
- ;;
- 4.0* | 4)
- _kdedir="4.0"
- _operator=">="
- _pv="-${NEED_KDE}:kde-4"
- _pvn="-${NEED_KDE}"
- ;;
- 3.9*)
- _kdedir="3.9"
- _operator=">="
- _pv="-${NEED_KDE}:kde-4"
- _pvn="-${NEED_KDE}"
- ;;
-
- # The ebuild handles dependencies, KDEDIR, SLOT.
- none)
- :
+ koffice)
+ SLOT="2"
+ _pv="-${KDE_MINIMAL}"
+ _pvn="${_pv}"
;;
*)
- die "NEED_KDE=${NEED_KDE} currently not supported."
+ _pv="-${KDE_MINIMAL}"
+ _pvn="${_pv}"
;;
-esac
-
-if [[ ${NEED_KDE} != none ]]; then
- #Set the SLOT
- if [[ -n ${KDEBASE} ]]; then
- if [[ ${NEED_KDE} = live ]]; then
- SLOT="live"
- else
- case ${KMNAME} in
- koffice)
- case ${PV} in
- 9999*) SLOT="live" ;;
- *) SLOT="2" ;;
- esac
- ;;
- kdevelop)
- case ${PV} in
- 9999*) SLOT="live" ;;
- 4.0*|3.9*) SLOT="4" ;;
- esac
- ;;
- kdevplatform)
- case ${PV} in
- 9999*) SLOT="live" ;;
- 1.0*|0.9*) SLOT="1" ;;
- esac
- ;;
- *)
- case ${PV} in
- 9999*) SLOT="live" ;;
- 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
- 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
- 4.1* | 4.0.9* | 4.0.8*) SLOT="4.1" ;;
- *) SLOT="4.1" ;;
- esac
- ;;
- esac
- fi
- fi
- # Block installation of other SLOTS unless kdeprefix
- for KDE_SLOT in ${KDE_SLOTS[@]}; do
- # block non kdeprefix ${PN} on other slots
- # we do this only if we do not depend on any version of kde
- if [[ ${SLOT} != ${KDE_SLOT} ]]; then
- RDEPEND="${RDEPEND}
- !kdeprefix? ( !kde-base/${PN}:${KDE_SLOT}[-kdeprefix] )
- "
- fi
- done
+esac
- # Adding kdelibs and kdebase-data deps to all other packages.
- if [[ ${PN} != kdelibs ]]; then
- DEPEND="${DEPEND}
- kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )
+# KDE dependencies
+kdecommondepend="
+ dev-lang/perl
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ x11-libs/qt-core:4[qt3support,ssl]
+ x11-libs/qt-gui:4[accessibility,dbus]
+ x11-libs/qt-qt3support:4[accessibility]
+ x11-libs/qt-script:4
+ x11-libs/qt-sql:4[qt3support]
+ x11-libs/qt-svg:4
+ x11-libs/qt-test:4
+"
+if [[ ${PN} != kdelibs ]]; then
+ if [[ ${KDEBASE} = kde-base ]]; then
+ kdecommondepend="${kdecommondepend}
+ kdeprefix? ( >=kde-base/kdelibs${_pv}[kdeprefix] )
+ !kdeprefix? ( >=kde-base/kdelibs${_pvn}[-kdeprefix] )
"
- RDEPEND="${RDEPEND}
- kdeprefix? ( ${_operator}kde-base/kdelibs${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdelibs${_pvn}[-kdeprefix] )
+ else
+ kdecommondepend="${kdecommondepend}
+ >=kde-base/kdelibs${_pv}
"
- if [[ ${PN} != kdepimlibs && ${PN} != kdebase-data ]]; then
- RDEPEND="${RDEPEND}
- kdeprefix? ( ${_operator}kde-base/kdebase-data${_pv}[kdeprefix] )
- !kdeprefix? ( ${_operator}kde-base/kdebase-data${_pvn}[-kdeprefix] )
- "
- fi
fi
- unset _operator _pv _pvn
fi
+unset _pv _pvn
+kdedepend="
+ >=dev-util/cmake-2.6.2
+ dev-util/pkgconfig
+ >=sys-apps/sandbox-1.3.2
+"
+case ${KDE_REQUIRED} in
+ always)
+ COMMONDEPEND="${COMMONDEPEND} ${kdecommondepend}"
+ DEPEND="${DEPEND} ${kdedepend}"
+ ;;
+ optional)
+ IUSE="${IUSE} kde"
+ COMMONDEPEND="${COMMONDEPEND}
+ kde? ( ${kdecommondepend} )"
+ DEPEND="${DEPEND}
+ kde? ( ${kdedepend} )"
+ ;;
+ *) ;;
+esac
+unset kdecommondepend kdedepend
+
+debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: COMMONDEPEND is ${COMMONDEPEND}"
+debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: DEPEND (only) is ${DEPEND}"
+debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: RDEPEND (only) is ${RDEPEND}"
+
+# Accumulate dependencies set by this eclass
+DEPEND="${DEPEND} ${COMMONDEPEND}"
+RDEPEND="${RDEPEND} ${COMMONDEPEND}"
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
# koffice ebuild, the URI should be set in the ebuild itself
@@ -382,7 +267,7 @@
# Split ebuild, or extragear stuff
if [[ -n ${KMNAME} ]]; then
ESVN_PROJECT="${KMNAME}"
- if [[ -z ${KMNOMODULE} && -z ${KMMODULE} ]]; then
+ if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
KMMODULE="${PN}"
fi
# Split kde-base/ ebuilds: (they reside in trunk/KDE)
@@ -393,11 +278,18 @@
kdereview)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
+ kdesupport)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ESVN_PROJECT="${PN}"
+ ;;
kde*)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${KMNAME}"
;;
extragear*|playground*)
+ # Unpack them in toplevel dir, so that they won't conflict with kde4-meta
+ # build packages from same svn location.
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ESVN_PROJECT="${PN}"
;;
koffice)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
@@ -421,7 +313,7 @@
kdebase-apps)
_kmname="kdebase" ;;
*)
- _kmname=${KMNAME} ;;
+ _kmname="${KMNAME}" ;;
esac
else
_kmname=${PN}
@@ -452,49 +344,57 @@
# @ECLASS-VARIABLE: PREFIX
# @DESCRIPTION:
-# Set the installation PREFIX. All kde-base ebuilds go into the KDE4 installation directory.
-# Applications installed by the other ebuilds go into ${KDEDIR} by default, this value
-# can be superseded by defining PREFIX before inheriting kde4-base.
-# This value is set on pkg_setup
-PREFIX=""
-
-debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SLOT ${SLOT} - NEED_KDE ${NEED_KDE}"
+# Set the installation PREFIX for non kde-base applications. It defaults to /usr.
+# kde-base packages go into KDE4 installation directory (KDEDIR) by default.
+# No matter the PREFIX, package will be built agains KDE installed in KDEDIR.
# @FUNCTION: kde4-base_pkg_setup
# @DESCRIPTION:
-# Adds flags needed by all of KDE 4 to $QT4_BUILT_WITH_USE_CHECK. Uses
-# kde4-functions_check_use from kde4-functions.eclass to print appropriate
-# errors and die if any required flags listed in $QT4_BUILT_WITH_USE_CHECK or
-# $KDE4_BUILT_WITH_USE_CHECK are missing.
+# Do the basic kdeprefix KDEDIR settings and determine with which kde should
+# optional applications link
kde4-base_pkg_setup() {
debug-print-function ${FUNCNAME} "$@"
- # Don't set KDEHOME during compile, it will cause access violations
+ # QA ebuilds
+ case ${NEED_KDE} in
+ none) ewarn "QA Notice: using deprecated NEED_KDE variable, use KDE_REQUIRED=\"never\" or KDE_REQUIRED=\"optional\" instead. You may want to override KDE_MINIMAL as well (default is KDE_MINIMAL=\"${KDE_MINIMAL}\")." ;;
+ *) [[ -n ${NEED_KDE} ]] && ewarn "QA Notice: using deprecated NEED_KDE variable, use KDE_MINIMAL instead (default is KDE_MINIMAL=\"${KDE_MINIMAL}\")." ;;
+ esac
+ [[ -z ${KDE_MINIMAL_VALID} ]] && ewarn "QA Notice: ignoring invalid KDE_MINIMAL (defaulting to ${KDE_MINIMAL})."
+
+ # Don't set KDEHOME during compilation, it will cause access violations
unset KDEHOME
- # Search for best suitable kde installation for misc kde package.
- # Computation based on NEED_KDE and KDE_MINIMAL
- [[ ${KDEBASE} != kde-base ]] && [[ ${NEED_KDE} = latest || ${NEED_KDE} = none ]] && get_latest_kdedir
-
- # Set PREFIX
- if use kdeprefix; then
- KDEDIR="/usr/kde/${_kdedir}"
- KDEDIRS="/usr/local/:/usr:${KDEDIR}"
+ if [[ ${KDEBASE} = kde-base ]]; then
+ if use kdeprefix; then
+ KDEDIR="/usr/kde/${_kdedir}"
+ else
+ KDEDIR="/usr"
+ fi
+ PREFIX="${PREFIX:-${KDEDIR}}"
else
- KDEDIR="/usr"
- KDEDIRS="/usr/local/:/usr"
+ # Determine KDEDIR by loooking for the closest match with KDE_MINIMAL
+ KDEDIR=
+ local kde_minimal_met
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ [[ -z ${kde_minimal_met} ]] && [[ ${slot} = ${KDE_MINIMAL} ]] && kde_minimal_met=1
+ if [[ -n ${kde_minimal_met} ]] && has_version "kde-base/kdelibs:${slot}"; then
+ if has_version "kde-base/kdelibs:${slot}[kdeprefix]"; then
+ KDEDIR="/usr/kde/${slot}"
+ else
+ KDEDIR="/usr"
+ fi
+ break;
+ fi
+ done
+ [[ -z KDEDIR ]] && die "Failed to determine KDEDIR!"
+ PREFIX="${PREFIX:-/usr}"
fi
- # Set the prefix based on KDEDIR
- # Make it a consequence of kdeprefix
- PREFIX=${KDEDIR}
+ # Not needed anymore
unset _kdedir
- # check if qt has correct deps
- [[ -n ${QT4_BUILT_WITH_USE_CHECK} || -n ${KDE4_BUILT_WITH_USE_CHECK[@]} ]] && \
- die "built_with_use illegal in this EAPI!"
-
- if [[ ${BUILD_TYPE} = live && -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
+ if [[ ${BUILD_TYPE} = live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
echo
elog "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
elog "Use it at your own risk."
@@ -554,27 +454,14 @@
append-cppflags -DQT_NO_DEBUG
fi
- # Enable generation of HTML handbook
- if has htmlhandbook ${IUSE//+} && use htmlhandbook; then
- ebegin "Enabling building of HTML handbook"
- mycmakeargs="${mycmakeargs} -DKDE4_ENABLE_HTMLHANDBOOK=ON"
- eend $?
- fi
-
# Build tests in src_test only, where we override this value
- mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=OFF"
+ local cmakeargs="-DKDE4_BUILD_TESTS=OFF"
# Set distribution name
- [[ ${PN} = kdelibs ]] && mycmakeargs="${mycmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
-
- # runpath linking
- mycmakeargs="${mycmakeargs} -DKDE4_USE_ALWAYS_FULL_RPATH=ON"
+ [[ ${PN} = kdelibs ]] && cmakeargs="${cmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
# Here we set the install prefix
- mycmakeargs="${mycmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
-
- # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
- use kdeprefix || mycmakeargs="${mycmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
+ cmakeargs="${cmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
# Set environment
QTEST_COLORED=1
@@ -583,20 +470,28 @@
# Hardcode path to *.pc KDE files
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig"
- # Override some environment variables
- PATH="${KDEDIR}/bin:${PATH}"
- LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
-
- # Set cmake prefixes to allow buildsystem to localize valid KDE installation when more are present
- if use kdeprefix; then
- mycmakeargs="${mycmakeargs}
- -DCMAKE_SYSTEM_INCLUDE_PATH=${KDEDIR}/include
- -DCMAKE_SYSTEM_LIBRARY_PATH=${KDEDIR}/$(get_libdir)
- -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}
- -DCMAKE_SYSTEM_PROGRAM_PATH=${KDEDIR}/bin"
+ # Shadow existing /usr installations
+ unset KDEDIRS
+
+ # Override some environment variables - only when kdeprefix is different,
+ # to not break ccache/distcc
+ if [[ ${KDEDIR} != /usr ]]; then
+ PATH="${KDEDIR}/bin:${PATH}"
+ LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
fi
- [ -e CMakeLists.txt ] && cmake-utils_src_configure
+ if has kdeprefix ${IUSE//+} && use kdeprefix; then
+ # Set cmake prefixes to allow buildsystem to localize valid KDE installation
+ # when more are present
+ cmakeargs="${cmakeargs} -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
+ else
+ # If prefix is /usr, sysconf needs to be /etc, not /usr/etc
+ cmakeargs="${cmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
+ fi
+
+ mycmakeargs="${cmakeargs} ${mycmakeargs}"
+
+ cmake-utils_src_configure
}
# @FUNCTION: kde4-base_src_compile
@@ -657,11 +552,11 @@
done
fi
- if [[ -n ${KDEBASE} && -d "${D}/usr/share/doc/${PF}" ]]; then
+ if [[ -n ${KDEBASE} ]] && [[ -d "${D}/usr/share/doc/${PF}" ]]; then
# work around bug #97196
- dodir /usr/share/doc/kde && \
- mv "${D}/usr/share/doc/${PF}" "${D}"/usr/share/doc/kde/ || \
- die "Failed to move docs to kde/ failed."
+ dodir /usr/share/doc/KDE4 && \
+ mv "${D}/usr/share/doc/${PF}" "${D}"/usr/share/doc/KDE4/ || \
+ die "Failed to move docs to KDE4/."
fi
}
1.15 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.15&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.15&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.14&r2=1.15
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- kde4-functions.eclass 9 Mar 2009 19:41:26 -0000 1.14
+++ kde4-functions.eclass 13 Apr 2009 00:02:45 -0000 1.15
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.14 2009/03/09 19:41:26 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.15 2009/04/13 00:02:45 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -24,40 +24,40 @@
# This gets set to a non-zero value when a package is considered a kde or
# koffice ebuild.
-if [[ $CATEGORY = kde-base ]]; then
+if [[ ${CATEGORY} = kde-base ]]; then
debug-print "${ECLASS}: KDEBASE ebuild recognized"
KDEBASE=kde-base
fi
# is this a koffice ebuild?
-if [[ $KMNAME = koffice || $PN = koffice ]]; then
+if [[ ${KMNAME} = koffice || ${PN} = koffice ]]; then
debug-print "${ECLASS}: KOFFICE ebuild recognized"
KDEBASE=koffice
fi
# @ECLASS-VARIABLE: KDE_SLOTS
# @DESCRIPTION:
-# The slots used by all KDE versions later than 4.0. The live-ebuilds use
-# KDE_LIVE_SLOTS instead.
-KDE_SLOTS=( kde-4 4.1 4.2 4.3 )
+# The slots used by all KDE versions later than 4.0. The live KDE releases use
+# KDE_LIVE_SLOTS instead. Values should be ordered.
+KDE_SLOTS=( "kde-4" "4.1" "4.2" "4.3" )
# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
# @DESCRIPTION:
-# The slots used by all KDE live versions.
-KDE_LIVE_SLOTS=( live )
+# The slots used by KDE live versions. Values should be ordered.
+KDE_LIVE_SLOTS=( "live" )
# @FUNCTION: buildsycoca
# @DESCRIPTION:
# Function to rebuild the KDE System Configuration Cache.
# All KDE ebuilds should run this in pkg_postinst and pkg_postrm.
-#
-# Note that kde4-base.eclass already does this.
buildsycoca() {
debug-print-function ${FUNCNAME} "$@"
-
+
if [[ -z ${ROOT%%/} && -x ${KDEDIR}/bin/kbuildsycoca4 ]]; then
- # Make sure tha cache file exists, or kbuildsycoca4 will fail
+ # Make sure tha cache file exists, writable by root and readable by
+ # others. Otherwise kbuildsycoca4 will fail.
touch "${KDEDIR}/share/kde4/services/ksycoca4"
+ chmod 644 "${KDEDIR}/share/kde4/services/ksycoca4"
# We have to unset DISPLAY and DBUS_SESSION_BUS_ADDRESS, the ones
# in the user's environment (through su [without '-']) may cause
@@ -65,11 +65,25 @@
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
- XDG_DATA_DIRS="/usr/share:${KDEDIR}/share:/usr/local/share" \
+ # Lookup in order - local, KDEDIR, /usr, do not duplicate entries btw.
+ local KDEDIRS="/usr/share"
+ [[ ${KDEDIR} != "/usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
+ XDG_DATA_DIRS="/usr/local/share:${KDEDIRS}" \
DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
fi
+
+ # fix permission for some directories
+ for x in share/config share/kde4; do
+ if [[ $(stat --format=%a /usr/${x}) != 755 || $(stat --format=%a ${KDEDIR}/${x}) != 755 ]]; then
+ ewarn "Package ${PN} is breaking ${KDEDIR}/${x} permissions."
+ ewarn "Please report this issue to gentoo bugzilla."
+ einfo "Permissions will get adjusted automatically now."
+ find /usr/${x} -type d -print0 | xargs -0 chmod 755
+ [[ ${KDEDIR} = /usr ]] || find ${KDEDIR}/${x} -type d -print0 | xargs -0 chmod 755
+ fi
+ done
}
# @FUNCTION: comment_all_add_subdirectory
@@ -105,39 +119,39 @@
local lingua sr_mess wp
# ebuild overridable linguas directory definition
- KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:=${S}/po}
- cd "$KDE_LINGUAS_DIR" || die "wrong linguas dir specified"
+ KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="${S}/po"}
+ cd "${KDE_LINGUAS_DIR}" || die "wrong linguas dir specified"
# fix all various crazy sr@Latn variations
# this part is only ease for ebuilds, so there wont be any die when this
# fail at any point
sr_mess="sr@latn sr@latin sr@Latin"
for wp in ${sr_mess}; do
- [[ -e "$wp.po" ]] && mv "$wp.po" "sr@Latn.po"
- if [[ -d "$wp" ]]; then
+ [[ -e "${wp}.po" ]] && mv "${wp}.po" "sr@Latn.po"
+ if [[ -d "${wp}" ]]; then
# move dir and fix cmakelists
- mv "$wp" "sr@Latn"
+ mv "${wp}" "sr@Latn"
sed -i \
- -e "s:$wp:sr@Latin:g" \
+ -e "s:${wp}:sr@Latin:g" \
CMakeLists.txt
fi
done
for lingua in ${KDE_LINGUAS}; do
- if [[ -e "$lingua.po" ]]; then
- mv "$lingua.po" "$lingua.po.old"
+ if [[ -e "${lingua}.po" ]]; then
+ mv "${lingua}.po" "${lingua}.po.old"
fi
done
comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
for lingua in ${LINGUAS}; do
ebegin "Enabling LANGUAGE: ${lingua}"
- if [[ -d "$lingua" ]]; then
+ if [[ -d "${lingua}" ]]; then
sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
fi
- if [[ -e "$lingua.po.old" ]]; then
- mv "$lingua.po.old" "$lingua.po"
+ if [[ -e "${lingua}.po.old" ]]; then
+ mv "${lingua}.po.old" "${lingua}.po"
fi
eend $?
done
@@ -147,7 +161,7 @@
# @DESCRIPTION:
# Determine whether we are using live ebuild or tbzs.
get_build_type() {
- if [[ $SLOT = live || $PV = 9999* ]]; then
+ if [[ ${SLOT} = live || ${PV} = 9999* ]]; then
BUILD_TYPE="live"
else
BUILD_TYPE="release"
@@ -155,65 +169,13 @@
export BUILD_TYPE
}
-# @FUNCTION: get_latest_kdedir
-# @DESCRIPTION:
-# We set up KDEDIR according to the latest KDE version installed; installing our
-# package for all available installs is just insane.
-# We can check for kdelibs because it is the most basic package; no KDE package
-# working without it. This might be changed in future.
-get_latest_kdedir() {
- case ${KDE_WANTED} in
- # note this will need to be updated as stable moves and so on
- live)
- _versions="9999 4.2.61 4.2.0 4.1.0"
- ;;
- snapshot)
- _versions="4.2.61 4.2.0 4.1.0 9999"
- ;;
- testing)
- _versions="4.2.0 4.1.0 4.2.61 9999"
- ;;
- stable)
- _versions="4.2.0 4.1.0 4.1.61 9999"
- ;;
- *) die "KDE_WANTED=${KDE_WANTED} not supported here." ;;
- esac
- # check if exists and fallback as we go
- for X in ${_versions}; do
- if has_version ">=kde-base/kdelibs-${X}"; then
- # figure out which X we are in and set it into _kdedir
- case ${X} in
- # also keep track here same for kde_wanted
- 9999)
- _kdedir="live"
- break
- ;;
- 4.3.0 | 4.2.61)
- _kdedir="4.3"
- break
- ;;
- 4.2.0 | 4.1.61)
- _kdedir="4.2"
- break
- ;;
- 4.1.0)
- _kdedir="4.1"
- break
- ;;
- esac
- fi
- done
-
- debug-print-function ${FUNCNAME} "$@" "KDE_WANTED=${KDE_WANTED} -> _kdedir=${_kdedir}"
-}
-
# @FUNCTION: migrate_store_dir
# @DESCRIPTION:
-# Migrate the remnants of ${ESVN_STORE_DIR}/KDE/ to ${ESVN_STORE_DIR}/.
-# Perform experimental split of kdebase to kdebase-apps.
+# Universal store dir migration
+# * performs split of kdebase to kdebase-apps when needed
+# * moves playground/extragear kde4-base-style to toplevel dir
migrate_store_dir() {
- local cleandir
- cleandir="${ESVN_STORE_DIR}/KDE"
+ local cleandir="${ESVN_STORE_DIR}/KDE"
if [[ -d "${cleandir}" ]]; then
ewarn "'${cleandir}' has been found. Moving contents to new location."
addwrite "${ESVN_STORE_DIR}"
@@ -232,10 +194,28 @@
# Move the rest
local pkg
for pkg in "${cleandir}"/*; do
- mv -f "${pkg}" "${ESVN_STORE_DIR}"/ || eerror "failed to move ${pkg}"
+ mv -f "${pkg}" "${ESVN_STORE_DIR}"/ || eerror "Failed to move '${pkg}'"
done
rmdir "${cleandir}" || die "Could not move obsolete KDE store dir. Please move '${cleandir}' contents to appropriate location (possibly ${ESVN_STORE_DIR}) and manually remove '${cleandir}' in order to continue."
fi
+
+ if ! hasq kde4-meta ${INHERITED}; then
+ case ${KMNAME} in
+ extragear*|playground*)
+ local svnlocalpath="${ESVN_STORE_DIR}"/"${KMNAME}"/"${PN}"
+ if [[ -d "${svnlocalpath}" ]]; then
+ local destdir="${ESVN_STORE_DIR}"/"${ESVN_PROJECT}"/"`basename "${ESVN_REPO_URI}"`"
+ ewarn "'${svnlocalpath}' has been found."
+ ewarn "Moving contents to new location: ${destdir}"
+ addwrite "${ESVN_STORE_DIR}"
+ mkdir -p "${ESVN_STORE_DIR}"/"${ESVN_PROJECT}" && mv -f "${svnlocalpath}" "${destdir}" \
+ || die "Failed to move to '${svnlocalpath}'"
+ # Try cleaning empty directories
+ rmdir "`dirname "${svnlocalpath}"`" 2> /dev/null
+ fi
+ ;;
+ esac
+ fi
}
# Functions handling KMLOADLIBS and KMSAVELIBS
@@ -246,7 +226,7 @@
save_library_dependencies() {
local depsfile="${T}/${PN}:${SLOT}"
- ebegin "Saving library dependendencies in ${depsfile##*/}"
+ ebegin "Saving library dependencies in ${depsfile##*/}"
echo "EXPORT_LIBRARY_DEPENDENCIES(\"${depsfile}\")" >> "${S}/CMakeLists.txt" || \
die "Failed to save the library dependencies."
eend $?
@@ -256,8 +236,9 @@
# @DESCRIPTION:
# Install generated CMake library dependencies to /var/lib/kde
install_library_dependencies() {
- local depsfile="$T/$PN:$SLOT"
- ebegin "Installing library dependendencies as ${depsfile##*/}"
+ local depsfile="${T}/${PN}:${SLOT}"
+
+ ebegin "Installing library dependencies as ${depsfile##*/}"
insinto /var/lib/kde
doins "${depsfile}" || die "Failed to install library dependencies."
eend $?
@@ -268,7 +249,7 @@
# Inject specified library dependencies in current package
load_library_dependencies() {
local pn i depsfile
- ebegin "Injecting library dependendencies from '${KMLOADLIBS}'"
+ ebegin "Injecting library dependencies from '${KMLOADLIBS}'"
i=0
for pn in ${KMLOADLIBS} ; do
1.17 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.17&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.17&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.16&r2=1.17
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- kde4-meta.eclass 15 Mar 2009 15:27:13 -0000 1.16
+++ kde4-meta.eclass 13 Apr 2009 00:02:45 -0000 1.17
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.16 2009/03/15 15:27:13 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.17 2009/04/13 00:02:45 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -31,6 +31,13 @@
;;
esac
+# Add khelpcenter dependency when installing
+if [[ ${PN} != khelpcenter ]] && has doc ${IUSE//+} && use doc; then
+ RDEPEND="${RDEPEND}
+ >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=]
+ "
+fi
+
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphic)
@@ -79,52 +86,30 @@
;;
koffice)
[[ ${PN} != koffice-data ]] && IUSE="debug"
- case ${PV} in
- 9999*)
- DEPEND="${DEPEND}
- !app-office/${PN}:2
- "
- ;;
- 1.9*|2*)
- DEPEND="${DEPEND}
- !app-office/${PN}:live
- "
- ;;
- esac
- DEPEND="${DEPEND}
- !app-office/${PN}:0
- !app-office/koffice:0
- !app-office/koffice-meta:0
+ RDEPEND="${RDEPEND}
+ !kdeprefix? (
+ !app-office/${PN}:0
+ !app-office/koffice:0
+ !app-office/koffice-meta:0
+ )
"
- case ${PN} in
- koffice-data)
- DEPEND="${DEPEND}
- media-libs/lcms
- "
- RDEPEND="${RDEPEND}
- media-libs/lcms
- "
- ;;
- *)
- COMMON_DEPEND="
- dev-cpp/eigen:2
- media-gfx/imagemagick[openexr?]
- media-libs/fontconfig
- media-libs/freetype:2
- "
- DEPEND="${DEPEND} ${COMMON_DEPEND}"
- RDEPEND="${RDEPEND} ${COMMON_DEPEND}"
- unset COMMON_DEPEND
- if [[ ${PN} != koffice-libs && ${PN} != koffice-data ]]; then
- DEPEND="${DEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]
- "
- RDEPEND="${RDEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}[kdeprefix=]
- "
- fi
- ;;
- esac
+ COMMON_DEPEND="
+ dev-cpp/eigen:2
+ media-gfx/imagemagick[openexr?]
+ media-libs/fontconfig
+ media-libs/freetype:2
+ "
+ DEPEND="${DEPEND} ${COMMON_DEPEND}"
+ RDEPEND="${RDEPEND} ${COMMON_DEPEND}"
+ unset COMMON_DEPEND
+ if [[ ${PN} != koffice-libs && ${PN} != koffice-data ]]; then
+ DEPEND="${DEPEND}
+ >=app-office/koffice-libs-${PV}:${SLOT}
+ "
+ RDEPEND="${RDEPEND}
+ >=app-office/koffice-libs-${PV}:${SLOT}
+ "
+ fi
;;
esac
@@ -137,10 +122,10 @@
case ${KMNAME} in
extragear*|playground*)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
+ ESVN_PROJECT="${KMNAME}"
;;
esac
;;
- *) ;;
esac
# @ECLASS-VARIABLE: KMNAME
@@ -345,7 +330,8 @@
kde4-meta_create_extractlists() {
debug-print-function ${FUNCNAME} "$@"
- if has htmlhandbook ${IUSE//+} && use htmlhandbook; then
+ # TODO change to KMEXTRA for more strict check
+ if has doc ${IUSE//+} && use doc && [[ -n ${KMMODULE} ]]; then
# We use the basename of $KMMODULE because $KMMODULE can contain
# the path to the module subdirectory.
KMEXTRA_NONFATAL="${KMEXTRA_NONFATAL} doc/${KMMODULE##*/}"
@@ -417,7 +403,7 @@
case ${KMNAME} in
kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics|kdepim)
case ${PN} in
- libkdegames|libkdeedu|marble|libkworkspace)
+ libkdegames|libkdeedu|libkworkspace)
KMEXTRA="${KMEXTRA}
cmake/modules/"
;;
@@ -609,6 +595,14 @@
;;
esac
;;
+ kdewebdev)
+ # Disable hardcoded kdepimlibs check
+ sed -e 's/find_package(KdepimLibs REQUIRED)/macro_optional_find_package(KdepimLibs)/' \
+ -e 's/find_package(LibXml2 REQUIRED)/macro_optional_find_package(LibXml2 REQUIRED)/' \
+ -e 's/find_package(LibXslt REQUIRED)/macro_optional_find_package(LibXslt REQUIRED)/' \
+ -e 's/find_package(Boost REQUIRED)/macro_optional_find_package(Boost REQUIRED)/' \
+ -i CMakeLists.txt || die "failed to disable hardcoded checks"
+ ;;
koffice)
# prevent collisions
if [[ ${PN} != koffice-data ]]; then
@@ -631,6 +625,19 @@
kde4-meta_src_configure() {
debug-print-function ${FUNCNAME} "$@"
+ # Set some cmake default values here (usually workarounds for automagic deps)
+ case ${KMNAME} in
+ kdewebdev)
+ mycmakeargs="
+ -DWITH_KdepimLibs=OFF
+ -DWITH_LibXml2=OFF
+ -DWITH_LibXslt=OFF
+ -DWITH_Boost=OFF
+ -DWITH_LibTidy=OFF
+ ${mycmakeargs}"
+ ;;
+ esac
+
kde4-base_src_configure
}
@@ -660,12 +667,7 @@
kde4-meta_src_install() {
debug-print-function $FUNCNAME "$@"
- kde4-meta_src_make_doc
- cmake-utils_src_install
-
- if [[ -n ${KMSAVELIBS} ]]; then
- install_library_dependencies
- fi
+ kde4-base_src_install
}
# @FUNCTION: kde4-meta_src_make_doc
@@ -685,11 +687,17 @@
# @FUNCTION: kde4-meta_pkg_postinst
# @DESCRIPTION:
-# Currently just calls its equivalent in kde4-base.eclass(5). Use this in split
-# ebuilds.
+# Display information about application handbook and invoke kbuildsycoca4.
kde4-meta_pkg_postinst() {
debug-print-function ${FUNCNAME} "$@"
+ if has doc ${IUSE//+} && ! use doc; then
+ echo
+ einfo "Application handbook for ${PN} has not been installed."
+ einfo "To install handbook, reemerge =${CATEGORY}/${P} with 'doc' USE flag."
+ echo
+ fi
+
kde4-base_pkg_postinst
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-05-09 13:23 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-05-09 13:23 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/05/09 13:23:15
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Few minor updates to kde4 eclasses. Introduce kde4-stable-live support.
Revision Changes Path
1.37 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.37&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.37&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.36&r2=1.37
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- kde4-base.eclass 18 Apr 2009 21:33:08 -0000 1.36
+++ kde4-base.eclass 9 May 2009 13:23:15 -0000 1.37
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.36 2009/04/18 21:33:08 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.37 2009/05/09 13:23:15 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -53,6 +53,7 @@
for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
[[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
done
+ unset slot
[[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
else
KDE_MINIMAL_VALID=1
@@ -167,11 +168,12 @@
# All other ebuild types default to -kdeprefix as before
IUSE="${IUSE} kdeprefix"
fi
- # Determine SLOT from PV
+ # Determine SLOT from PVs
case ${PV} in
+ *.9999*) SLOT="${PV/.9999*/}" ;; # stable live
4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
- *9999*) SLOT="live" ;;
+ 9999*) SLOT="live" ;; # regular live
*) die "Unsupported ${PV}" ;;
esac
_kdedir="${SLOT}"
@@ -187,6 +189,7 @@
"
fi
done
+ unset slot
;;
koffice)
@@ -230,7 +233,6 @@
fi
unset _pv _pvn
kdedepend="
- >=dev-util/cmake-2.6.2
dev-util/pkgconfig
>=sys-apps/sandbox-1.3.2
"
@@ -262,6 +264,23 @@
# koffice ebuild, the URI should be set in the ebuild itself
case ${BUILD_TYPE} in
live)
+ # Determine branch URL based on live type
+ local branch_prefix
+ case ${PV} in
+ 9999*)
+ # trunk
+ branch_prefix="trunk/KDE"
+ ;;
+ *)
+ # branch
+ branch_prefix="branches/KDE/${SLOT}"
+ # @ECLASS-VARIABLE: ESVN_PROJECT_SUFFIX
+ # @DESCRIPTION
+ # Suffix appended to ESVN_PROJECT depending on fetched branch.
+ # Defaults is empty (for -9999 = trunk), and "-${PV}" otherwise.
+ ESVN_PROJECT_SUFFIX="-${PV}"
+ ;;
+ esac
SRC_URI=""
# @ECLASS-VARIABLE: ESVN_MIRROR
# @DESCRIPTION:
@@ -270,30 +289,30 @@
ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
# Split ebuild, or extragear stuff
if [[ -n ${KMNAME} ]]; then
- ESVN_PROJECT="${KMNAME}"
+ ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
KMMODULE="${PN}"
fi
# Split kde-base/ ebuilds: (they reside in trunk/KDE)
case ${KMNAME} in
kdebase-*)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/kdebase/${KMNAME#kdebase-}"
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
;;
kdereview)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
kdesupport)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
- ESVN_PROJECT="${PN}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
;;
kde*)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${KMNAME}"
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${KMNAME}"
;;
extragear*|playground*)
# Unpack them in toplevel dir, so that they won't conflict with kde4-meta
# build packages from same svn location.
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
- ESVN_PROJECT="${PN}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
;;
koffice)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
@@ -304,8 +323,8 @@
esac
else
# kdelibs, kdepimlibs
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/KDE/${PN}"
- ESVN_PROJECT="${PN}"
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
fi
# limit syncing to 1 hour.
ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
@@ -327,6 +346,9 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
+ 4.2.85)
+ # block for normally packed unstable releases
+ SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
@@ -391,6 +413,7 @@
break;
fi
done
+ unset slot
[[ -z KDEDIR ]] && die "Failed to determine KDEDIR!"
PREFIX="${PREFIX:-/usr}"
fi
@@ -427,6 +450,7 @@
fi
base_src_prepare
+ [[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
# Save library dependencies
if [[ -n ${KMSAVELIBS} ]] ; then
@@ -463,17 +487,20 @@
QTEST_COLORED=1
QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
- # Hardcode path to *.pc KDE files
- export PKG_CONFIG_PATH="${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}${KDEDIR}/$(get_libdir)/pkgconfig"
+ # Point pkg-config path to KDE *.pc files
+ export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
# Shadow existing /usr installations
unset KDEDIRS
- # Override some environment variables - only when kdeprefix is different,
- # to not break ccache/distcc
if [[ ${KDEDIR} != /usr ]]; then
+ # Override some environment variables - only when kdeprefix is different,
+ # to not break ccache/distcc
PATH="${KDEDIR}/bin:${PATH}"
LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
+
+ # Append full RPATH
+ cmakeargs="${cmakeargs} -DCMAKE_SKIP_RPATH=OFF"
fi
if has kdeprefix ${IUSE//+} && use kdeprefix; then
1.18 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.18&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.18&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.17&r2=1.18
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- kde4-functions.eclass 19 Apr 2009 10:23:07 -0000 1.17
+++ kde4-functions.eclass 9 May 2009 13:23:15 -0000 1.18
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.17 2009/04/19 10:23:07 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.18 2009/05/09 13:23:15 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -165,7 +165,7 @@
# @DESCRIPTION:
# Determine whether we are using live ebuild or tbzs.
get_build_type() {
- if [[ ${SLOT} = live || ${PV} = 9999* ]]; then
+ if [[ ${SLOT} = live || ${PV} = *9999* ]]; then
BUILD_TYPE="live"
else
BUILD_TYPE="release"
1.18 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.18&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.18&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.17&r2=1.18
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- kde4-meta.eclass 13 Apr 2009 00:02:45 -0000 1.17
+++ kde4-meta.eclass 9 May 2009 13:23:15 -0000 1.18
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.17 2009/04/13 00:02:45 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.18 2009/05/09 13:23:15 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -122,7 +122,7 @@
case ${KMNAME} in
extragear*|playground*)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
- ESVN_PROJECT="${KMNAME}"
+ ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
;;
esac
;;
@@ -252,6 +252,11 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
+ 4.2.85)
+ # block for normally packed upstream unstable snapshots
+ KMTARPARAMS="${KMTARPARAMS} --bzip2" # bz2
+ postfix="bz2"
+ ;;
4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
KMTARPARAMS="${KMTARPARAMS} --lzma" # lzma
postfix="lzma"
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-05-28 9:47 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-05-28 9:47 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/05/28 09:47:53
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update kde4 eclasses from kde-testing. Mostly minor sinc. Introduce support for stable koffice2
Revision Changes Path
1.38 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.38&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.38&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.37&r2=1.38
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- kde4-base.eclass 9 May 2009 13:23:15 -0000 1.37
+++ kde4-base.eclass 28 May 2009 09:47:52 -0000 1.38
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.37 2009/05/09 13:23:15 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.38 2009/05/28 09:47:52 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -326,8 +326,12 @@
ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
fi
- # limit syncing to 1 hour.
- ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
+ # @ECLASS-VARIABLE: ESVN_UP_FREQ
+ # @DESCRIPTION:
+ # This variable is used for specifying the timeout between svn synces
+ # for kde-base and koffice modules. Does not affect misc apps.
+ # Default value is 1 hour.
+ [[ ${KDEBASE} = kde-base || ${KDEBASE} = koffice ]] && ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
;;
*)
if [[ -n ${KDEBASE} ]]; then
@@ -357,7 +361,12 @@
esac
;;
koffice)
- SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
+ case ${PV} in
+ 1.9*)
+ SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
+ ;;
+ *) SRC_URI="mirror://kde/stable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
+ esac
;;
esac
fi
@@ -393,9 +402,9 @@
if [[ ${KDEBASE} = kde-base ]]; then
if use kdeprefix; then
- KDEDIR="/usr/kde/${_kdedir}"
+ KDEDIR="${ROOT}usr/kde/${_kdedir}"
else
- KDEDIR="/usr"
+ KDEDIR="${ROOT}usr"
fi
PREFIX="${PREFIX:-${KDEDIR}}"
else
@@ -406,16 +415,16 @@
[[ -z ${kde_minimal_met} ]] && [[ ${slot} = ${KDE_MINIMAL} ]] && kde_minimal_met=1
if [[ -n ${kde_minimal_met} ]] && has_version "kde-base/kdelibs:${slot}"; then
if has_version "kde-base/kdelibs:${slot}[kdeprefix]"; then
- KDEDIR="/usr/kde/${slot}"
+ KDEDIR="${ROOT}usr/kde/${slot}"
else
- KDEDIR="/usr"
+ KDEDIR="${ROOT}usr"
fi
break;
fi
done
unset slot
[[ -z KDEDIR ]] && die "Failed to determine KDEDIR!"
- PREFIX="${PREFIX:-/usr}"
+ PREFIX="${PREFIX:-${ROOT}usr}"
fi
# Not needed anymore
@@ -449,8 +458,8 @@
enable_selected_linguas
fi
- base_src_prepare
[[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
+ base_src_prepare
# Save library dependencies
if [[ -n ${KMSAVELIBS} ]] ; then
@@ -477,6 +486,11 @@
# Build tests in src_test only, where we override this value
local cmakeargs="-DKDE4_BUILD_TESTS=OFF"
+ # set "real" debug mode
+ if has debug ${IUSE//+} && use debug; then
+ CMAKE_BUILD_TYPE="Debugfull"
+ fi
+
# Set distribution name
[[ ${PN} = kdelibs ]] && cmakeargs="${cmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
@@ -493,7 +507,7 @@
# Shadow existing /usr installations
unset KDEDIRS
- if [[ ${KDEDIR} != /usr ]]; then
+ if [[ ${KDEDIR} != "${ROOT}usr" ]]; then
# Override some environment variables - only when kdeprefix is different,
# to not break ccache/distcc
PATH="${KDEDIR}/bin:${PATH}"
@@ -509,7 +523,7 @@
cmakeargs="${cmakeargs} -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
else
# If prefix is /usr, sysconf needs to be /etc, not /usr/etc
- cmakeargs="${cmakeargs} -DSYSCONF_INSTALL_DIR=/etc"
+ cmakeargs="${cmakeargs} -DSYSCONF_INSTALL_DIR=${ROOT}etc"
fi
mycmakeargs="${cmakeargs} ${mycmakeargs}"
@@ -575,10 +589,10 @@
done
fi
- if [[ -n ${KDEBASE} ]] && [[ -d "${D}/usr/share/doc/${PF}" ]]; then
+ if [[ -n ${KDEBASE} ]] && [[ -d "${D}${ROOT}usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/KDE4 && \
- mv "${D}/usr/share/doc/${PF}" "${D}"/usr/share/doc/KDE4/ || \
+ mv "${D}${ROOT}usr/share/doc/${PF}" "${D}${ROOT}usr/share/doc/KDE4/" || \
die "Failed to move docs to KDE4/."
fi
}
1.19 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.19&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.19&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.18&r2=1.19
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- kde4-functions.eclass 9 May 2009 13:23:15 -0000 1.18
+++ kde4-functions.eclass 28 May 2009 09:47:52 -0000 1.19
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.18 2009/05/09 13:23:15 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.19 2009/05/28 09:47:52 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -16,7 +16,7 @@
# versions.
case ${EAPI:-0} in
2) : ;;
- *) die "No way! EAPI other than 2 is not supported for now." ;;
+ *) DEPEND="EAPI-TOO-OLD" ;;
esac
# @ECLASS-VARIABLE: KDEBASE
@@ -52,7 +52,7 @@
# All KDE ebuilds should run this in pkg_postinst and pkg_postrm.
buildsycoca() {
debug-print-function ${FUNCNAME} "$@"
-
+
if [[ -z ${ROOT%%/} && -x ${KDEDIR}/bin/kbuildsycoca4 ]]; then
# Make sure tha cache file exists, writable by root and readable by
# others. Otherwise kbuildsycoca4 will fail.
@@ -66,9 +66,9 @@
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
# Lookup in order - local, KDEDIR, /usr, do not duplicate entries btw.
- local KDEDIRS="/usr/share"
- [[ ${KDEDIR} != "/usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
- XDG_DATA_DIRS="/usr/local/share:${KDEDIRS}" \
+ local KDEDIRS="${ROOT}usr/share"
+ [[ ${KDEDIR} != "${ROOT}usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
+ XDG_DATA_DIRS="${ROOT}usr/local/share:${KDEDIRS}" \
DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
@@ -76,7 +76,7 @@
# fix permission for some directories
for x in share/config share/kde4; do
- [[ ${KDEDIR} = /usr ]] && DIRS=/usr || DIRS="/usr ${KDEDIR}"
+ [[ ${KDEDIR} = ${ROOT}usr ]] && DIRS=${ROOT}usr || DIRS="${ROOT}usr ${KDEDIR}"
for y in ${DIRS}; do
[[ -d "${y}/${x}" ]] || break # nothing to do if directory does not exist
if [[ $(stat --format=%a "${y}/${x}") != 755 ]]; then
@@ -106,7 +106,7 @@
# This is a whitespace-separated list of translations this ebuild supports.
# These translations are automatically added to IUSE. Therefore ebuilds must set
# this variable before inheriting any eclasses. To enable only selected
-# translations, ebuilds must call enable_selected_linguas(). kde4-base.eclass does
+# translations, ebuilds must call enable_selected_linguas(). kde4-{base,meta}.eclass does
# this for you.
#
# Example: KDE_LINGUAS="en_GB de nl"
@@ -122,6 +122,11 @@
enable_selected_linguas() {
local lingua sr_mess wp
+ ## This isn't working because it seems portage sets LINGUAS
+ ## even if you don't have it in make.conf
+ ## Im leaving the command that *should* work if LINGUAS was unset commented
+ # if there is no linguas defined we enable everything
+ # [[ ! ${LINGUAS+set} = set ]] && LINGUAS="*"
# ebuild overridable linguas directory definition
KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="${S}/po"}
cd "${KDE_LINGUAS_DIR}" || die "wrong linguas dir specified"
@@ -147,17 +152,19 @@
fi
done
comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
- for lingua in ${LINGUAS}; do
- ebegin "Enabling LANGUAGE: ${lingua}"
- if [[ -d "${lingua}" ]]; then
- sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
- -e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
- -i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
- fi
- if [[ -e "${lingua}.po.old" ]]; then
- mv "${lingua}.po.old" "${lingua}.po"
+ for lingua in ${KDE_LINGUAS}; do
+ if use linguas_${lingua} ; then
+ ebegin "Enabling LANGUAGE: ${lingua}"
+ if [[ -d "${lingua}" ]]; then
+ sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
+ -e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
+ -i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
+ fi
+ if [[ -e "${lingua}.po.old" ]]; then
+ mv "${lingua}.po.old" "${lingua}.po"
+ fi
+ eend $?
fi
- eend $?
done
}
@@ -243,7 +250,7 @@
local depsfile="${T}/${PN}:${SLOT}"
ebegin "Installing library dependencies as ${depsfile##*/}"
- insinto /var/lib/kde
+ insinto ${ROOT}var/lib/kde
doins "${depsfile}" || die "Failed to install library dependencies."
eend $?
}
@@ -258,7 +265,7 @@
i=0
for pn in ${KMLOADLIBS} ; do
((i++))
- depsfile="/var/lib/kde/${pn}:${SLOT}"
+ depsfile="${ROOT}var/lib/kde/${pn}:${SLOT}"
[[ -r "${depsfile}" ]] || die "Depsfile '${depsfile}' not accessible. You probably need to reinstall ${pn}."
sed -i -e "${i}iINCLUDE(\"${depsfile}\")" "${S}/CMakeLists.txt" || \
die "Failed to include library dependencies for ${pn}"
1.20 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.20&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.20&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.19&r2=1.20
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- kde4-meta.eclass 14 May 2009 16:46:53 -0000 1.19
+++ kde4-meta.eclass 28 May 2009 09:47:52 -0000 1.20
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.19 2009/05/14 16:46:53 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.20 2009/05/28 09:47:52 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -155,7 +155,7 @@
# @DESCRIPTION:
# All subdirectories listed here will be extracted, compiled & installed.
# $KMMODULE is always added to $KMEXTRA.
-# If the htmlhandbook USE-flag is set, and if this directory exists,
+# If the doc USE-flag is set, and if this directory exists,
# then "doc/$KMMODULE" is added to $KMEXTRA. In other cases, this should be
# handled in the ebuild.
# If the documentation is in a different subdirectory, you should add it to KMEXTRA.
@@ -404,7 +404,18 @@
esac
# Don't install cmake modules for split ebuilds, to avoid collisions.
case ${KMNAME} in
- kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics|kdepim)
+ kdepim)
+ # No need for unpack since 4.2.86
+ # Remove when 4.2 is wiped out from the tree
+ case ${PV} in
+ 4.1*|4.2.0|4.2.1|4.2.2|4.2.3|4.2.4|4.2.85)
+ KMCOMPILEONLY="${KMCOMPILEONLY}
+ cmake/modules/"
+ ;;
+ *) ;;
+ esac
+ ;;
+ kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics)
case ${PN} in
libkdegames|libkdeedu|libkworkspace)
KMEXTRA="${KMEXTRA}
@@ -577,8 +588,9 @@
fi
# Strip EXPORT feature section from workspace for KDE4 versions > 4.1.82
if [[ ${PN} != libkworkspace ]]; then
- sed -i -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
- CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip EXPORT section"
+ sed -i \
+ -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
fi
;;
kdebase-runtime)
@@ -601,9 +613,9 @@
kdewebdev)
# Disable hardcoded kdepimlibs check
sed -e 's/find_package(KdepimLibs REQUIRED)/macro_optional_find_package(KdepimLibs)/' \
- -e 's/find_package(LibXml2 REQUIRED)/macro_optional_find_package(LibXml2 REQUIRED)/' \
- -e 's/find_package(LibXslt REQUIRED)/macro_optional_find_package(LibXslt REQUIRED)/' \
- -e 's/find_package(Boost REQUIRED)/macro_optional_find_package(Boost REQUIRED)/' \
+ -e 's/find_package(LibXml2 REQUIRED)/macro_optional_find_package(LibXml2)/' \
+ -e 's/find_package(LibXslt REQUIRED)/macro_optional_find_package(LibXslt)/' \
+ -e 's/find_package(Boost REQUIRED)/macro_optional_find_package(Boost)/' \
-i CMakeLists.txt || die "failed to disable hardcoded checks"
;;
koffice)
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-06-04 9:29 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-06-04 9:29 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/06/04 09:29:54
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Adjust eclasses to support new handbook useflag, also keep backcompat with old doc handling (will be dropped). Depend on qt4.5 and add variable allowing to override this. Linugas handling update.
Revision Changes Path
1.39 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.39&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.39&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.38&r2=1.39
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- kde4-base.eclass 28 May 2009 09:47:52 -0000 1.38
+++ kde4-base.eclass 4 Jun 2009 09:29:54 -0000 1.39
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.38 2009/05/28 09:47:52 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.39 2009/06/04 09:29:54 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -82,9 +82,15 @@
esac
fi
+# @ECLASS-VARIABLE: QT_DEPEND
+# @DESCRIPTION:
+# Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1..
+# Currently defaults to 4.5.1
+QT_DEPEND="${QT_DEPEND:-4.5.1}"
+
# OpenGL dependencies
qtopengldepend="
- x11-libs/qt-opengl:4
+ >=x11-libs/qt-opengl-${QT_DEPEND}:4
"
case ${OPENGL_REQUIRED} in
always)
@@ -102,7 +108,7 @@
# WebKit dependencies
qtwebkitdepend="
- x11-libs/qt-webkit:4
+ >=x11-libs/qt-webkit-${QT_DEPEND}:4
"
case ${WEBKIT_REQUIRED} in
always)
@@ -157,7 +163,6 @@
# Setup packages inheriting this eclass
case ${KDEBASE} in
-
kde-base)
if [[ $BUILD_TYPE = live ]]; then
# Disable tests for live ebuilds
@@ -191,13 +196,11 @@
done
unset slot
;;
-
koffice)
SLOT="2"
_pv="-${KDE_MINIMAL}"
_pvn="${_pv}"
;;
-
*)
_pv="-${KDE_MINIMAL}"
_pvn="${_pv}"
@@ -211,13 +214,13 @@
x11-libs/libXext
x11-libs/libXt
x11-libs/libXxf86vm
- x11-libs/qt-core:4[qt3support,ssl]
- x11-libs/qt-gui:4[accessibility,dbus]
- x11-libs/qt-qt3support:4[accessibility]
- x11-libs/qt-script:4
- x11-libs/qt-sql:4[qt3support]
- x11-libs/qt-svg:4
- x11-libs/qt-test:4
+ >=x11-libs/qt-core-${QT_DEPEND}:4[qt3support,ssl]
+ >=x11-libs/qt-gui-${QT_DEPEND}:4[accessibility,dbus]
+ >=x11-libs/qt-qt3support-${QT_DEPEND}:4[accessibility]
+ >=x11-libs/qt-script-${QT_DEPEND}:4
+ >=x11-libs/qt-sql-${QT_DEPEND}:4[qt3support]
+ >=x11-libs/qt-svg-${QT_DEPEND}:4
+ >=x11-libs/qt-test-${QT_DEPEND}:4
"
if [[ ${PN} != kdelibs ]]; then
if [[ ${KDEBASE} = kde-base ]]; then
@@ -350,7 +353,7 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.2.85)
+ 4.2.85|4.2.90)
# block for normally packed unstable releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
@@ -611,6 +614,15 @@
einfo "Use it at your own risk."
einfo "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
echo
+ elif [[ ${BUILD_TYPE} != live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && has kdeprefix ${IUSE//+} && use kdeprefix; then
+ # warning about kdeprefix for non-live users
+ echo
+ ewarn "WARNING! You have kdeprefix useflag enabled."
+ ewarn "This setting is strongly discouraged and might lead to potential troubles"
+ ewarn "with KDE update strategies."
+ ewarn "You are using this setup at your own risk and kde team does not"
+ ewarn "take responsibilities for dead kittens."
+ echo
fi
}
1.21 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.21&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.21&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.20&r2=1.21
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- kde4-functions.eclass 31 May 2009 09:45:51 -0000 1.20
+++ kde4-functions.eclass 4 Jun 2009 09:29:54 -0000 1.21
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.20 2009/05/31 09:45:51 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.21 2009/06/04 09:29:54 scarabeus Exp $
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
1.22 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.22&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.22&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.21&r2=1.22
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- kde4-meta.eclass 29 May 2009 10:29:10 -0000 1.21
+++ kde4-meta.eclass 4 Jun 2009 09:29:54 -0000 1.22
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.21 2009/05/29 10:29:10 dagger Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.22 2009/06/04 09:29:54 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -31,16 +31,21 @@
;;
esac
-# Add khelpcenter dependency when installing
-if [[ ${PN} != khelpcenter ]] && has doc ${IUSE//+} && use doc; then
+# remove this codeblock when 4.2.3 is dropped
+if [[ ${PV} = "4.2.3" ]]; then
+ [[ ${PN} != khelpcenter ]] && has doc ${IUSE//+} \
+ RDEPEND="${RDEPEND} doc? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )"
+else
+# Add khelpcenter dependency when installing handbooks
+if [[ ${PN} != khelpcenter ]] && has handbook ${IUSE//+}; then
RDEPEND="${RDEPEND}
- >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=]
+ handbook? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )
"
fi
-
+fi
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
- kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphic)
+ kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
DEPEND="${DEPEND}
>=kde-base/qimageblitz-0.0.4
"
@@ -66,7 +71,7 @@
>=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
"
case ${PN} in
- akregator|kaddressbook|kjots|kmail|kmobiletools|knode|knotes|korganizer|ktimetracker)
+ akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
IUSE="+kontact"
RDEPEND="${RDEPEND}
kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )
@@ -160,7 +165,7 @@
# @DESCRIPTION:
# All subdirectories listed here will be extracted, compiled & installed.
# $KMMODULE is always added to $KMEXTRA.
-# If the doc USE-flag is set, and if this directory exists,
+# If the handbook USE-flag is set, and if this directory exists,
# then "doc/$KMMODULE" is added to $KMEXTRA. In other cases, this should be
# handled in the ebuild.
# If the documentation is in a different subdirectory, you should add it to KMEXTRA.
@@ -255,7 +260,7 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
- 4.2.85)
+ 4.2.85|4.2.90)
# block for normally packed upstream unstable snapshots
KMTARPARAMS="${KMTARPARAMS} --bzip2" # bz2
postfix="bz2"
@@ -339,11 +344,18 @@
debug-print-function ${FUNCNAME} "$@"
# TODO change to KMEXTRA for more strict check
- if has doc ${IUSE//+} && use doc && [[ -n ${KMMODULE} ]]; then
+ # remvove 4.2.3 check when dropped
+ if [[ ${PV} = "4.2.3" ]]; then
+ if has doc ${IUSE//+} && use doc && [[ -n ${KMMODULE} ]]; then
+ KMEXTRA_NONFATAL="${KMEXTRA_NONFATAL} doc/${KMMODULE##*/}"
+ fi
+ else
+ if has handbook ${IUSE//+} && use handbook && [[ -n ${KMMODULE} ]]; then
# We use the basename of $KMMODULE because $KMMODULE can contain
# the path to the module subdirectory.
KMEXTRA_NONFATAL="${KMEXTRA_NONFATAL} doc/${KMMODULE##*/}"
fi
+ fi
# Add some CMake-files to KMEXTRACTONLY.
# Note that this actually doesn't include KMEXTRA handling.
@@ -711,10 +723,10 @@
kde4-meta_pkg_postinst() {
debug-print-function ${FUNCNAME} "$@"
- if has doc ${IUSE//+} && ! use doc; then
+ if has handbook ${IUSE//+} && ! use handbook; then
echo
einfo "Application handbook for ${PN} has not been installed."
- einfo "To install handbook, reemerge =${CATEGORY}/${P} with 'doc' USE flag."
+ einfo "To install handbook, reemerge =${CATEGORY}/${P} with 'handbook' USE flag."
echo
fi
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-08-03 21:59 Alex Alexander (wired)
0 siblings, 0 replies; 22+ messages in thread
From: Alex Alexander (wired) @ 2009-08-03 21:59 UTC (permalink / raw
To: gentoo-commits
wired 09/08/03 21:59:53
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
synced kde4 eclasses with new ones from kde-testing overlay
Revision Changes Path
1.42 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.42&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.42&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.41&r2=1.42
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- kde4-base.eclass 5 Jun 2009 09:48:46 -0000 1.41
+++ kde4-base.eclass 3 Aug 2009 21:59:53 -0000 1.42
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.41 2009/06/05 09:48:46 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.42 2009/08/03 21:59:53 wired Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -61,11 +61,11 @@
# @ECLASS-VARIABLE: KDE_MINIMAL
# @DESCRIPTION:
-# This wariable is used when KDE_REQUIRED is set, to specify required KDE minimal
+# This variable is used when KDE_REQUIRED is set, to specify required KDE minimal
# version for apps to work. Currently defaults to 4.2
# One may override this variable to raise version requirements.
# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
-# Note that for kde-base packages is fixed to ${SLOT}.
+# Note that it is fixed to ${SLOT} for kde-base packages.
KDE_MINIMAL="${KDE_MINIMAL:-4.2}"
# Fallback behaviour (for now)
@@ -94,13 +94,11 @@
"
case ${OPENGL_REQUIRED} in
always)
- COMMONDEPEND="${COMMONDEPEND} ${qtopengldepend}"
+ COMMONDEPEND+=" ${qtopengldepend}"
;;
optional)
- IUSE="${IUSE} opengl"
- COMMONDEPEND="${COMMONDEPEND}
- opengl? ( ${qtopengldepend} )
- "
+ IUSE+=" opengl"
+ COMMONDEPEND+=" opengl? ( ${qtopengldepend} )"
;;
*) ;;
esac
@@ -112,13 +110,11 @@
"
case ${WEBKIT_REQUIRED} in
always)
- COMMONDEPEND="${COMMONDEPEND} ${qtwebkitdepend}"
+ COMMONDEPEND+=" ${qtwebkitdepend}"
;;
optional)
- IUSE="${IUSE} webkit"
- COMMONDEPEND="${COMMONDEPEND}
- webkit? ( ${qtwebkitdepend} )
- "
+ IUSE+=" webkit"
+ COMMONDEPEND+=" webkit? ( ${qtwebkitdepend} )"
;;
*) ;;
esac
@@ -130,52 +126,32 @@
"
case ${CPPUNIT_REQUIRED} in
always)
- DEPEND="${DEPEND} ${cppuintdepend}"
+ DEPEND+=" ${cppuintdepend}"
;;
optional)
- IUSE="${IUSE} test"
- DEPEND="${DEPEND}
- test? ( ${cppuintdepend} )
- "
+ IUSE+=" test"
+ DEPEND+=" test? ( ${cppuintdepend} )"
;;
*) ;;
esac
unset cppuintdepend
-# DEPRECATED block
-if [[ ${NEED_KDE} != "none" ]]; then
- # localization deps
- # DISABLED UNTIL PMS decide correct approach :(
- if [[ -n ${KDE_LINGUAS} ]]; then
- LNG_DEP=""
- for _lng in ${KDE_LINGUAS}; do
- # there must be or due to issue if lingua is not present in kde-l10n so
- # it wont die but pick kde-l10n as-is.
- LNG_DEP="${LNG_DEP}
- || (
- kde-base/kde-l10n[linguas_${_lng},kdeprefix=]
- kde-base/kde-l10n[kdeprefix=]
- )
- "
- done
- fi
-fi # NEED_KDE != NONE block
-
# Setup packages inheriting this eclass
case ${KDEBASE} in
kde-base)
if [[ $BUILD_TYPE = live ]]; then
# Disable tests for live ebuilds
- RESTRICT="${RESTRICT} test"
+ RESTRICT+=" test"
# Live ebuilds in kde-base default to kdeprefix by default
- IUSE="${IUSE} +kdeprefix"
+ IUSE+=" +kdeprefix"
else
# All other ebuild types default to -kdeprefix as before
- IUSE="${IUSE} kdeprefix"
+ IUSE+=" kdeprefix"
fi
# Determine SLOT from PVs
case ${PV} in
*.9999*) SLOT="${PV/.9999*/}" ;; # stable live
+ 4.4* | 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*) SLOT="4.4" ;;
4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
9999*) SLOT="live" ;; # regular live
@@ -186,12 +162,10 @@
_pvn="-${PV}"
# Block installation of other SLOTS unless kdeprefix
- for slot in ${KDE_SLOTS[@]}; do
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
# Block non kdeprefix ${PN} on other slots
if [[ ${SLOT} != ${slot} ]]; then
- RDEPEND="${RDEPEND}
- !kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )
- "
+ RDEPEND+=" !kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )"
fi
done
unset slot
@@ -211,9 +185,6 @@
# KDE dependencies
kdecommondepend="
dev-lang/perl
- x11-libs/libXext
- x11-libs/libXt
- x11-libs/libXxf86vm
>=x11-libs/qt-core-${QT_DEPEND}:4[qt3support,ssl]
>=x11-libs/qt-gui-${QT_DEPEND}:4[accessibility,dbus]
>=x11-libs/qt-qt3support-${QT_DEPEND}:4[accessibility]
@@ -221,15 +192,20 @@
>=x11-libs/qt-sql-${QT_DEPEND}:4[qt3support]
>=x11-libs/qt-svg-${QT_DEPEND}:4
>=x11-libs/qt-test-${QT_DEPEND}:4
+ !aqua? (
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ )
"
if [[ ${PN} != kdelibs ]]; then
if [[ ${KDEBASE} = kde-base ]]; then
- kdecommondepend="${kdecommondepend}
+ kdecommondepend+="
kdeprefix? ( >=kde-base/kdelibs${_pv}[kdeprefix] )
!kdeprefix? ( >=kde-base/kdelibs${_pvn}[-kdeprefix] )
"
else
- kdecommondepend="${kdecommondepend}
+ kdecommondepend+="
>=kde-base/kdelibs${_pv}
"
fi
@@ -237,19 +213,17 @@
unset _pv _pvn
kdedepend="
dev-util/pkgconfig
- >=sys-apps/sandbox-1.3.2
"
case ${KDE_REQUIRED} in
always)
- COMMONDEPEND="${COMMONDEPEND} ${kdecommondepend}"
- DEPEND="${DEPEND} ${kdedepend}"
+ IUSE+=" aqua"
+ COMMONDEPEND+=" ${kdecommondepend}"
+ DEPEND+=" ${kdedepend}"
;;
optional)
- IUSE="${IUSE} kde"
- COMMONDEPEND="${COMMONDEPEND}
- kde? ( ${kdecommondepend} )"
- DEPEND="${DEPEND}
- kde? ( ${kdedepend} )"
+ IUSE+=" aqua kde"
+ COMMONDEPEND+=" kde? ( ${kdecommondepend} )"
+ DEPEND+=" kde? ( ${kdedepend} )"
;;
*) ;;
esac
@@ -260,8 +234,9 @@
debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: RDEPEND (only) is ${RDEPEND}"
# Accumulate dependencies set by this eclass
-DEPEND="${DEPEND} ${COMMONDEPEND}"
-RDEPEND="${RDEPEND} ${COMMONDEPEND}"
+DEPEND+=" ${COMMONDEPEND}"
+RDEPEND+=" ${COMMONDEPEND}"
+unset COMMONDEPEND
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
# koffice ebuild, the URI should be set in the ebuild itself
@@ -301,6 +276,9 @@
kdebase-*)
ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
;;
+ kdelibs-*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdelibs/${KMNAME#kdelibs-}"
+ ;;
kdereview)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
@@ -353,7 +331,12 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.2.85|4.2.90)
+ 4.3.85 | 4.3.90 | 4.3.95 | 4.3.96)
+ # block for normally packed unstable releases
+ SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
+ 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*)
+ SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
+ 4.2.85 | 4.2.90 | 4.2.95 | 4.2.96 | 4.2.98)
# block for normally packed unstable releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
@@ -384,7 +367,7 @@
# @DESCRIPTION:
# Set the installation PREFIX for non kde-base applications. It defaults to /usr.
# kde-base packages go into KDE4 installation directory (KDEDIR) by default.
-# No matter the PREFIX, package will be built agains KDE installed in KDEDIR.
+# No matter the PREFIX, package will be built against KDE installed in KDEDIR.
# @FUNCTION: kde4-base_pkg_setup
# @DESCRIPTION:
@@ -405,9 +388,9 @@
if [[ ${KDEBASE} = kde-base ]]; then
if use kdeprefix; then
- KDEDIR="${ROOT}usr/kde/${_kdedir}"
+ KDEDIR="${EROOT}usr/kde/${_kdedir}"
else
- KDEDIR="${ROOT}usr"
+ KDEDIR="${EROOT}usr"
fi
PREFIX="${PREFIX:-${KDEDIR}}"
else
@@ -418,9 +401,9 @@
[[ -z ${kde_minimal_met} ]] && [[ ${slot} = ${KDE_MINIMAL} ]] && kde_minimal_met=1
if [[ -n ${kde_minimal_met} ]] && has_version "kde-base/kdelibs:${slot}"; then
if has_version "kde-base/kdelibs:${slot}[kdeprefix]"; then
- KDEDIR="${ROOT}usr/kde/${slot}"
+ KDEDIR="${EROOT}usr/kde/${slot}"
else
- KDEDIR="${ROOT}usr"
+ KDEDIR="${EROOT}usr"
fi
break;
fi
@@ -431,11 +414,15 @@
if [[ ${KDE_REQUIRED} = always ]] || { [[ ${KDE_REQUIRED} = optional ]] && use kde; }; then
[[ -z ${KDEDIR} ]] && die "Failed to determine KDEDIR!"
else
- [[ -z ${KDEDIR} ]] && KDEDIR="${ROOT}usr"
+ [[ -z ${KDEDIR} ]] && KDEDIR="${EROOT}usr"
fi
- PREFIX="${PREFIX:-${ROOT}usr}"
+ PREFIX="${PREFIX:-${EROOT}usr}"
fi
+ # Point pkg-config path to KDE *.pc files
+ export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
+ # Point to correct QT plugins path
+ QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
# Not needed anymore
unset _kdedir
@@ -459,7 +446,8 @@
# @DESCRIPTION:
# General pre-configure and pre-compile function for KDE4 applications.
# It also handles translations if KDE_LINGUAS is defined. See KDE_LINGUAS and
-# enable_selected_linguas() in kde4-functions.eclass(5) for further details.
+# enable_selected_linguas() and enable_selected_doc_linguas()
+# in kde4-functions.eclass(5) for further details.
kde4-base_src_prepare() {
debug-print-function ${FUNCNAME} "$@"
@@ -468,6 +456,12 @@
enable_selected_linguas
fi
+ # Enable/disable handbooks for kde4-base packages
+ # kde-l10n inherits kde-base but is metpackage, so no check for doc
+ if ! has kde4-meta ${INHERITED}; then
+ has handbook ${IUSE//+} && [[ ${PN} != kde-l10n ]] && enable_selected_doc_linguas
+ fi
+
[[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
base_src_prepare
@@ -502,38 +496,34 @@
fi
# Set distribution name
- [[ ${PN} = kdelibs ]] && cmakeargs="${cmakeargs} -DKDE_DISTRIBUTION_TEXT=Gentoo"
+ [[ ${PN} = kdelibs ]] && cmakeargs+=" -DKDE_DISTRIBUTION_TEXT=Gentoo"
# Here we set the install prefix
- cmakeargs="${cmakeargs} -DCMAKE_INSTALL_PREFIX=${PREFIX}"
+ cmakeargs+=" -DCMAKE_INSTALL_PREFIX=${PREFIX}"
- # Set environment
+ # Use colors
QTEST_COLORED=1
- QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
-
- # Point pkg-config path to KDE *.pc files
- export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
# Shadow existing /usr installations
unset KDEDIRS
- if [[ ${KDEDIR} != "${ROOT}usr" ]]; then
+ if [[ ${KDEDIR} != "${EROOT}usr" ]]; then
# Override some environment variables - only when kdeprefix is different,
# to not break ccache/distcc
PATH="${KDEDIR}/bin:${PATH}"
LDPATH="${KDEDIR}/$(get_libdir):${LDPATH}"
# Append full RPATH
- cmakeargs="${cmakeargs} -DCMAKE_SKIP_RPATH=OFF"
+ cmakeargs+=" -DCMAKE_SKIP_RPATH=OFF"
fi
if has kdeprefix ${IUSE//+} && use kdeprefix; then
# Set cmake prefixes to allow buildsystem to localize valid KDE installation
# when more are present
- cmakeargs="${cmakeargs} -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
+ cmakeargs+=" -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
else
# If prefix is /usr, sysconf needs to be /etc, not /usr/etc
- cmakeargs="${cmakeargs} -DSYSCONF_INSTALL_DIR=${ROOT}etc"
+ cmakeargs+=" -DSYSCONF_INSTALL_DIR=${EROOT}etc"
fi
mycmakeargs="${cmakeargs} ${mycmakeargs}"
@@ -547,7 +537,7 @@
kde4-base_src_compile() {
debug-print-function ${FUNCNAME} "$@"
- cmake-utils_src_compile
+ cmake-utils_src_compile "$@"
}
# @FUNCTION: kde4-base_src_test
@@ -557,7 +547,7 @@
debug-print-function ${FUNCNAME} "$@"
# Override this value, set in kde4-base_src_configure()
- mycmakeargs="${mycmakeargs} -DKDE4_BUILD_TESTS=ON"
+ mycmakeargs+=" -DKDE4_BUILD_TESTS=ON"
cmake-utils_src_configure
kde4-base_src_compile
@@ -599,10 +589,10 @@
done
fi
- if [[ -n ${KDEBASE} ]] && [[ -d "${D}${ROOT}usr/share/doc/${PF}" ]]; then
+ if [[ -n ${KDEBASE} ]] && [[ -d "${D}${EROOT}usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/KDE4 && \
- mv "${D}${ROOT}usr/share/doc/${PF}" "${D}${ROOT}usr/share/doc/KDE4/" || \
+ mv "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}usr/share/doc/KDE4/" || \
die "Failed to move docs to KDE4/."
fi
}
@@ -617,17 +607,17 @@
if [[ ${BUILD_TYPE} = live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
echo
- einfo "WARNING! This is an experimental live ebuild of ${KMNAME:-${PN}}"
+ einfo "WARNING! This is an experimental live ebuild of ${CATEGORY}/${PN}"
einfo "Use it at your own risk."
einfo "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
echo
elif [[ ${BUILD_TYPE} != live ]] && [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && has kdeprefix ${IUSE//+} && use kdeprefix; then
# warning about kdeprefix for non-live users
echo
- ewarn "WARNING! You have kdeprefix useflag enabled."
- ewarn "This setting is strongly discouraged and might lead to potential troubles"
+ ewarn "WARNING! You have the kdeprefix useflag enabled."
+ ewarn "This setting is strongly discouraged and might lead to potential trouble"
ewarn "with KDE update strategies."
- ewarn "You are using this setup at your own risk and kde team does not"
+ ewarn "You are using this setup at your own risk and the kde team does not"
ewarn "take responsibilities for dead kittens."
echo
fi
1.22 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.22&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.22&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.21&r2=1.22
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- kde4-functions.eclass 4 Jun 2009 09:29:54 -0000 1.21
+++ kde4-functions.eclass 3 Aug 2009 21:59:53 -0000 1.22
@@ -1,6 +1,9 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.21 2009/06/04 09:29:54 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.22 2009/08/03 21:59:53 wired Exp $
+
+# Prefix compat:
+: ${EROOT:=${ROOT}}
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -12,7 +15,7 @@
# @ECLASS-VARIABLE: EAPI
# @DESCRIPTION:
-# By default kde4 eclasses wants eapi 2 which might be redefinable to newer
+# By default kde4 eclasses want EAPI 2 which might be redefinable to newer
# versions.
case ${EAPI:-0} in
2) : ;;
@@ -39,7 +42,7 @@
# @DESCRIPTION:
# The slots used by all KDE versions later than 4.0. The live KDE releases use
# KDE_LIVE_SLOTS instead. Values should be ordered.
-KDE_SLOTS=( "kde-4" "4.1" "4.2" "4.3" )
+KDE_SLOTS=( "kde-4" "4.1" "4.2" "4.3" "4.4" )
# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
# @DESCRIPTION:
@@ -53,7 +56,21 @@
buildsycoca() {
debug-print-function ${FUNCNAME} "$@"
- if [[ -z ${ROOT%%/} && -x ${KDEDIR}/bin/kbuildsycoca4 ]]; then
+ local KDE3DIR="${EROOT}usr/kde/3.5"
+ if [[ -z ${EROOT%%/} && -x "${KDE3DIR}"/bin/kbuildsycoca ]]; then
+ # Since KDE3 is aware of shortcuts in /usr, rebuild database
+ # for KDE3 as well.
+ touch "${KDE3DIR}"/share/services/ksycoca
+ chmod 644 "${KDE3DIR}"/share/services/ksycoca
+
+ ebegin "Running kbuildsycoca to build global database"
+ XDG_DATA_DIRS="${EROOT}usr/local/share:${KDE3DIR}/share:${EROOT}usr/share" \
+ DISPLAY="" \
+ "${KDE3DIR}"/bin/kbuildsycoca --global --noincremental &> /dev/null
+ eend $?
+ fi
+
+ if [[ -z ${EROOT%%/} && -x "${KDEDIR}"/bin/kbuildsycoca4 ]]; then
# Make sure tha cache file exists, writable by root and readable by
# others. Otherwise kbuildsycoca4 will fail.
touch "${KDEDIR}/share/kde4/services/ksycoca4"
@@ -66,17 +83,17 @@
ebegin "Running kbuildsycoca4 to build global database"
# This is needed because we support multiple kde versions installed together.
# Lookup in order - local, KDEDIR, /usr, do not duplicate entries btw.
- local KDEDIRS="${ROOT}usr/share"
- [[ ${KDEDIR} != "${ROOT}usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
- XDG_DATA_DIRS="${ROOT}usr/local/share:${KDEDIRS}" \
+ local KDEDIRS="${EROOT}usr/share"
+ [[ ${KDEDIR} != "${EROOT}usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
+ XDG_DATA_DIRS="${EROOT}usr/local/share:${KDEDIRS}" \
DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
- ${KDEDIR}/bin/kbuildsycoca4 --global --noincremental &> /dev/null
+ "${KDEDIR}"/bin/kbuildsycoca4 --global --noincremental &> /dev/null
eend $?
fi
# fix permission for some directories
- for x in share/config share/kde4; do
- [[ ${KDEDIR} = ${ROOT}usr ]] && DIRS=${ROOT}usr || DIRS="${ROOT}usr ${KDEDIR}"
+ for x in share/{config,kde4}; do
+ [[ ${KDEDIR} = ${EROOT}usr ]] && DIRS=${EROOT}usr || DIRS="${EROOT}usr ${KDEDIR}"
for y in ${DIRS}; do
[[ -d "${y}/${x}" ]] || break # nothing to do if directory does not exist
if [[ $(stat --format=%a "${y}/${x}") != 755 ]]; then
@@ -97,8 +114,12 @@
# except those in cmake/.
comment_all_add_subdirectory() {
find "$@" -name CMakeLists.txt -print0 | grep -vFzZ "./cmake" | \
- xargs -0 sed -i -e '/add_subdirectory/s/^/#DONOTCOMPILE /' -e '/ADD_SUBDIRECTORY/s/^/#DONOTCOMPILE /' || \
- die "${LINENO}: Initial sed died"
+ xargs -0 sed -i \
+ -e '/^[[:space:]]*add_subdirectory/s/^/#DONOTCOMPILE /' \
+ -e '/^[[:space:]]*ADD_SUBDIRECTORY/s/^/#DONOTCOMPILE /' \
+ -e '/^[[:space:]]*macro_optional_add_subdirectory/s/^/#DONOTCOMPILE /' \
+ -e '/^[[:space:]]*MACRO_OPTIONAL_ADD_SUBDIRECTORY/s/^/#DONOTCOMPILE /' \
+ || die "${LINENO}: Initial sed died"
}
# @ECLASS-VARIABLE: KDE_LINGUAS
@@ -120,19 +141,22 @@
# the package (see KDE_LINGUAS). By default, translations are found in "${S}"/po
# but this default can be overridden by defining KDE_LINGUAS_DIR.
enable_selected_linguas() {
- local lingua sr_mess wp
+ debug-print-function ${FUNCNAME} "$@"
+
+ local lingua linguas sr_mess wp
- ## This isn't working because it seems portage sets LINGUAS
- ## even if you don't have it in make.conf
- ## Im leaving the command that *should* work if LINGUAS was unset commented
# if there is no linguas defined we enable everything
if ! $(env | grep -q "^LINGUAS="); then
return 0
fi
- # [[ ! ${LINGUAS+set} = set ]] && LINGUAS="*"
- # ebuild overridable linguas directory definition
- KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="${S}/po"}
- cd "${KDE_LINGUAS_DIR}" || die "wrong linguas dir specified"
+
+ # @ECLASS-VARIABLE: KDE_LINGUAS_DIR
+ # @DESCRIPTION:
+ # Specified folder where application translations are located.
+ KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="po"}
+ [[ -d "${KDE_LINGUAS_DIR}" ]] || die "wrong linguas dir specified"
+ comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
+ pushd "${KDE_LINGUAS_DIR}" > /dev/null
# fix all various crazy sr@Latn variations
# this part is only ease for ebuilds, so there wont be any die when this
@@ -154,21 +178,74 @@
mv "${lingua}.po" "${lingua}.po.old"
fi
done
- comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
+
for lingua in ${KDE_LINGUAS}; do
if use linguas_${lingua} ; then
- ebegin "Enabling LANGUAGE: ${lingua}"
if [[ -d "${lingua}" ]]; then
+ linguas="${linguas} ${lingua}"
sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
-i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
fi
if [[ -e "${lingua}.po.old" ]]; then
+ linguas="${linguas} ${lingua}"
mv "${lingua}.po.old" "${lingua}.po"
fi
- eend $?
fi
done
+ [[ -n "${linguas}" ]] && einfo "Enabling languages: ${linguas}"
+
+ popd > /dev/null
+}
+
+# @FUNCTION: enable_selected_doc_linguas
+# @DESCRIPTION:
+# Enable only selected linguas enabled doc folders.
+enable_selected_doc_linguas() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ # if there is no linguas defined we enable everything
+ if ! $(env | grep -q "^LINGUAS="); then
+ return 0
+ fi
+
+ # @ECLASS-VARIABLE: KDE_DOC_DIRS
+ # @DESCRIPTION:
+ # Variable specifying whitespace separated patterns for documentation locations.
+ # Default is "doc/%lingua"
+ KDE_DOC_DIRS=${KDE_DOC_DIRS:='doc/%lingua'}
+ local linguas
+ for pattern in ${KDE_DOC_DIRS}; do
+
+ local handbookdir=`dirname ${pattern}`
+ local translationdir=`basename ${pattern}`
+ # Do filename pattern supplied, treat as directory
+ [[ "${handbookdir}" = '.' ]] && handbookdir=${translationdir} && translationdir=
+ [[ -d "${handbookdir}" ]] || die 'wrong doc dir specified'
+
+ if ! use handbook; then
+ # Disable whole directory
+ sed -e "/add_subdirectory[[:space:]]*([[:space:]]*${handbookdir}[[:space:]]*)/s/^/#DONOTCOMPILE /" \
+ -e "/ADD_SUBDIRECTORY[[:space:]]*([[:space:]]*${handbookdir}[[:space:]]*)/s/^/#DONOTCOMPILE /" \
+ -i CMakeLists.txt || die 'failed to comment out all handbooks'
+ else
+ # Disable subdirectories recursively
+ comment_all_add_subdirectory "${handbookdir}"
+ # Add requested translations
+ local lingua
+ for lingua in en ${KDE_LINGUAS}; do
+ if [[ ${lingua} = 'en' ]] || use linguas_${lingua}; then
+ if [[ -d "${handbookdir}/${translationdir//%lingua/${lingua}}" ]]; then
+ sed -e "/add_subdirectory[[:space:]]*([[:space:]]*${translationdir//%lingua/${lingua}}/s/^#DONOTCOMPILE //" \
+ -e "/ADD_SUBDIRECTORY[[:space:]]*([[:space:]]*${translationdir//%lingua/${lingua}}/s/^#DONOTCOMPILE //" \
+ -i "${handbookdir}"/CMakeLists.txt && ! has ${lingua} ${linguas} && linguas="${linguas} ${lingua}"
+ fi
+ fi
+ done
+ fi
+
+ done
+ [[ -n "${linguas}" ]] && einfo "Enabling handbook translations:${linguas}"
}
# @FUNCTION: get_build_type
@@ -253,7 +330,7 @@
local depsfile="${T}/${PN}:${SLOT}"
ebegin "Installing library dependencies as ${depsfile##*/}"
- insinto ${ROOT}var/lib/kde
+ insinto ${EROOT}var/lib/kde
doins "${depsfile}" || die "Failed to install library dependencies."
eend $?
}
@@ -268,7 +345,7 @@
i=0
for pn in ${KMLOADLIBS} ; do
((i++))
- depsfile="${ROOT}var/lib/kde/${pn}:${SLOT}"
+ depsfile="${EROOT}var/lib/kde/${pn}:${SLOT}"
[[ -r "${depsfile}" ]] || die "Depsfile '${depsfile}' not accessible. You probably need to reinstall ${pn}."
sed -i -e "${i}iINCLUDE(\"${depsfile}\")" "${S}/CMakeLists.txt" || \
die "Failed to include library dependencies for ${pn}"
1.23 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.23&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.23&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.22&r2=1.23
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- kde4-meta.eclass 4 Jun 2009 09:29:54 -0000 1.22
+++ kde4-meta.eclass 3 Aug 2009 21:59:53 -0000 1.23
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.22 2009/06/04 09:29:54 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.23 2009/08/03 21:59:53 wired Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -31,96 +31,64 @@
;;
esac
-# remove this codeblock when 4.2.3 is dropped
-if [[ ${PV} = "4.2.3" ]]; then
- [[ ${PN} != khelpcenter ]] && has doc ${IUSE//+} \
- RDEPEND="${RDEPEND} doc? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )"
-else
# Add khelpcenter dependency when installing handbooks
if [[ ${PN} != khelpcenter ]] && has handbook ${IUSE//+}; then
- RDEPEND="${RDEPEND}
- handbook? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )
- "
-fi
+ RDEPEND+=" handbook? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )"
fi
+
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
- DEPEND="${DEPEND}
- >=kde-base/qimageblitz-0.0.4
- "
- RDEPEND="${RDEPEND}
- >=kde-base/qimageblitz-0.0.4
- "
+ COMMONDEPEND+=" >=kde-base/qimageblitz-0.0.4"
;;
kdenetwork)
- DEPEND="${DEPEND}
- >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
- "
- RDEPEND="${RDEPEND}
- >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
- "
+ COMMONDEPEND+=" >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]"
;;
- kdepim)
- DEPEND="${DEPEND}
- dev-libs/boost
- >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
- "
- RDEPEND="${RDEPEND}
+ kdepim|kdepim-runtime)
+ COMMONDEPEND+="
dev-libs/boost
>=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
"
case ${PN} in
akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
- IUSE="+kontact"
- RDEPEND="${RDEPEND}
- kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )
- "
+ IUSE+=" +kontact"
+ RDEPEND+=" kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
;;
esac
;;
kdegames)
if [[ ${PN} != libkdegames ]]; then
- DEPEND="${DEPEND}
- >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]
- "
- RDEPEND="${RDEPEND}
- >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=]
- "
+ COMMONDEPEND+=" >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=] "
fi
;;
koffice)
- [[ ${PN} != koffice-data ]] && IUSE="debug"
- RDEPEND="${RDEPEND}
+ [[ ${PN} != koffice-data ]] && IUSE+=" debug"
+ RDEPEND+="
!app-office/${PN}:0
!app-office/koffice:0
!app-office/koffice-meta:0
"
if has openexr ${IUSE//+}; then
- COMMON_DEPEND="media-gfx/imagemagick[openexr?]"
+ COMMONDEPEND+=" media-gfx/imagemagick[openexr?]"
else
- COMMON_DEPEND="media-gfx/imagemagick"
+ COMMONDEPEND+=" media-gfx/imagemagick"
fi
- COMMON_DEPEND="${COMMON_DEPEND}
+ COMMONDEPEND+="
dev-cpp/eigen:2
media-libs/fontconfig
media-libs/freetype:2
"
- DEPEND="${DEPEND} ${COMMON_DEPEND}"
- RDEPEND="${RDEPEND} ${COMMON_DEPEND}"
- unset COMMON_DEPEND
if [[ ${PN} != koffice-libs && ${PN} != koffice-data ]]; then
- DEPEND="${DEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}
- "
- RDEPEND="${RDEPEND}
- >=app-office/koffice-libs-${PV}:${SLOT}
- "
+ COMMONDEPEND+=" >=app-office/koffice-libs-${PV}:${SLOT}"
fi
;;
esac
+DEPEND+=" ${COMMONDEPEND}"
+RDEPEND+=" ${COMMONDEPEND}"
+unset COMMONDEPEND
+
debug-print "line ${LINENO} ${ECLASS}: DEPEND ${DEPEND} - after metapackage-specific dependencies"
debug-print "line ${LINENO} ${ECLASS}: RDEPEND ${RDEPEND} - after metapackage-specific dependencies"
@@ -260,27 +228,27 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
- 4.2.85|4.2.90)
+ 4.3.85 | 4.3.90 | 4.3.95 | 4.3.96 | 4.3.98 | 4.2.85 | 4.2.90 | 4.2.95 | 4.2.96 | 4.2.98)
# block for normally packed upstream unstable snapshots
- KMTARPARAMS="${KMTARPARAMS} --bzip2" # bz2
+ KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
;;
- 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
- KMTARPARAMS="${KMTARPARAMS} --lzma" # lzma
+ 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6* | 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*)
+ KMTARPARAMS+=" --lzma" # lzma
postfix="lzma"
;;
*)
- KMTARPARAMS="${KMTARPARAMS} --bzip2" # bz2
+ KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
;;
esac
case ${KMNAME} in
kdebase-apps)
- # kdebase/apps -> kdebasa-apps
+ # kdebase/apps -> kdebase-apps
tarball="kdebase-${PV}.tar.${postfix}"
# Go one level deeper for kdebase-apps in tarballs
moduleprefix=apps/
- KMTARPARAMS="${KMTARPARAMS} --transform=s|apps/||"
+ KMTARPARAMS+=" --transform=s|apps/||"
;;
*)
# Create tarball name from module name (this is the default)
@@ -288,7 +256,7 @@
;;
esac
- # Full patch to source tarball
+ # Full path to source tarball
tarfile="${DISTDIR}/${tarball}"
# Detect real toplevel dir from tarball name - it will be used upon extraction
@@ -302,9 +270,9 @@
for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake \
AUTHORS COPYING INSTALL README NEWS ChangeLog
do
- extractlist="${extractlist} ${topdir}${moduleprefix}${f}"
+ extractlist+=" ${topdir}${moduleprefix}${f}"
done
- extractlist="${extractlist} $(__list_needed_subdirectories)"
+ extractlist+=" $(__list_needed_subdirectories)"
pushd "${WORKDIR}" > /dev/null
[[ -n ${KDE4_STRICTER} ]] && echo tar -xpf "${tarfile}" ${KMTARPARAMS} ${extractlist} >&2
@@ -344,17 +312,11 @@
debug-print-function ${FUNCNAME} "$@"
# TODO change to KMEXTRA for more strict check
- # remvove 4.2.3 check when dropped
- if [[ ${PV} = "4.2.3" ]]; then
- if has doc ${IUSE//+} && use doc && [[ -n ${KMMODULE} ]]; then
- KMEXTRA_NONFATAL="${KMEXTRA_NONFATAL} doc/${KMMODULE##*/}"
- fi
- else
if has handbook ${IUSE//+} && use handbook && [[ -n ${KMMODULE} ]]; then
# We use the basename of $KMMODULE because $KMMODULE can contain
# the path to the module subdirectory.
- KMEXTRA_NONFATAL="${KMEXTRA_NONFATAL} doc/${KMMODULE##*/}"
- fi
+ KMEXTRA_NONFATAL+="
+ doc/${KMMODULE##*/}"
fi
# Add some CMake-files to KMEXTRACTONLY.
@@ -362,21 +324,21 @@
# In those cases you should care to add the relevant files to KMEXTRACTONLY
case ${KMNAME} in
kdebase)
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
apps/config-apps.h.cmake
apps/ConfigureChecks.cmake"
;;
kdebase-apps)
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
config-apps.h.cmake
ConfigureChecks.cmake"
;;
kdebase-runtime)
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
config-runtime.h.cmake"
;;
kdebase-workspace)
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
config-unix.h.cmake
ConfigureChecks.cmake
config-workspace.h.cmake
@@ -386,37 +348,53 @@
;;
kdegames)
if [[ ${PN} != libkdegames ]]; then
- KMEXTRACTONLY="${KMEXTRACTONLY}
- libkdegames"
+ KMEXTRACTONLY+="
+ libkdegames/"
fi
;;
kdepim)
if [[ ${PN} != libkdepim ]]; then
- KMEXTRACTONLY="${KMEXTRACTONLY}
- libkdepim"
+ KMEXTRACTONLY+="
+ libkdepim/"
fi
case ${SLOT} in
- 4.3|live)
- KMEXTRACTONLY="${KMEXTRACTONLY}
- kdepim-version.h
- config-enterprise.h.cmake"
+ 4.3|4.4|live)
+ KMEXTRACTONLY+="
+ kdepim-version.h
+ config-enterprise.h.cmake"
;;
esac
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
kleopatra/ConfigureChecks.cmake"
if has kontact ${IUSE//+} && use kontact; then
- KMEXTRA="${KMEXTRA} kontact/plugins/${PLUGINNAME:-${PN}}"
- KMEXTRACTONLY="${KMEXTRACTONLY} kontactinterfaces/"
+ KMEXTRA+="
+ kontact/plugins/${PLUGINNAME:-${PN}}/"
+ KMEXTRACTONLY+="
+ kontactinterfaces/"
fi
;;
+ kdeutils)
+ case ${SLOT} in
+ 4.3|4.4|live)
+ KMEXTRACTONLY+="
+ kdeutils-version.h"
+ ;;
+ esac
+ ;;
koffice)
- KMEXTRACTONLY="${KMEXTRACTONLY}
+ KMEXTRACTONLY+="
config-endian.h.cmake
filters/config-filters.h.cmake
- config-openctl.h.cmake
config-openexr.h.cmake
config-opengl.h.cmake
- config-prefix.h.cmake"
+ config-prefix.h.cmake
+ "
+ case ${PV} in
+ 2.0.*)
+ KMEXTRACTONLY+="
+ config-openctl.h.cmake"
+ ;;
+ esac
;;
esac
# Don't install cmake modules for split ebuilds, to avoid collisions.
@@ -426,20 +404,20 @@
# Remove when 4.2 is wiped out from the tree
case ${PV} in
4.1*|4.2.0|4.2.1|4.2.2|4.2.3|4.2.4|4.2.85)
- KMCOMPILEONLY="${KMCOMPILEONLY}
+ KMCOMPILEONLY+="
cmake/modules/"
- ;;
+ ;;
*) ;;
esac
;;
kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics)
case ${PN} in
libkdegames|libkdeedu|libkworkspace)
- KMEXTRA="${KMEXTRA}
+ KMEXTRA+="
cmake/modules/"
;;
*)
- KMCOMPILEONLY="${KMCOMPILEONLY}
+ KMCOMPILEONLY+="
cmake/modules/"
;;
esac
@@ -454,12 +432,12 @@
# We expand KMEXTRA by adding CMakeLists.txt files
kmextra="${KMEXTRA}"
- [[ ${1} != fatal ]] && kmextra="${kmextra} ${KMEXTRA_NONFATAL}"
+ [[ ${1} != fatal ]] && kmextra+=" ${KMEXTRA_NONFATAL}"
for i in ${kmextra}; do
- kmextra_expanded="${kmextra_expanded} ${i}"
+ kmextra_expanded+=" ${i}"
j=$(dirname ${i})
while [[ ${j} != "." ]]; do
- kmextra_expanded="${kmextra_expanded} ${j}/CMakeLists.txt";
+ kmextra_expanded+=" ${j}/CMakeLists.txt";
j=$(dirname ${j})
done
done
@@ -469,17 +447,17 @@
kmmodule_expanded="${KMMODULE}"
j=$(dirname ${KMMODULE})
while [[ ${j} != "." ]]; do
- kmmodule_expanded="${kmmodule_expanded} ${j}/CMakeLists.txt";
+ kmmodule_expanded+=" ${j}/CMakeLists.txt";
j=$(dirname ${j})
done
fi
# Expand KMCOMPILEONLY
for i in ${KMCOMPILEONLY}; do
- kmcompileonly_expanded="${kmcompileonly_expanded} ${i}"
+ kmcompileonly_expanded+=" ${i}"
j=$(dirname ${i})
while [[ ${j} != "." ]]; do
- kmcompileonly_expanded="${kmcompileonly_expanded} ${j}/CMakeLists.txt";
+ kmcompileonly_expanded+=" ${j}/CMakeLists.txt";
j=$(dirname ${j})
done
done
@@ -493,7 +471,7 @@
for i in ${kmmodule_expanded} ${kmextra_expanded} ${kmcompileonly_expanded} \
${KMEXTRACTONLY}
do
- extractlist="${extractlist} ${topdir}${moduleprefix}${i}"
+ extractlist+=" ${topdir}${moduleprefix}${i}"
done
echo ${extractlist}
@@ -607,7 +585,7 @@
if [[ ${PN} != libkworkspace ]]; then
sed -i \
-e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
- CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
fi
;;
kdebase-runtime)
@@ -641,9 +619,18 @@
sed -i -e '/install(.*FindKOfficeLibs.cmake/,/)/ d' \
"${S}"/cmake/modules/CMakeLists.txt || \
die "${LINENO}: sed died in collision prevention section"
- sed -i -n -e '1h;1!H;${g;s/install(.\+config-openexr.h.\+)//;p}' \
- "${S}"/CMakeLists.txt || \
- die "${LINENO}: sed died in collision prevention section"
+ case ${PV} in
+ 2.0.*)
+ sed -i -n -e '1h;1!H;${g;s/install(.\+config-openexr.h.\+)//;p}' \
+ "${S}"/CMakeLists.txt || \
+ die "${LINENO}: sed died in collision prevention section"
+ ;;
+ *)
+ sed -i -e '/install(.\+config-openexr\.h.\+)/d' \
+ "${S}"//CMakeLists.txt || \
+ die "${LINENO}: sed died in collision prevention section"
+ ;;
+ esac
fi
esac
@@ -680,7 +667,7 @@
kde4-meta_src_compile() {
debug-print-function ${FUNCNAME} "$@"
- kde4-base_src_compile
+ kde4-base_src_compile "$@"
}
# @FUNCTION: kde4-meta_src_test
@@ -705,7 +692,7 @@
# @FUNCTION: kde4-meta_src_make_doc
# @DESCRIPTION:
# This function searches in ${S}/${KMMODULE},
-# and tries to install "AUTHORS ChangeLog* README* NEWS todo" if these files exist.
+# and tries to install "AUTHORS ChangeLog* README* NEWS TODO" if these files exist.
kde4-meta_src_make_doc() {
debug-print-function ${FUNCNAME} "$@"
@@ -726,7 +713,7 @@
if has handbook ${IUSE//+} && ! use handbook; then
echo
einfo "Application handbook for ${PN} has not been installed."
- einfo "To install handbook, reemerge =${CATEGORY}/${P} with 'handbook' USE flag."
+ einfo "To install handbook, reemerge =${CATEGORY}/${PF} with 'handbook' USE flag."
echo
fi
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-08-20 9:18 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-08-20 9:18 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/08/20 09:18:01
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Sync eclasses with kde-testing ones.
Revision Changes Path
1.44 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.44&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.44&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.43&r2=1.44
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- kde4-base.eclass 7 Aug 2009 01:00:11 -0000 1.43
+++ kde4-base.eclass 20 Aug 2009 09:18:01 -0000 1.44
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.43 2009/08/07 01:00:11 wired Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.44 2009/08/20 09:18:01 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -13,14 +13,29 @@
# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
# eclass will fail with version older than 2.
-inherit base cmake-utils eutils kde4-functions
+# @ECLASS-VARIABLE: WANT_CMAKE
+# @DESCRIPTION:
+# Specify if cmake-utils eclass is required. Defaults to true. Please note that
+# if the variable is set otherwise src_configure/compile/install calls in ebuild
+# must be overrided (can't use the eclass ones).
+WANT_CMAKE="${WANT_CMAKE:-true}"
+if [[ ${WANT_CMAKE} = true ]]; then
+ exports="src_configure src_compile src_test src_install"
+ cmake_eclass="cmake-utils"
+else
+ exports=""
+ cmake_eclass=""
+fi
+
+inherit base ${cmake_eclass} eutils kde4-functions
get_build_type
if [[ ${BUILD_TYPE} = live ]]; then
inherit subversion
fi
-EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install pkg_postinst pkg_postrm
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare ${exports} pkg_postinst pkg_postrm
case ${KDEBASE} in
kde-base)
@@ -116,9 +131,19 @@
unset qtopengldepend
# WebKit dependencies
+case ${KDE_REQUIRED} in
+ always)
+ qtwebkitusedeps="[kde]"
+ ;;
+ optional)
+ qtwebkitusedeps="[kde?]"
+ ;;
+ *) ;;
+esac
qtwebkitdepend="
- >=x11-libs/qt-webkit-${QT_DEPEND}:4
+ >=x11-libs/qt-webkit-${QT_DEPEND}:4${qtwebkitusedeps}
"
+unset qtwebkitusedeps
case ${WEBKIT_REQUIRED} in
always)
COMMONDEPEND+=" ${qtwebkitdepend}"
@@ -173,13 +198,7 @@
_pvn="-${PV}"
# Block installation of other SLOTS unless kdeprefix
- for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
- # Block non kdeprefix ${PN} on other slots
- if [[ ${SLOT} != ${slot} ]]; then
- RDEPEND+=" !kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )"
- fi
- done
- unset slot
+ RDEPEND+=" $(block_other_slots)"
;;
koffice)
SLOT="2"
@@ -198,7 +217,7 @@
dev-lang/perl
>=x11-libs/qt-core-${QT_DEPEND}:4[qt3support,ssl]
>=x11-libs/qt-gui-${QT_DEPEND}:4[accessibility,dbus]
- >=x11-libs/qt-qt3support-${QT_DEPEND}:4[accessibility]
+ >=x11-libs/qt-qt3support-${QT_DEPEND}:4[accessibility,kde]
>=x11-libs/qt-script-${QT_DEPEND}:4
>=x11-libs/qt-sql-${QT_DEPEND}:4[qt3support]
>=x11-libs/qt-svg-${QT_DEPEND}:4
@@ -453,7 +472,7 @@
fi
}
-# @FUNCTION: kde4-base_src_compile
+# @FUNCTION: kde4-base_src_prepare
# @DESCRIPTION:
# General pre-configure and pre-compile function for KDE4 applications.
# It also handles translations if KDE_LINGUAS is defined. See KDE_LINGUAS and
@@ -468,9 +487,10 @@
fi
# Enable/disable handbooks for kde4-base packages
- # kde-l10n inherits kde-base but is metpackage, so no check for doc
+ # kde-l10n inherits kde4-base but is metpackage, so no check for doc
+ # kdelibs inherits kde4-base but handle installing the handbook itself
if ! has kde4-meta ${INHERITED}; then
- has handbook ${IUSE//+} && [[ ${PN} != kde-l10n ]] && enable_selected_doc_linguas
+ has handbook ${IUSE//+} && [[ ${PN} != kde-l10n ]] && [[ ${PN} != kdelibs ]] && enable_selected_doc_linguas
fi
[[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
@@ -603,7 +623,7 @@
if [[ -n ${KDEBASE} ]] && [[ -d "${D}${EROOT}usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/KDE4 && \
- mv "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}usr/share/doc/KDE4/" || \
+ mv -f "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}usr/share/doc/KDE4/" || \
die "Failed to move docs to KDE4/."
fi
}
1.23 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.23&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.23&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.22&r2=1.23
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- kde4-functions.eclass 3 Aug 2009 21:59:53 -0000 1.22
+++ kde4-functions.eclass 20 Aug 2009 09:18:01 -0000 1.23
@@ -1,9 +1,11 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.22 2009/08/03 21:59:53 wired Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.23 2009/08/20 09:18:01 scarabeus Exp $
# Prefix compat:
: ${EROOT:=${ROOT}}
+# Append missing trailing slash character
+[[ ${EROOT} = */ ]] || EROOT+="/"
# @ECLASS: kde4-functions.eclass
# @MAINTAINER:
@@ -352,3 +354,40 @@
done
eend $?
}
+
+# @FUNCTION: block_other_slots
+# @DESCRIPTION:
+# Create blocks for the current package in other slots when
+# installed with USE=-kdeprefix
+block_other_slots() {
+ local slot
+
+ debug-print-function ${FUNCNAME} "$@"
+
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ # Block non kdeprefix ${PN} on other slots
+ if [[ ${SLOT} != ${slot} ]]; then
+ echo "!kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )"
+ fi
+ done
+}
+
+# @FUNCTION: add_blocker
+# @DESCRIPTION:
+# Create correct RDEPEND value for blocking correct package.
+# Usefull for file-collision blocks.
+# Parameters are package and version to block.
+# add_blocker kde-base/kdelibs 4.2.4
+add_blocker() {
+ local slot
+
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ ${1} = "" || ${2} = "" ]] && die "Missing parameter"
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ # on -kdeprefix we block every slot
+ RDEPEND+=" !kdeprefix? ( !<=${1}-${2}:${slot}[-kdeprefix] )"
+ done
+ # on kdeprefix we block only our slot
+ RDEPEND+=" kdeprefix? ( !<=${1}-${2}:${SLOT}[kdeprefix] )"
+}
1.25 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.25&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.25&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.24&r2=1.25
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- kde4-meta.eclass 7 Aug 2009 01:00:11 -0000 1.24
+++ kde4-meta.eclass 20 Aug 2009 09:18:01 -0000 1.25
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.24 2009/08/07 01:00:11 wired Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.25 2009/08/20 09:18:01 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-10-06 18:02 Alexey Shvetsov (alexxy)
0 siblings, 0 replies; 22+ messages in thread
From: Alexey Shvetsov (alexxy) @ 2009-10-06 18:02 UTC (permalink / raw
To: gentoo-commits
alexxy 09/10/06 18:02:13
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
[eclass] Update kde4 eclasses
Revision Changes Path
1.46 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.46&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.46&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.45&r2=1.46
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- kde4-base.eclass 1 Sep 2009 09:32:08 -0000 1.45
+++ kde4-base.eclass 6 Oct 2009 18:02:12 -0000 1.46
@@ -1,6 +1,6 @@
# Copyright 2007-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.45 2009/09/01 09:32:08 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.46 2009/10/06 18:02:12 alexxy Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -92,7 +92,7 @@
# One may override this variable to raise version requirements.
# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
# Note that it is fixed to ${SLOT} for kde-base packages.
-KDE_MINIMAL="${KDE_MINIMAL:-4.2}"
+KDE_MINIMAL="${KDE_MINIMAL:-4.3}"
# Fallback behaviour (for now)
# TODO Remove when tree is clean
@@ -187,12 +187,20 @@
# Determine SLOT from PVs
case ${PV} in
*.9999*) SLOT="${PV/.9999*/}" ;; # stable live
- 4.4* | 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*) SLOT="4.4" ;;
- 4.3* | 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*) SLOT="4.3" ;;
- 4.2* | 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6*) SLOT="4.2" ;;
+ 4.4* | 4.3.[6-9]*) SLOT="4.4" ;;
+ 4.3*) SLOT="4.3" ;;
+ 4.2*) SLOT="4.2" ;;
9999*) SLOT="live" ;; # regular live
*) die "Unsupported ${PV}" ;;
esac
+ # This code is to prevent portage from searching GENTOO_MIRRORS for
+ # packages that will never be mirrored. (As they only will ever be in
+ # the overlay).
+ case ${PV} in
+ *9999* | 4.?.[6-9]?)
+ RESTRICT+=" mirror"
+ ;;
+ esac
KDE_MINIMAL="${SLOT}"
_kdedir="${SLOT}"
_pv="-${PV}:${SLOT}"
@@ -230,8 +238,9 @@
)
"
if [[ ${PN} != kdelibs ]]; then
- [[ ${PN} != libknotificationitem ]] && slot_is_at_least 4.3 ${KDE_MINIMAL} && local libknotificationitem_required=1
if [[ ${KDEBASE} = kde-base ]]; then
+ # libknotificationitem only when SLOT is 4.3
+ [[ ${PN} != libknotificationitem ]] && [[ ${SLOT} = 4.3 ]] && local libknotificationitem_required=1
kdecommondepend+="
kdeprefix? ( >=kde-base/kdelibs${_pv}[kdeprefix] )
!kdeprefix? ( >=kde-base/kdelibs${_pvn}[-kdeprefix] )
@@ -245,10 +254,6 @@
kdecommondepend+="
>=kde-base/kdelibs${_pv}
"
- [[ -n ${libknotificationitem_required} ]] && \
- kdecommondepend+="
- >=kde-base/libknotificationitem${_pv}
- "
fi
fi
unset _pv _pvn
@@ -372,29 +377,19 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.3.85 | 4.3.90 | 4.3.95 | 4.3.96)
- # block for normally packed unstable releases
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
- 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*)
- SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
- 4.2.85 | 4.2.90 | 4.2.95 | 4.2.96 | 4.2.98)
+ 4.3.85 | 4.3.9[0568])
# block for normally packed unstable releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
- 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6*)
+ 4.3.[6-9]*)
SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
- 4.1.9* | 4.1.8* | 4.1.7* | 4.1.6* | 4.0.9* | 4.0.8*)
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
*) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
esac
;;
koffice)
case ${PV} in
- 1.9*)
- SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2"
- ;;
+ 2.0.[6-9]*) SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
*) SRC_URI="mirror://kde/stable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
esac
- ;;
esac
fi
unset _kmname _kmname_pv
@@ -636,8 +631,9 @@
if [[ -n ${KDEBASE} ]] && [[ -d "${D}${EROOT}usr/share/doc/${PF}" ]]; then
# work around bug #97196
dodir /usr/share/doc/KDE4 && \
- mv -f "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}usr/share/doc/KDE4/" || \
+ cp -r "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}usr/share/doc/KDE4/" || \
die "Failed to move docs to KDE4/."
+ rm -rf "${D}${EROOT}usr/share/doc/${PF}"
fi
}
1.25 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.25&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.25&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.24&r2=1.25
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- kde4-functions.eclass 1 Sep 2009 09:32:08 -0000 1.24
+++ kde4-functions.eclass 6 Oct 2009 18:02:12 -0000 1.25
@@ -1,6 +1,8 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.24 2009/09/01 09:32:08 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.25 2009/10/06 18:02:12 alexxy Exp $
+
+inherit versionator
# Prefix compat:
: ${EROOT:=${ROOT}}
@@ -82,26 +84,7 @@
eend $?
fi
- if [[ -z ${EROOT%%/} && -x "${KDEDIR}"/bin/kbuildsycoca4 ]]; then
- # Make sure tha cache file exists, writable by root and readable by
- # others. Otherwise kbuildsycoca4 will fail.
- touch "${KDEDIR}/share/kde4/services/ksycoca4"
- chmod 644 "${KDEDIR}/share/kde4/services/ksycoca4"
-
- # We have to unset DISPLAY and DBUS_SESSION_BUS_ADDRESS, the ones
- # in the user's environment (through su [without '-']) may cause
- # kbuildsycoca4 to hang.
-
- ebegin "Running kbuildsycoca4 to build global database"
- # This is needed because we support multiple kde versions installed together.
- # Lookup in order - local, KDEDIR, /usr, do not duplicate entries btw.
- local KDEDIRS="${EROOT}usr/share"
- [[ ${KDEDIR} != "${EROOT}usr" ]] && KDEDIRS="${KDEDIR}/share:${KDEDIRS}"
- XDG_DATA_DIRS="${EROOT}usr/local/share:${KDEDIRS}" \
- DISPLAY="" DBUS_SESSION_BUS_ADDRESS="" \
- "${KDEDIR}"/bin/kbuildsycoca4 --global --noincremental &> /dev/null
- eend $?
- fi
+ # We no longer need to run kbuildsycoca4, as kded does that automatically, as needed
# fix permission for some directories
for x in share/{config,kde4}; do
@@ -372,30 +355,171 @@
block_other_slots() {
debug-print-function ${FUNCNAME} "$@"
- local slot
- for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
- # Block non kdeprefix ${PN} on other slots
- if [[ ${SLOT} != ${slot} ]]; then
- echo "!kdeprefix? ( !kde-base/${PN}:${slot}[-kdeprefix] )"
- fi
- done
+ _do_blocker ${PN} 0:${SLOT}
}
# @FUNCTION: add_blocker
# @DESCRIPTION:
# Create correct RDEPEND value for blocking correct package.
-# Usefull for file-collision blocks.
-# Parameters are package and version to block.
-# add_blocker kde-base/kdelibs 4.2.4
+# Useful for file-collision blocks.
+# Parameters are package and version(s) to block.
+# add_blocker kdelibs 4.2.4
+# If no version is specified, then all versions will be blocked
+# If any arguments (from 2 on) contain a ":", then different versions
+# are blocked in different slots. (Unlisted slots get the version without
+# a ":", if none, then all versions are blocked). The parameter is then of
+# the form VERSION:SLOT. Any VERSION of 0 means that no blocker will be
+# added for that slot (or, if no slot, then for any unlisted slot).
+# A parameter of the form :SLOT means to block all versions from that slot.
+# If VERSION begins with "<", then "!<foo" will be used instead of "!<=foo".
+# As a special case, if a parameter with slot "3.5" is passed, then that slot
+# may also be blocked.
+#
+# Versions that match "4.x.50" are equivalent to all slots up to (and including)
+# "4.x", but nothing following slot "4.x"
+#
+# As an example, if SLOT=live, then
+# add_blocker kdelibs 0 :4.3 '<4.3.96:4.4' 9999:live
+# will add the following to RDEPEND:
+# !kdeprefix? ( !kde-base/kdelibs:4.3[-kdeprefix] )
+# !kdeprefix? ( !<kde-base/kdelibs-4.3.96:4.4[-kdeprefix] )
+# !kdeprefix? ( !<=kde-base/kdelibs-9999:live[-kdeprefix] )
+# kdeprefix? ( !<=kde-base/kdelibs-9999:live[kdeprefix] )
add_blocker() {
debug-print-function ${FUNCNAME} "$@"
- [[ ${1} = "" || ${2} = "" ]] && die "Missing parameter"
- local slot
+ RDEPEND+=" $(_do_blocker "$@")"
+}
+
+# _greater_max_in_slot ver slot
+# slot must be 4.x or live
+# returns true if ver is >= the maximum possibile version in slot
+_greater_max_in_slot() {
+ local ver=$1
+ local slot=$2
+ # If slot is live, then return false
+ # (nothing is greater than the maximum live version)
+ [[ $slot == live ]] && return 1
+ # Otherwise, for slot X.Y, test against X.Y.50
+ local test=${slot}.50
+ version_compare $1 ${test}
+ # 1 = '<', 2 = '=', 3 = '>'
+ [[ $? -ne 1 ]]
+}
+
+# _less_min_in_slot ver slot
+# slot must be 4.x or live
+# returns true if ver is <= the minimum possibile version in slot
+_less_min_in_slot() {
+ local ver=$1
+ local slot=$2
+ # If slot == live, then test with "9999_pre", so that 9999 tests false
+ local test=9999_pre
+ # If slot == X.Y, then test with X.(Y-1).50
+ [[ $slot == live ]] || test=${slot%.*}.$((${slot#*.} - 1)).50
+ version_compare $1 ${test}
+ # 1 = '<', 2 = '=', 3 = '>'
+ [[ $? -ne 3 ]]
+}
+
+# Internal function used for add_blocker and block_other_slots
+# This takes the same parameters as add_blocker, but echos to
+# stdout instead of updating a variable.
+_do_blocker() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ -z ${1} ]] && die "Missing parameter"
+ local pkg=kde-base/$1
+ shift
+ local param slot def="unset" var atom
+ # The following variables will hold parameters that contain ":"
+ # - block_3_5
+ # - block_4_1
+ # - block_4_2
+ # - block_4_3
+ # - block_4_4
+ # - block_live
+ for slot in 3.5 ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ local block_${slot//./_}="unset"
+ done
+
+ # This construct goes through each parameter passed, and sets
+ # either def or block_* to the version passed
+ for param; do
+ # If the parameter does not have a ":" in it...
+ if [[ ${param/:} == ${param} ]]; then
+ def=${param}
+ else # the parameter *does* have a ":" in it
+ # so everythin after the : is the slot...
+ slot=${param#*:}
+ # ...and everything before the : is the version
+ local block_${slot//./_}=${param%:*}
+ fi
+ done
+
for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ # ${var} contains the name of the variable we care about for this slot
+ # ${!var} is it's value
+ var=block_${slot//./_}
+ # if we didn't pass *:${slot}, then use the unsloted value
+ [[ ${!var} == "unset" ]] && var=def
+
+ # If the no version was passed, or the version is greater than the
+ # maximum possible version in this slot, block all versions in this
+ # slot
+ if [[ ${!var} == "unset" ]] || _greater_max_in_slot ${!var#<} ${slot}; then
+ atom=${pkg}
+ # If the version is "0" or less than the minimum possible version in
+ # this slot, do nothing
+ elif [[ ${!var} == "0" ]] || _less_min_in_slot ${!var#<} ${slot}; then
+ continue
+ # If the version passed begins with a "<", then use "<" instead of "<="
+ elif [[ ${!var:0:1} == "<" ]]; then
+ # this also removes the first character of the version, which is a "<"
+ atom="<${pkg}-${!var:1}"
+ else
+ atom="<=${pkg}-${!var}"
+ fi
# on -kdeprefix we block every slot
- RDEPEND+=" !kdeprefix? ( !<=${1}-${2}:${slot}[-kdeprefix] )"
+ echo " !kdeprefix? ( !${atom}:${slot}[-kdeprefix] )"
+ # on kdeprefix we block only our slot
+ if [[ ${SLOT} == ${slot} ]]; then
+ echo " kdeprefix? ( !${atom}:${SLOT}[kdeprefix] )"
+ fi
done
- # on kdeprefix we block only our slot
- RDEPEND+=" kdeprefix? ( !<=${1}-${2}:${SLOT}[kdeprefix] )"
+
+ # This is a special case block for :3.5; it does not use the
+ # default version passed, and no blocker is output *unless* a version
+ # is passed, or ":3.5" is passed to explicitly request a block on all
+ # 3.5 versions.
+ if [[ ${block_3_5} != "unset" && ${block_3_5} != "0" ]]; then
+ if [[ -z ${block_3_5} ]]; then
+ atom=${pkg}
+ elif [[ ${block_3_5:0:1} == "<" ]]; then
+ atom="<${pkg}-${block_3_5:1}"
+ else
+ atom="<=${pkg}-${block_3_5}"
+ fi
+ echo " !${atom}:3.5"
+ fi
+}
+
+# @FUNCTION: add_kdebase_dep
+# @DESCRIPTION:
+# Create proper dependency for kde-base/ dependencies,
+# adding SLOT when needed (and *only* when needed).
+# This takes 1 or 2 arguments. The first being the package
+# name, the optional second, is additional USE flags to append.
+# The output of this should be added directly to DEPEND/RDEPEND, and
+# may be wrapped in a USE conditional (but not an || conditional
+# without an extra set of parentheses.
+add_kdebase_dep() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ -z ${1} ]] && die "Missing parameter"
+
+ local use=${2:+,${2}}
+
+ echo "!kdeprefix? ( >=kde-base/${1}-${PV}[-kdeprefix${use}] )"
+ echo "kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[kdeprefix${use}] )"
}
1.26 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.26&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.26&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.25&r2=1.26
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- kde4-meta.eclass 20 Aug 2009 09:18:01 -0000 1.25
+++ kde4-meta.eclass 6 Oct 2009 18:02:12 -0000 1.26
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.25 2009/08/20 09:18:01 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.26 2009/10/06 18:02:12 alexxy Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -41,7 +41,9 @@
case ${PN} in
akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
IUSE+=" +kontact"
- RDEPEND+=" kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
+ if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
+ RDEPEND+=" kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
+ fi
;;
esac
;;
@@ -217,12 +219,12 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
- 4.3.85 | 4.3.90 | 4.3.95 | 4.3.96 | 4.3.98 | 4.2.85 | 4.2.90 | 4.2.95 | 4.2.96 | 4.2.98)
+ 4.3.85 | 4.3.9[0568])
# block for normally packed upstream unstable snapshots
KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
;;
- 4.2.9* | 4.2.8* | 4.2.7* | 4.2.6* | 4.3.9* | 4.3.8* | 4.3.7* | 4.3.6*)
+ 4.3.[6-9]*)
KMTARPARAMS+=" --lzma" # lzma
postfix="lzma"
;;
@@ -358,8 +360,10 @@
if has kontact ${IUSE//+} && use kontact; then
KMEXTRA+="
kontact/plugins/${PLUGINNAME:-${PN}}/"
- KMEXTRACTONLY+="
- kontactinterfaces/"
+ if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
+ KMEXTRACTONLY+="
+ kontactinterfaces/"
+ fi
fi
;;
kdeutils)
@@ -392,11 +396,10 @@
# No need for unpack since 4.2.86
# Remove when 4.2 is wiped out from the tree
case ${PV} in
- 4.1*|4.2.0|4.2.1|4.2.2|4.2.3|4.2.4|4.2.85)
+ 4.2.[0-4])
KMCOMPILEONLY+="
cmake/modules/"
;;
- *) ;;
esac
;;
kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics)
@@ -608,18 +611,9 @@
sed -i -e '/install(.*FindKOfficeLibs.cmake/,/)/ d' \
"${S}"/cmake/modules/CMakeLists.txt || \
die "${LINENO}: sed died in collision prevention section"
- case ${PV} in
- 2.0.*)
- sed -i -n -e '1h;1!H;${g;s/install(.\+config-openexr.h.\+)//;p}' \
- "${S}"/CMakeLists.txt || \
- die "${LINENO}: sed died in collision prevention section"
- ;;
- *)
- sed -i -e '/install(.\+config-openexr\.h.\+)/d' \
- "${S}"//CMakeLists.txt || \
- die "${LINENO}: sed died in collision prevention section"
- ;;
- esac
+ sed -i -e '/install(.\+config-openexr\.h.\+)/d' \
+ "${S}"//CMakeLists.txt || \
+ die "${LINENO}: sed died in collision prevention section"
fi
esac
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-12-01 10:56 Tomas Chvatal (scarabeus)
0 siblings, 0 replies; 22+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-12-01 10:56 UTC (permalink / raw
To: gentoo-commits
scarabeus 09/12/01 10:56:18
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update kde4 eclasses from overlay:
Changes:
kde-functions
Update the block resolving case to make it simpler.
kde-meta
Drop not required elogs.
Drop redundant dependencies.
kde-base
introduce kdeenablefinal useflag (masked).
support unpacking of xz tarballs in eapi2.
Revision Changes Path
1.54 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.54&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.54&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.53&r2=1.54
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- kde4-base.eclass 25 Nov 2009 19:51:11 -0000 1.53
+++ kde4-base.eclass 1 Dec 2009 10:56:17 -0000 1.54
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.53 2009/11/25 19:51:11 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.54 2009/12/01 10:56:17 scarabeus Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -19,7 +19,7 @@
# Please note that if it's set to 'never' you need to explicitly override following phases:
# src_configure, src_compile, src_test and src_install.
# Defaults to 'always'.
-CMAKE_REQUIRED="${CMAKE_REQUIRED:-${CMAKE_REQUIRED:-always}}"
+: ${CMAKE_REQUIRED:=always}
if [[ ${CMAKE_REQUIRED} = false || ${CMAKE_REQUIRED} = never ]]; then
buildsystem_eclass=""
export_fns=""
@@ -144,9 +144,9 @@
# @DESCRIPTION:
# Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1..
# Currently defaults to 4.5.1 for KDE 4.3 and earlier
-# or 4.6.0_beta for KDE 4.4 and later
+# or 4.6.0_rc1 for KDE 4.4 and later
if slot_is_at_least 4.4 "${KDE_MINIMAL}"; then
- QT_MINIMAL="${QT_MINIMAL:-4.6.0_beta}"
+ QT_MINIMAL="${QT_MINIMAL:-4.6.0_rc1}"
fi
QT_MINIMAL="${QT_MINIMAL:-4.5.1}"
@@ -239,6 +239,10 @@
fi
kdedepend="
dev-util/pkgconfig
+ !aqua? (
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ )
"
case ${KDE_REQUIRED} in
always)
@@ -253,6 +257,7 @@
;;
*) ;;
esac
+
unset kdecommondepend kdedepend
debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: COMMONDEPEND is ${COMMONDEPEND}"
@@ -264,6 +269,9 @@
RDEPEND+=" ${COMMONDEPEND}"
unset COMMONDEPEND
+# Add experimental kdeenablefinal, disabled by default
+IUSE+=" kdeenablefinal"
+
# Fetch section - If the ebuild's category is not 'kde-base' and if it is not a
# koffice ebuild, the URI should be set in the ebuild itself
case ${BUILD_TYPE} in
@@ -305,7 +313,7 @@
kdelibs-*)
ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdelibs/${KMNAME#kdelibs-}"
;;
- kdereview)
+ kdereview*)
ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
;;
kdesupport)
@@ -360,7 +368,10 @@
# block for normally packed unstable releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
4.3.[6-9]*)
- SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.lzma" ;;
+ # Repacked tarballs: need to depend on xz-utils to ensure that they can be unpacked
+ SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.xz"
+ DEPEND+=" app-arch/xz-utils"
+ ;;
*) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
esac
;;
@@ -454,8 +465,25 @@
if [[ ${BUILD_TYPE} = live ]]; then
migrate_store_dir
subversion_src_unpack
+ elif [[ ${EAPI} == 2 ]]; then
+ local file
+ for file in ${A}; do
+ # This setup is because EAPI <= 2 cannot unpack *.tar.xz files
+ # directly, so we do it ourselves (using the exact same code as portage)
+ case ${file} in
+ *.tar.xz)
+ echo ">>> Unpacking ${file} to ${PWD}"
+ xz -dc "${DISTDIR}"/${file} | tar xof -
+ assert "failed unpacking ${file}"
+ ;;
+ *)
+ unpack ${file}
+ ;;
+ esac
+ done
else
- base_src_unpack
+ # For EAPI >= 3, we can just use unpack() directly
+ unpack ${A}
fi
}
@@ -500,17 +528,19 @@
kde4-base_src_configure() {
debug-print-function ${FUNCNAME} "$@"
- # Handle common release builds
- if ! has debug ${IUSE//+} || ! use debug; then
- append-cppflags -DQT_NO_DEBUG
- fi
-
# Build tests in src_test only, where we override this value
local cmakeargs="-DKDE4_BUILD_TESTS=OFF"
- # set "real" debug mode
+ if has kdeenablefinal ${IUSE//+} && use kdeenablefinal; then
+ cmakeargs+=" -DKDE4_ENABLE_FINAL=ON"
+ fi
+
if has debug ${IUSE//+} && use debug; then
+ # Set "real" debug mode
CMAKE_BUILD_TYPE="Debugfull"
+ else
+ # Handle common release builds
+ append-cppflags -DQT_NO_DEBUG
fi
# Set distribution name
1.27 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.27&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.27&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.26&r2=1.27
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- kde4-functions.eclass 27 Oct 2009 14:16:49 -0000 1.26
+++ kde4-functions.eclass 1 Dec 2009 10:56:17 -0000 1.27
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.26 2009/10/27 14:16:49 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.27 2009/12/01 10:56:17 scarabeus Exp $
inherit versionator
@@ -378,8 +378,7 @@
# will add the following to RDEPEND:
# !kdeprefix? ( !kde-base/kdelibs:4.3[-kdeprefix] )
# !kdeprefix? ( !<kde-base/kdelibs-4.3.96:4.4[-kdeprefix] )
-# !kdeprefix? ( !<=kde-base/kdelibs-9999:live[-kdeprefix] )
-# kdeprefix? ( !<=kde-base/kdelibs-9999:live[kdeprefix] )
+# !<=kde-base/kdelibs-9999:live
add_blocker() {
debug-print-function ${FUNCNAME} "$@"
@@ -399,7 +398,7 @@
local test=${slot}.50
version_compare $1 ${test}
# 1 = '<', 2 = '=', 3 = '>'
- [[ $? -ne 1 ]]
+ (( $? != 1 ))
}
# _less_min_in_slot ver slot
@@ -411,10 +410,10 @@
# If slot == live, then test with "9999_pre", so that 9999 tests false
local test=9999_pre
# If slot == X.Y, then test with X.(Y-1).50
- [[ $slot == live ]] || test=${slot%.*}.$((${slot#*.} - 1)).50
+ [[ $slot != live ]] && test=${slot%.*}.$((${slot#*.} - 1)).50
version_compare $1 ${test}
# 1 = '<', 2 = '=', 3 = '>'
- [[ $? -ne 3 ]]
+ (( $? != 3 ))
}
# Internal function used for add_blocker and block_other_slots
@@ -474,11 +473,12 @@
else
atom="<=${pkg}-${!var}"
fi
- # on -kdeprefix we block every slot
- echo " !kdeprefix? ( !${atom}:${slot}[-kdeprefix] )"
- # on kdeprefix we block only our slot
+ # we always block our own slot, ignoring kdeprefix
if [[ ${SLOT} == ${slot} ]]; then
- echo " kdeprefix? ( !${atom}:${SLOT}[kdeprefix] )"
+ echo " !${atom}:${slot}"
+ else
+ # we only block other slots on -kdeprefix
+ echo " !kdeprefix? ( !${atom}:${slot}[-kdeprefix] )"
fi
done
@@ -514,6 +514,6 @@
local use=${2:+,${2}}
- echo "!kdeprefix? ( >=kde-base/${1}-${PV}[-kdeprefix${use}] )"
- echo "kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[kdeprefix${use}] )"
+ echo " !kdeprefix? ( >=kde-base/${1}-${PV}[-kdeprefix${use}] )"
+ echo " kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[kdeprefix${use}] )"
}
1.28 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.28&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.28&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.27&r2=1.28
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- kde4-meta.eclass 27 Oct 2009 14:16:49 -0000 1.27
+++ kde4-meta.eclass 1 Dec 2009 10:56:17 -0000 1.28
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.27 2009/10/27 14:16:49 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.28 2009/12/01 10:56:17 scarabeus Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -20,21 +20,13 @@
die "kde4-meta.eclass inherited but KMNAME not defined - broken ebuild"
fi
-# Add khelpcenter dependency when installing handbooks
-if [[ ${PN} != khelpcenter ]] && has handbook ${IUSE//+}; then
- RDEPEND+=" handbook? ( $(add_kdebase_dep khelpcenter) )"
-fi
-
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
COMMONDEPEND+=" >=kde-base/qimageblitz-0.0.4"
;;
kdepim|kdepim-runtime)
- COMMONDEPEND+="
- dev-libs/boost
- $(add_kdebase_dep kdepimlibs)
- "
+ COMMONDEPEND+=" $(add_kdebase_dep kdepimlibs)"
case ${PN} in
akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
IUSE+=" +kontact"
@@ -222,8 +214,9 @@
postfix="bz2"
;;
4.3.[6-9]*)
- KMTARPARAMS+=" --lzma" # lzma
- postfix="lzma"
+ # Not passing --xz, as it doesn't work with stable tar
+ KMTARPARAMS+=" --use-compress-program=xz" # xz
+ postfix="xz"
;;
*)
KMTARPARAMS+=" --bzip2" # bz2
@@ -700,17 +693,10 @@
# @FUNCTION: kde4-meta_pkg_postinst
# @DESCRIPTION:
-# Display information about application handbook and invoke kbuildsycoca4.
+# Invoke kbuildsycoca4.
kde4-meta_pkg_postinst() {
debug-print-function ${FUNCNAME} "$@"
- if has handbook ${IUSE//+} && ! use handbook; then
- echo
- einfo "Application handbook for ${PN} has not been installed."
- einfo "To install handbook, reemerge =${CATEGORY}/${PF} with 'handbook' USE flag."
- echo
- fi
-
kde4-base_pkg_postinst
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2010-02-02 14:20 Maciej Mrozowski (reavertm)
0 siblings, 0 replies; 22+ messages in thread
From: Maciej Mrozowski (reavertm) @ 2010-02-02 14:20 UTC (permalink / raw
To: gentoo-commits
reavertm 10/02/02 14:20:16
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Synchronized KDE eclasses from overlay, changes:
- KDE SC 4.5 support
- EAPI-3 support
- prefix support
- moved docs to /usr/share/doc/${PF}
- applied override for kdepim hardcoded checks
Revision Changes Path
1.58 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.58&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.58&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.57&r2=1.58
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -r1.57 -r1.58
--- kde4-base.eclass 14 Dec 2009 19:44:15 -0000 1.57
+++ kde4-base.eclass 2 Feb 2010 14:20:16 -0000 1.58
@@ -1,6 +1,6 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.57 2009/12/14 19:44:15 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.58 2010/02/02 14:20:16 reavertm Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -121,9 +121,9 @@
# Determine SLOT from PVs
case ${PV} in
*.9999*) SLOT="${PV/.9999*/}" ;; # stable live
+ 4.5* | 4.4.[6-9]*) SLOT="4.5" ;;
4.4* | 4.3.[6-9]*) SLOT="4.4" ;;
4.3*) SLOT="4.3" ;;
- 4.2*) SLOT="4.2" ;;
9999*) SLOT="live" ;; # regular live
*) die "Unsupported ${PV}" ;;
esac
@@ -386,10 +386,10 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.3.8[05] | 4.3.9[0568])
+ 4.[34].8[05] | 4.[34].9[0568])
# block for normally packed unstable releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
- 4.3.[6-9]*)
+ 4.[34].[6-9]*)
# Repacked tarballs: need to depend on xz-utils to ensure that they can be unpacked
SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.xz"
DEPEND+=" app-arch/xz-utils"
@@ -493,10 +493,10 @@
if [[ ${BUILD_TYPE} = live ]]; then
migrate_store_dir
subversion_src_unpack
- elif [[ ${EAPI} == [23] ]]; then
+ elif [[ ${EAPI} == 2 ]]; then
local file
for file in ${A}; do
- # This setup is because EAPI <= 3 cannot unpack *.tar.xz files
+ # This setup is because EAPI <= 2 cannot unpack *.tar.xz files
# directly, so we do it ourselves (using the exact same code as portage)
case ${file} in
*.tar.xz)
@@ -510,7 +510,7 @@
esac
done
else
- # For EAPI >= 4, we can just use unpack() directly
+ # For EAPI >= 3, we can just use unpack() directly
unpack ${A}
fi
}
@@ -537,7 +537,10 @@
fi
[[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
+
+ # Apply patches
base_src_prepare
+ epatch_user
# Save library dependencies
if [[ -n ${KMSAVELIBS} ]] ; then
@@ -675,16 +678,6 @@
fi
done
fi
-
- [[ -z ${ED} ]] && ED=${D}
-
- if [[ -n ${KDEBASE} ]] && [[ -d ${ED}usr/share/doc/${PF} ]]; then
- # work around bug #97196
- dodir /usr/share/doc/KDE4 && \
- cp -r "${ED}usr/share/doc/${PF}" "${ED}usr/share/doc/KDE4/" || \
- die "Failed to move docs to KDE4/."
- rm -rf "${ED}usr/share/doc/${PF}"
- fi
}
# @FUNCTION: kde4-base_pkg_postinst
@@ -711,6 +704,16 @@
ewarn "take responsibilities for dead kittens."
echo
fi
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! has_version 'kde-base/kdebase-runtime-meta' && ! has_version 'kde-base/kdebase-startkde'; then
+ # warn about not supported approach
+ if [[ ${KDE_REQUIRED} == always ]] || ( [[ ${KDE_REQUIRED} == optional ]] && use kde ); then
+ echo
+ ewarn "WARNING! Your system configuration contains neither \"kde-base/kdebase-runtime-meta\""
+ ewarn "nor \"kde-base/kdebase-startkde\". You need one of above."
+ ewarn "With this setting you are unsupported by KDE team."
+ ewarn "All missing features you report for misc packages will be probably ignored or closed as INVALID."
+ fi
+ fi
}
# @FUNCTION: kde4-base_pkg_postrm
1.30 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.30&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.30&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.29&r2=1.30
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- kde4-functions.eclass 14 Dec 2009 19:44:15 -0000 1.29
+++ kde4-functions.eclass 2 Feb 2010 14:20:16 -0000 1.30
@@ -1,6 +1,6 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.29 2009/12/14 19:44:15 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.30 2010/02/02 14:20:16 reavertm Exp $
inherit versionator
@@ -41,7 +41,7 @@
# @DESCRIPTION:
# The slots used by all KDE versions later than 4.0. The live KDE releases use
# KDE_LIVE_SLOTS instead. Values should be ordered.
-KDE_SLOTS=( "4.1" "4.2" "4.3" "4.4" )
+KDE_SLOTS=( "4.1" "4.2" "4.3" "4.4" "4.5" )
# @ECLASS-VARIABLE: KDE_LIVE_SLOTS
# @DESCRIPTION:
@@ -518,6 +518,6 @@
local use=${2:+,${2}}
- echo " !kdeprefix? ( >=kde-base/${1}-${PV}[-kdeprefix${use}] )"
- echo " kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[kdeprefix${use}] )"
+ echo " !kdeprefix? ( >=kde-base/${1}-${PV}[aqua=,-kdeprefix${use}] )"
+ echo " kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[aqua=,kdeprefix${use}] )"
}
1.33 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.33&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.33&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.32&r2=1.33
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- kde4-meta.eclass 11 Jan 2010 17:27:35 -0000 1.32
+++ kde4-meta.eclass 2 Feb 2010 14:20:16 -0000 1.33
@@ -1,6 +1,6 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.32 2010/01/11 17:27:35 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.33 2010/02/02 14:20:16 reavertm Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -18,24 +18,17 @@
[[ -z ${KMNAME} ]] && die "kde4-meta.eclass inherited but KMNAME not defined - broken ebuild"
-# Add khelpcenter dependency when installing handbooks
-if [[ ${PN} != khelpcenter ]] && has handbook ${IUSE//+}; then
- RDEPEND+=" handbook? ( $(add_kdebase_dep khelpcenter) )"
-fi
-
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
COMMONDEPEND+=" >=kde-base/qimageblitz-0.0.4"
;;
kdepim|kdepim-runtime)
- COMMONDEPEND+=" $(add_kdebase_dep kdepimlibs)"
+ ! slot_is_at_least 4.4 ${SLOT} && COMMONDEPEND+=" $(add_kdebase_dep kdepimlibs)"
case ${PN} in
akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
IUSE+=" +kontact"
- if ! slot_is_at_least 4.4 ${SLOT}; then
- RDEPEND+=" kontact? ( $(add_kdebase_dep kontactinterfaces) )"
- fi
+ RDEPEND+=" kontact? ( $(add_kdebase_dep kontact) )"
;;
esac
;;
@@ -211,12 +204,12 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
- 4.3.8[05] | 4.3.9[0568])
+ 4.[34].8[05] | 4.[34].9[0568])
# block for normally packed upstream unstable snapshots
KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
;;
- 4.3.[6-9]*)
+ 4.[34].[6-9]*)
# Not passing --xz, as it doesn't work with stable tar
KMTARPARAMS+=" --use-compress-program=xz" # xz
postfix="xz"
@@ -334,6 +327,7 @@
if [[ ${PN} != libkdegames ]]; then
KMEXTRACTONLY+="
libkdegames/"
+ KMLOADLIBS="${KMLOADLIBS} libkdegames"
fi
;;
kdepim)
@@ -341,15 +335,16 @@
KMEXTRACTONLY+="
libkdepim/"
fi
- case ${SLOT} in
- 4.3|4.4|live)
- KMEXTRACTONLY+="
- kdepim-version.h
- config-enterprise.h.cmake"
- ;;
- esac
KMEXTRACTONLY+="
+ config-enterprise.h.cmake
kleopatra/ConfigureChecks.cmake"
+ if slot_is_at_least 4.5 ${SLOT}; then
+ KMEXTRACTONLY+="
+ kdepim-version.h.cmake"
+ else
+ KMEXTRACTONLY+="
+ kdepim-version.h"
+ fi
if has kontact ${IUSE//+} && use kontact; then
KMEXTRA+="
kontact/plugins/${PLUGINNAME:-${PN}}/"
@@ -360,12 +355,8 @@
fi
;;
kdeutils)
- case ${SLOT} in
- 4.3|4.4|live)
- KMEXTRACTONLY+="
- kdeutils-version.h"
- ;;
- esac
+ KMEXTRACTONLY+="
+ kdeutils-version.h"
;;
koffice)
KMEXTRACTONLY+="
@@ -385,16 +376,6 @@
esac
# Don't install cmake modules for split ebuilds, to avoid collisions.
case ${KMNAME} in
- kdepim)
- # No need for unpack since 4.2.86
- # Remove when 4.2 is wiped out from the tree
- case ${PV} in
- 4.2.[0-4])
- KMCOMPILEONLY+="
- cmake/modules/"
- ;;
- esac
- ;;
kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics)
case ${PN} in
libkdegames|libkdeedu|libkworkspace)
@@ -588,17 +569,24 @@
-i CMakeLists.txt || die "failed to disable hardcoded checks"
;;
kdepim)
- case ${PN} in
- kaddressbook|kalarm|kmailcvt|kontact|korganizer|korn)
- sed -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
- -e '/add_custom_target(kmail_xml /,/)/p' \
- -i kmail/CMakeLists.txt || die "uncommenting xml failed"
- _change_cmakelists_parent_dirs kmail
- ;;
- esac
+ # Disable hardcoded checks
+ sed -r -e '/find_package\(KdepimLibs/s/REQUIRED//' \
+ -e '/find_package\((KdepimLibs|Boost|QGpgme|Akonadi|ZLIB|Strigi|SharedDesktopOntologies|Soprano|Nepomuk)/{/macro_optional_/!s/find/macro_optional_&/}' \
+ -e '/macro_log_feature\((Boost|QGPGME|Akonadi|ZLIB|STRIGI|SHAREDDESKTOPONTOLOGIES|Soprano|Nepomuk)_FOUND/s/ TRUE / FALSE /' \
+ -i CMakeLists.txt || die "failed to disable hardcoded checks"
+ if ! slot_is_at_least 4.5 ${SLOT}; then
+ case ${PN} in
+ kalarm|kmailcvt|kontact|korganizer|korn)
+ sed -n -e '/qt4_generate_dbus_interface(.*org\.kde\.kmail\.\(kmail\|mailcomposer\)\.xml/p' \
+ -e '/add_custom_target(kmail_xml /,/)/p' \
+ -i kmail/CMakeLists.txt || die "uncommenting xml failed"
+ _change_cmakelists_parent_dirs kmail
+ ;;
+ esac
+ fi
;;
kdewebdev)
- # Disable hardcoded kdepimlibs check
+ # Disable hardcoded checks
sed -e 's/find_package(KdepimLibs REQUIRED)/macro_optional_find_package(KdepimLibs)/' \
-e 's/find_package(LibXml2 REQUIRED)/macro_optional_find_package(LibXml2)/' \
-e 's/find_package(LibXslt REQUIRED)/macro_optional_find_package(LibXslt)/' \
@@ -606,7 +594,7 @@
-i CMakeLists.txt || die "failed to disable hardcoded checks"
;;
koffice)
- # prevent collisions
+ # Prevent collisions
if [[ ${PN} != koffice-data ]]; then
sed -e '/install(.*FindKOfficeLibs.cmake/,/)/ d' \
-i cmake/modules/CMakeLists.txt || die "${LINENO}: sed died in collision prevention section"
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2010-05-15 15:19 Maciej Mrozowski (reavertm)
0 siblings, 0 replies; 22+ messages in thread
From: Maciej Mrozowski (reavertm) @ 2010-05-15 15:19 UTC (permalink / raw
To: gentoo-commits
reavertm 10/05/15 15:19:04
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Sync eclasses from kde overlay.
- kdevelop ebuils support
- cmake-2.6.4 needed for KDE SC 4.5
- crosscompilation fixes
- fix README's installation
- pre-release koffice support
Revision Changes Path
1.61 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.61&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.61&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.60&r2=1.61
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -r1.60 -r1.61
--- kde4-base.eclass 15 May 2010 14:03:06 -0000 1.60
+++ kde4-base.eclass 15 May 2010 15:19:04 -0000 1.61
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.60 2010/05/15 14:03:06 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.61 2010/05/15 15:19:04 reavertm Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -13,6 +13,17 @@
# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
# eclass will fail with version older than 2.
+inherit kde4-functions base eutils
+
+get_build_type
+if [[ ${BUILD_TYPE} = live ]]; then
+ if [[ ${KDEBASE} = kdevelop ]]; then
+ inherit git
+ else
+ inherit subversion
+ fi
+fi
+
# @ECLASS-VARIABLE: CMAKE_REQUIRED
# @DESCRIPTION:
# Specify if cmake buildsystem is being used. Possible values are 'always' and 'never'.
@@ -20,28 +31,75 @@
# src_configure, src_compile, src_test and src_install.
# Defaults to 'always'.
: ${CMAKE_REQUIRED:=always}
-if [[ ${CMAKE_REQUIRED} = false || ${CMAKE_REQUIRED} = never ]]; then
- buildsystem_eclass=""
- export_fns=""
-else
+if [[ ${CMAKE_REQUIRED} = always ]]; then
buildsystem_eclass="cmake-utils"
export_fns="src_configure src_compile src_test src_install"
fi
-inherit kde4-functions
-
-get_build_type
-if [[ ${BUILD_TYPE} = live ]]; then
- subversion_eclass="subversion"
+# Verify KDE_MINIMAL (display QA notice in pkg_setup, still we need to fix it here)
+if [[ -n ${KDE_MINIMAL} ]]; then
+ for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
+ [[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
+ done
+ unset slot
+ [[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
+else
+ KDE_MINIMAL_VALID=1
fi
-inherit base ${buildsystem_eclass} eutils ${subversion_eclass}
+# @ECLASS-VARIABLE: KDE_MINIMAL
+# @DESCRIPTION:
+# This variable is used when KDE_REQUIRED is set, to specify required KDE minimal
+# version for apps to work. Currently defaults to 4.3
+# One may override this variable to raise version requirements.
+# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
+# Note that it is fixed to ${SLOT} for kde-base packages.
+KDE_MINIMAL="${KDE_MINIMAL:-4.3}"
-EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare ${export_fns} pkg_postinst pkg_postrm
+# Set slot for packages in kde-base, koffice and kdevelop
+case ${KDEBASE} in
+ kde-base)
+ # Determine SLOT from PVs
+ case ${PV} in
+ *.9999*) SLOT="${PV/.9999*/}" ;; # stable live
+ 4.5* | 4.4.[6-9]*) SLOT="4.5" ;;
+ 4.4* | 4.3.[6-9]*) SLOT="4.4" ;;
+ 4.3*) SLOT="4.3" ;;
+ 9999*) SLOT="live" ;; # regular live
+ *) die "Unsupported ${PV}" ;;
+ esac
+ KDE_MINIMAL="${SLOT}"
+ ;;
+ koffice)
+ SLOT="2"
+ ;;
+ kdevelop)
+ if [[ ${BUILD_TYPE} = live ]]; then
+ KDEVELOP_VERSION="9999"
+ KDEVPLATFORM_VERSION="9999"
+ else
+ case ${PN} in
+ kdevelop|quanta)
+ KDEVELOP_VERSION=${PV}
+ KDEVPLATFORM_VERSION="$(($(get_major_version)-3)).$(get_after_major_version)"
+ ;;
+ *)
+ KDEVELOP_VERSION="$(($(get_major_version)+3)).$(get_after_major_version)"
+ KDEVPLATFORM_VERSION=${PV}
+ esac
+ fi
+ SLOT="4"
+ ;;
+esac
+
+slot_is_at_least 4.5 ${KDE_MINIMAL} && CMAKE_MIN_VERSION="2.6.4"
+
+inherit ${buildsystem_eclass}
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare ${export_fns} pkg_postinst pkg_postrm
unset buildsystem_eclass
unset export_fns
-unset subversion_eclass
case ${KDEBASE} in
kde-base)
@@ -52,6 +110,10 @@
HOMEPAGE="http://www.koffice.org/"
LICENSE="GPL-2"
;;
+ kdevelop)
+ HOMEPAGE="http://www.kdevelop.org/"
+ LICENSE="GPL-2"
+ ;;
esac
# @ECLASS-VARIABLE: OPENGL_REQUIRED
@@ -86,26 +148,6 @@
# Note that for kde-base packages this variable is fixed to 'always'.
KDE_REQUIRED="${KDE_REQUIRED:-always}"
-# Verify KDE_MINIMAL (display QA notice in pkg_setup, still we need to fix it here)
-if [[ -n ${KDE_MINIMAL} ]]; then
- for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
- [[ ${KDE_MINIMAL} = ${slot} ]] && KDE_MINIMAL_VALID=1 && break
- done
- unset slot
- [[ -z ${KDE_MINIMAL_VALID} ]] && unset KDE_MINIMAL
-else
- KDE_MINIMAL_VALID=1
-fi
-
-# @ECLASS-VARIABLE: KDE_MINIMAL
-# @DESCRIPTION:
-# This variable is used when KDE_REQUIRED is set, to specify required KDE minimal
-# version for apps to work. Currently defaults to 4.3
-# One may override this variable to raise version requirements.
-# For possible values look at KDE_SLOTS and KDE_LIVE_SLOTS variables.
-# Note that it is fixed to ${SLOT} for kde-base packages.
-KDE_MINIMAL="${KDE_MINIMAL:-4.3}"
-
# Setup packages inheriting this eclass
case ${KDEBASE} in
kde-base)
@@ -118,15 +160,6 @@
# All other ebuild types default to -kdeprefix as before
IUSE+=" kdeprefix"
fi
- # Determine SLOT from PVs
- case ${PV} in
- *.9999*) SLOT="${PV/.9999*/}" ;; # stable live
- 4.5* | 4.4.[6-9]*) SLOT="4.5" ;;
- 4.4* | 4.3.[6-9]*) SLOT="4.4" ;;
- 4.3*) SLOT="4.3" ;;
- 9999*) SLOT="live" ;; # regular live
- *) die "Unsupported ${PV}" ;;
- esac
# This code is to prevent portage from searching GENTOO_MIRRORS for
# packages that will never be mirrored. (As they only will ever be in
# the overlay).
@@ -135,22 +168,16 @@
RESTRICT+=" mirror"
;;
esac
- KDE_MINIMAL="${SLOT}"
- _kdedir="${SLOT}"
-
# Block installation of other SLOTS unless kdeprefix
RDEPEND+=" $(block_other_slots)"
;;
- koffice)
- SLOT="2"
- ;;
esac
# @ECLASS-VARIABLE: QT_MINIMAL
# @DESCRIPTION:
# Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1..
# Currently defaults to 4.5.1 for KDE 4.3 and earlier
-# or 4.6.0_rc1 for KDE 4.4 and later
+# or 4.6.0 for KDE 4.4 and later
if slot_is_at_least 4.4 "${KDE_MINIMAL}"; then
QT_MINIMAL="${QT_MINIMAL:-4.6.0}"
fi
@@ -233,7 +260,6 @@
# KDE dependencies
kdecommondepend="
- dev-lang/perl
>=x11-libs/qt-core-${QT_MINIMAL}:4[qt3support,ssl]
>=x11-libs/qt-gui-${QT_MINIMAL}:4[dbus]
>=x11-libs/qt-qt3support-${QT_MINIMAL}:4[kde]
@@ -247,6 +273,9 @@
x11-libs/libXxf86vm
)
"
+#perl is not needed on host (+ difficult crosscompilation)
+tc-is-cross-compiler || kdecommondepend="$kdecommondepend dev-lang/perl"
+
if [[ ${PN} != kdelibs ]]; then
if [[ ${KDEBASE} = kde-base ]]; then
kdecommondepend+=" $(add_kdebase_dep kdelibs)"
@@ -257,6 +286,13 @@
kdecommondepend+="
>=kde-base/kdelibs-${KDE_MINIMAL}
"
+ if [[ ${KDEBASE} = kdevelop ]]; then
+ if [[ ${PN} != kdevplatform ]]; then
+ kdecommondepend+="
+ >=dev-util/kdevplatform-${KDEVPLATFORM_VERSION}
+ "
+ fi
+ fi
fi
fi
kdedepend="
@@ -299,77 +335,88 @@
# koffice ebuild, the URI should be set in the ebuild itself
case ${BUILD_TYPE} in
live)
- # Determine branch URL based on live type
- local branch_prefix
- case ${PV} in
- 9999*)
- # trunk
- branch_prefix="trunk/KDE"
- ;;
- *)
- # branch
- branch_prefix="branches/KDE/${SLOT}"
- # @ECLASS-VARIABLE: ESVN_PROJECT_SUFFIX
- # @DESCRIPTION
- # Suffix appended to ESVN_PROJECT depending on fetched branch.
- # Defaults is empty (for -9999 = trunk), and "-${PV}" otherwise.
- ESVN_PROJECT_SUFFIX="-${PV}"
- ;;
- esac
SRC_URI=""
- # @ECLASS-VARIABLE: ESVN_MIRROR
- # @DESCRIPTION:
- # This variable allows easy overriding of default kde mirror service
- # (anonsvn) with anything else you might want to use.
- ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
- # Split ebuild, or extragear stuff
- if [[ -n ${KMNAME} ]]; then
- ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
+ if has subversion ${INHERITED}; then
+ # Determine branch URL based on live type
+ local branch_prefix
+ case ${PV} in
+ 9999*)
+ # trunk
+ branch_prefix="trunk/KDE"
+ ;;
+ *)
+ # branch
+ branch_prefix="branches/KDE/${SLOT}"
+ # @ECLASS-VARIABLE: ESVN_PROJECT_SUFFIX
+ # @DESCRIPTION
+ # Suffix appended to ESVN_PROJECT depending on fetched branch.
+ # Defaults is empty (for -9999 = trunk), and "-${PV}" otherwise.
+ ESVN_PROJECT_SUFFIX="-${PV}"
+ ;;
+ esac
+ # @ECLASS-VARIABLE: ESVN_MIRROR
+ # @DESCRIPTION:
+ # This variable allows easy overriding of default kde mirror service
+ # (anonsvn) with anything else you might want to use.
+ ESVN_MIRROR=${ESVN_MIRROR:=svn://anonsvn.kde.org/home/kde}
+ # Split ebuild, or extragear stuff
+ if [[ -n ${KMNAME} ]]; then
+ ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}"
+ if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
+ KMMODULE="${PN}"
+ fi
+ # Split kde-base/ ebuilds: (they reside in trunk/KDE)
+ case ${KMNAME} in
+ kdebase-*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
+ ;;
+ kdelibs-*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdelibs/${KMNAME#kdelibs-}"
+ ;;
+ kdereview*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ;;
+ kdesupport)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
+ ;;
+ kde*)
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${KMNAME}"
+ ;;
+ extragear*|playground*)
+ # Unpack them in toplevel dir, so that they won't conflict with kde4-meta
+ # build packages from same svn location.
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
+ ;;
+ koffice)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
+ ;;
+ *)
+ ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ ;;
+ esac
+ else
+ # kdelibs, kdepimlibs
+ ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
+ ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
+ fi
+ # @ECLASS-VARIABLE: ESVN_UP_FREQ
+ # @DESCRIPTION:
+ # This variable is used for specifying the timeout between svn synces
+ # for kde-base and koffice modules. Does not affect misc apps.
+ # Default value is 1 hour.
+ [[ ${KDEBASE} = kde-base || ${KDEBASE} = koffice ]] && ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
+ elif has git ${INHERITED}; then
if [[ -z ${KMNOMODULE} ]] && [[ -z ${KMMODULE} ]]; then
KMMODULE="${PN}"
fi
- # Split kde-base/ ebuilds: (they reside in trunk/KDE)
- case ${KMNAME} in
- kdebase-*)
- ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdebase/${KMNAME#kdebase-}"
- ;;
- kdelibs-*)
- ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/kdelibs/${KMNAME#kdelibs-}"
- ;;
- kdereview*)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
- ;;
- kdesupport)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
- ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
- ;;
- kde*)
- ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${KMNAME}"
- ;;
- extragear*|playground*)
- # Unpack them in toplevel dir, so that they won't conflict with kde4-meta
- # build packages from same svn location.
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
- ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
- ;;
- koffice)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}"
- ;;
- *)
- ESVN_REPO_URI="${ESVN_MIRROR}/trunk/${KMNAME}/${KMMODULE}"
+ case ${KDEBASE} in
+ kdevelop)
+ EGIT_REPO_URI="git://gitorious.org/${KMNAME}/${KMMODULE}.git"
;;
esac
- else
- # kdelibs, kdepimlibs
- ESVN_REPO_URI="${ESVN_MIRROR}/${branch_prefix}/${PN}"
- ESVN_PROJECT="${PN}${ESVN_PROJECT_SUFFIX}"
- fi
- # @ECLASS-VARIABLE: ESVN_UP_FREQ
- # @DESCRIPTION:
- # This variable is used for specifying the timeout between svn synces
- # for kde-base and koffice modules. Does not affect misc apps.
- # Default value is 1 hour.
- [[ ${KDEBASE} = kde-base || ${KDEBASE} = koffice ]] && ESVN_UP_FREQ=${ESVN_UP_FREQ:-1}
+ fi
;;
*)
if [[ -n ${KDEBASE} ]]; then
@@ -392,7 +439,7 @@
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
4.[34].[6-9]*)
# Repacked tarballs: need to depend on xz-utils to ensure that they can be unpacked
- SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/${_kmname_pv}.tar.xz"
+ SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/src/${_kmname_pv}.tar.xz"
DEPEND+=" app-arch/xz-utils"
;;
*) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
@@ -400,9 +447,13 @@
;;
koffice)
case ${PV} in
- 2.0.[6-9]*) SRC_URI="mirror://kde/unstable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
+ 2.1.[6-9]*) SRC_URI="mirror://kde/unstable/${_kmname_pv}/${_kmname_pv}.tar.bz2" ;;
*) SRC_URI="mirror://kde/stable/${_kmname_pv}/${_kmname_pv}.tar.bz2" ;;
esac
+ ;;
+ kdevelop)
+ SRC_URI="mirror://kde/stable/kdevelop/${KDEVELOP_VERSION}/src/${P}.tar.bz2"
+ ;;
esac
unset _kmname _kmname_pv
fi
@@ -441,7 +492,7 @@
if [[ ${KDEBASE} = kde-base ]]; then
if use kdeprefix; then
- KDEDIR=/usr/kde/${_kdedir}
+ KDEDIR=/usr/kde/${SLOT}
else
KDEDIR=/usr
fi
@@ -481,8 +532,6 @@
# Fix XDG collision with sandbox
export XDG_CONFIG_HOME="${T}"
- # Not needed anymore
- unset _kdedir
}
# @FUNCTION: kde4-base_src_unpack
@@ -492,8 +541,12 @@
debug-print-function ${FUNCNAME} "$@"
if [[ ${BUILD_TYPE} = live ]]; then
- migrate_store_dir
- subversion_src_unpack
+ if has subversion ${INHERITED}; then
+ migrate_store_dir
+ subversion_src_unpack
+ elif has git ${INHERITED}; then
+ git_src_unpack
+ fi
elif [[ ${EAPI} == 2 ]]; then
local file
for file in ${A}; do
@@ -537,7 +590,14 @@
has handbook ${IUSE//+} && [[ ${PN} != kde-l10n ]] && [[ ${PN} != kdelibs ]] && enable_selected_doc_linguas
fi
- [[ ${BUILD_TYPE} = live ]] && subversion_src_prepare
+ # SCM bootstrap
+ if [[ ${BUILD_TYPE} = live ]]; then
+ if has subversion ${INHERITED}; then
+ subversion_src_prepare
+ elif has git ${INHERITED}; then
+ git_src_prepare
+ fi
+ fi
# Apply patches
base_src_prepare
@@ -579,7 +639,7 @@
[[ ${PN} = kdelibs ]] && cmakeargs+=(-DKDE_DISTRIBUTION_TEXT=Gentoo)
# Here we set the install prefix
- cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}")
+ tc-is-cross-compiler || cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}")
# Use colors
QTEST_COLORED=1
@@ -592,7 +652,9 @@
# Override some environment variables - only when kdeprefix is different,
# to not break ccache/distcc
PATH="${EKDEDIR}/bin:${PATH}"
- LDPATH="${EKDEDIR}/$(get_libdir)${LDPATH+:}${LDPATH}"
+
+ # Append library search path
+ append-ldflags -L"${EKDEDIR}/$(get_libdir)"
# Append full RPATH
cmakeargs+=(-DCMAKE_SKIP_RPATH=OFF)
@@ -602,6 +664,11 @@
cmakeargs+=(-DCMAKE_SYSTEM_PREFIX_PATH="${EKDEDIR}")
fi
+ #qmake -query QT_INSTALL_LIBS unavailable when cross-compiling
+ tc-is-cross-compiler && cmakeargs+=(-DQT_LIBRARY_DIR=${ROOT}/usr/lib/qt4)
+ #kde-config -path data unavailable when cross-compiling
+ tc-is-cross-compiler && cmakeargs+=(-DKDE4_DATA_DIR=${ROOT}/usr/share/apps/)
+
# Handle kdeprefix in application itself
if ! has kdeprefix ${IUSE//+} || ! use kdeprefix; then
# If prefix is /usr, sysconf needs to be /etc, not /usr/etc
@@ -655,30 +722,25 @@
install_library_dependencies
fi
- kde4-base_src_make_doc
- cmake-utils_src_install
-}
-
-# @FUNCTION: kde4-base_src_make_doc
-# @DESCRIPTION:
-# Function for installing the documentation of KDE4 applications.
-kde4-base_src_make_doc() {
- debug-print-function ${FUNCNAME} "$@"
-
+ # Install common documentation of KDE4 applications
local doc
- for doc in AUTHORS ChangeLog* README* NEWS TODO; do
- [[ -s ${doc} ]] && dodoc ${doc}
- done
-
- if [[ -z ${KMNAME} ]]; then
- for doc in {apps,runtime,workspace,.}/*/{AUTHORS,README*}; do
- if [[ -s ${doc} ]]; then
- local doc_complete=${doc}
- doc="${doc#*/}"
- newdoc "$doc_complete" "${doc%/*}.${doc##*/}"
- fi
+ if ! has kde4-meta ${INHERITED}; then
+ for doc in AUTHORS ChangeLog* README* NEWS TODO HACKING; do
+ [[ -s "${S}/${doc}" ]] && dodoc "${doc}"
done
+ # kdelibs, kdepimlibs
+ if [[ -z ${KMNAME} ]]; then
+ for doc in "${S}"/*/{AUTHORS,ChangeLog*,README*,NEWS,TODO,HACKING}; do
+ if [[ -s "${S}/${doc}" ]]; then
+ local doc_complete=${doc}
+ doc="${doc#*/}"
+ newdoc "$doc_complete" "${doc%/*}.${doc##*/}"
+ fi
+ done
+ fi
fi
+
+ cmake-utils_src_install
}
# @FUNCTION: kde4-base_pkg_postinst
1.31 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.31&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.31&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.30&r2=1.31
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- kde4-functions.eclass 2 Feb 2010 14:20:16 -0000 1.30
+++ kde4-functions.eclass 15 May 2010 15:19:04 -0000 1.31
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.30 2010/02/02 14:20:16 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.31 2010/05/15 15:19:04 reavertm Exp $
inherit versionator
@@ -25,16 +25,15 @@
# @DESCRIPTION:
# This gets set to a non-zero value when a package is considered a kde or
# koffice ebuild.
-
if [[ ${CATEGORY} = kde-base ]]; then
debug-print "${ECLASS}: KDEBASE ebuild recognized"
KDEBASE=kde-base
-fi
-
-# is this a koffice ebuild?
-if [[ ${KMNAME} = koffice || ${PN} = koffice ]]; then
+elif [[ ${KMNAME} = koffice || ${PN} = koffice ]]; then
debug-print "${ECLASS}: KOFFICE ebuild recognized"
KDEBASE=koffice
+elif [[ ${KMNAME} = kdevelop ]]; then
+ debug-print "${ECLASS}: KDEVELOP ebuild recognized"
+ KDEBASE="kdevelop"
fi
# @ECLASS-VARIABLE: KDE_SLOTS
1.35 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.35&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.35&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.34&r2=1.35
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- kde4-meta.eclass 15 Mar 2010 03:35:39 -0000 1.34
+++ kde4-meta.eclass 15 May 2010 15:19:04 -0000 1.35
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.34 2010/03/15 03:35:39 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.35 2010/05/15 15:19:04 reavertm Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -340,6 +340,7 @@
kleopatra/ConfigureChecks.cmake"
if slot_is_at_least 4.5 ${SLOT}; then
KMEXTRACTONLY+="
+ CTestCustom.cmake
kdepim-version.h.cmake"
else
KMEXTRACTONLY+="
@@ -618,6 +619,22 @@
;;
*) ;;
esac
+ # koffice 2.1.[8-9][0-9] and 9999
+ case ${PV} in
+ 2.1.8[0-9]|2.1.9[0-9]|9999)
+ sed -e '/^option(BUILD/s/ON/OFF/' \
+ -e '/^if(NOT BUILD_kchart/,/^endif(NOT BUILD_kchart/d' \
+ -e '/^if(BUILD_koreport/,/^endif(BUILD_koreport/d' \
+ -e 's/set(SHOULD_BUILD_F_OFFICE TRUE)/set(SHOULD_BUILD_F_OFFICE FALSE)/' \
+ -i "${S}"/CMakeLists.txt || die "sed died while fixing cmakelists"
+ if [[ ${PN} != koffice-data ]] && [[ ${PV} == 9999 ]]; then
+ sed -e '/config-opengl.h/d' \
+ -i "${S}"/CMakeLists.txt || die "sed died while fixing cmakelists"
+
+ fi
+ ;;
+ *) ;;
+ esac
esac
popd > /dev/null
@@ -647,6 +664,18 @@
"${mycmakeargs[@]}"
)
;;
+ koffice)
+ case ${PV} in
+ 2.1.8[0-9]|2.1.9[0-9]|9999)
+ if [[ ${PN} != "kchart" ]]; then
+ mycmakeargs=(
+ -DBUILD_koreport=OFF
+ "${mycmakeargs[@]}"
+ )
+ fi
+ ;;
+ esac
+ ;;
esac
kde4-base_src_configure
@@ -682,22 +711,13 @@
kde4-meta_src_install() {
debug-print-function $FUNCNAME "$@"
- kde4-base_src_install
-}
-
-# @FUNCTION: kde4-meta_src_make_doc
-# @DESCRIPTION:
-# This function searches in ${S}/${KMMODULE},
-# and tries to install "AUTHORS ChangeLog* README* NEWS TODO" if these files exist.
-kde4-meta_src_make_doc() {
- debug-print-function ${FUNCNAME} "$@"
-
+ # Search ${S}/${KMMODULE} and install any "AUTHORS ChangeLog* README* NEWS TODO HACKING" found
local doc
- for doc in AUTHORS ChangeLog* README* NEWS TODO; do
- [[ -s ${KMMODULE}/${doc} ]] && newdoc "${KMMODULE}/${doc}" "${doc}.${KMMODULE##*/}"
+ for doc in AUTHORS ChangeLog* README* NEWS TODO HACKING; do
+ [[ -s "${S}/${KMMODULE}/${doc}" ]] && dodoc "${S}/${KMMODULE}/${doc}"
done
- kde4-base_src_make_doc
+ kde4-base_src_install
}
# @FUNCTION: kde4-meta_pkg_postinst
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2010-09-11 4:25 Maciej Mrozowski (reavertm)
0 siblings, 0 replies; 22+ messages in thread
From: Maciej Mrozowski (reavertm) @ 2010-09-11 4:25 UTC (permalink / raw
To: gentoo-commits
reavertm 10/09/11 04:25:24
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Remove repacked unstable snapshots handling codepaths, add kdepim-4.4.6 dependency rule
Revision Changes Path
1.70 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.70&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.70&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.69&r2=1.70
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.69
retrieving revision 1.70
diff -u -r1.69 -r1.70
--- kde4-base.eclass 9 Sep 2010 17:02:30 -0000 1.69
+++ kde4-base.eclass 11 Sep 2010 04:25:23 -0000 1.70
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.69 2010/09/09 17:02:30 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.70 2010/09/11 04:25:23 reavertm Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -479,15 +479,14 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
- 4.[45].8[05] | 4.[45].9[02568])
- # Normally packed unstable releases
- SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
- 4.[45].[6-9]*)
- # Repacked tarballs: need to depend on xz-utils to ensure that they can be unpacked
- SRC_URI="http://dev.gentooexperimental.org/~alexxy/kde/${PV}/src/${_kmname_pv}.tar.xz"
- DEPEND+=" app-arch/xz-utils"
+ 4.[456].8[05] | 4.[456].9[023568])
+ # Unstable KDE SC releases
+ SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2"
+ ;;
+ *)
+ # Stable KDE SC releases
+ SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2"
;;
- *) SRC_URI="mirror://kde/stable/${PV}/src/${_kmname_pv}.tar.bz2" ;;
esac
;;
koffice)
1.35 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.35&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.35&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.34&r2=1.35
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- kde4-functions.eclass 9 Sep 2010 17:02:30 -0000 1.34
+++ kde4-functions.eclass 11 Sep 2010 04:25:23 -0000 1.35
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.34 2010/09/09 17:02:30 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.35 2010/09/11 04:25:23 reavertm Exp $
inherit versionator
@@ -518,8 +518,15 @@
local use=${2:+,${2}}
if [[ ${KDEBASE} = kde-base ]]; then
- echo " !kdeprefix? ( >=kde-base/${1}-${PV}[aqua=,-kdeprefix${use}] )"
- echo " kdeprefix? ( >=kde-base/${1}-${PV}:${SLOT}[aqua=,kdeprefix${use}] )"
+ # FIXME remove hack when kdepim-4.4.6 is gone
+ local FIXME_PV
+ if [[ ${KMNAME} = kdepim || ${PN} = kdepim-runtime ]] && [[ ${PV} = 4.4.6* ]] && [[ ${1} = kdelibs || ${1} = kdepimlibs ]]; then
+ FIXME_PV=4.4.5
+ else
+ FIXME_PV=${PV}
+ fi
+ echo " !kdeprefix? ( >=kde-base/${1}-${FIXME_PV}[aqua=,-kdeprefix${use}] )"
+ echo " kdeprefix? ( >=kde-base/${1}-${FIXME_PV}:${SLOT}[aqua=,kdeprefix${use}] )"
else
if [[ ${KDE_MINIMAL} = live ]]; then
echo " kde-base/${1}:${KDE_MINIMAL}[aqua=${use}]"
1.40 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.40&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.40&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.39&r2=1.40
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- kde4-meta.eclass 9 Aug 2010 15:59:04 -0000 1.39
+++ kde4-meta.eclass 11 Sep 2010 04:25:23 -0000 1.40
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.39 2010/08/09 15:59:04 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.40 2010/09/11 04:25:23 reavertm Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -203,16 +203,11 @@
else
local abort tarball tarfile f extractlist moduleprefix postfix
case ${PV} in
- 4.[45].8[05] | 4.[45].9[02568])
- # block for normally packed upstream unstable snapshots
+ 4.[45].8[05] | 4.[45].9[023568])
+ # Block for normally packed upstream unstable snapshots
KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
;;
- 4.[45].[6-9]*)
- # Not passing --xz, as it doesn't work with stable tar
- KMTARPARAMS+=" --use-compress-program=xz" # xz
- postfix="xz"
- ;;
*)
KMTARPARAMS+=" --bzip2" # bz2
postfix="bz2"
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2010-12-02 21:49 Alexey Shvetsov (alexxy)
0 siblings, 0 replies; 22+ messages in thread
From: Alexey Shvetsov (alexxy) @ 2010-12-02 21:49 UTC (permalink / raw
To: gentoo-commits
alexxy 10/12/02 21:49:54
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Update eclasses for kde
Revision Changes Path
1.78 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.78&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.78&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.77&r2=1.78
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -r1.77 -r1.78
--- kde4-base.eclass 24 Nov 2010 23:54:55 -0000 1.77
+++ kde4-base.eclass 2 Dec 2010 21:49:54 -0000 1.78
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.77 2010/11/24 23:54:55 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.78 2010/12/02 21:49:54 alexxy Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -13,7 +13,20 @@
# NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
# eclass will fail with version older than 2.
-inherit kde4-functions base eutils
+# @ECLASS-VARIABLE: VIRTUALX_REQUIRED
+# @DESCRIPTION:
+# Do we need an X server? Valid values are "always", "optional", and "manual".
+# "tests" is a synonym for "optional". While virtualx.eclass supports in principle
+# also the use of an X server during other ebuild phases, we only use it in
+# src_test here. Most likely you'll want to set "optional", which introduces the
+# use-flag "test" (if not already present), adds dependencies conditional on that
+# use-flag, and automatically runs (only) the ebuild test phase with a virtual X server
+# present. This makes things a lot more comfortable than the bare virtualx eclass.
+
+# In case the variable is not set in the ebuild, let virtualx eclass not do anything
+: ${VIRTUALX_REQUIRED:=manual}
+
+inherit kde4-functions base virtualx eutils
get_build_type
if [[ ${BUILD_TYPE} = live ]]; then
@@ -113,6 +126,18 @@
unset buildsystem_eclass
unset export_fns
+# @ECLASS-VARIABLE: DECLARATIVE_REQUIRED
+# @DESCRIPTION:
+# Is qt-declarative required? Possible values are 'always', 'optional' and 'never'.
+# This variable must be set before inheriting any eclasses. Defaults to 'never'.
+DECLARATIVE_REQUIRED="${DECLARATIVE_REQUIRED:-never}"
+
+# @ECLASS-VARIABLE: QTHELP_REQUIRED
+# @DESCRIPTION:
+# Is qt-assistant required? Possible values are 'always', 'optional' and 'never'.
+# This variable must be set before inheriting any eclasses. Defaults to 'never'.
+QTHELP_REQUIRED="${QTHELP_REQUIRED:-never}"
+
# @ECLASS-VARIABLE: OPENGL_REQUIRED
# @DESCRIPTION:
# Is qt-opengl required? Possible values are 'always', 'optional' and 'never'.
@@ -192,13 +217,46 @@
# @ECLASS-VARIABLE: QT_MINIMAL
# @DESCRIPTION:
# Determine version of qt we enforce as minimal for the package. 4.4.0 4.5.1...
-# 4.6.0 for 4.4 and 4.6.3 for 4.5 and later
-if slot_is_at_least 4.5 "${KDE_MINIMAL}"; then
+# 4.6.0 for 4.4, 4.6.3 for 4.5, and 4.7.0 for 4.6 and later
+if slot_is_at_least 4.6 "${KDE_MINIMAL}"; then
+ QT_MINIMAL="${QT_MINIMAL:-4.7.0}"
+elif slot_is_at_least 4.5 "${KDE_MINIMAL}"; then
QT_MINIMAL="${QT_MINIMAL:-4.6.3}"
else
QT_MINIMAL="${QT_MINIMAL:-4.6.0}"
fi
+# Declarative dependencies
+qtdeclarativedepend="
+ >=x11-libs/qt-declarative-${QT_MINIMAL}:4
+"
+case ${DECLARATIVE_REQUIRED} in
+ always)
+ COMMONDEPEND+=" ${qtdeclarativedepend}"
+ ;;
+ optional)
+ IUSE+=" declarative"
+ COMMONDEPEND+=" declarative? ( ${qtdeclarativedepend} )"
+ ;;
+ *) ;;
+esac
+unset qtdeclarativedepend
+
+# QtHelp dependencies
+qthelpdepend="
+ >=x11-libs/qt-assistant-${QT_MINIMAL}:4
+"
+case ${QTHELP_REQUIRED} in
+ always)
+ COMMONDEPEND+=" ${qthelpdepend}"
+ ;;
+ optional)
+ IUSE+=" qthelp"
+ COMMONDEPEND+=" qthelp? ( ${qthelpdepend} )"
+ ;;
+esac
+unset qthelpdepend
+
# OpenGL dependencies
qtopengldepend="
>=x11-libs/qt-opengl-${QT_MINIMAL}:4
@@ -454,7 +512,7 @@
fi
case ${KDEBASE} in
kdevelop)
- EGIT_REPO_URI="git://gitorious.org/${KMNAME}/${KMMODULE}.git"
+ EGIT_REPO_URI="git://git.kde.org/${KMMODULE}"
;;
esac
fi
@@ -656,8 +714,27 @@
load_library_dependencies
fi
+ # Replace KDE4Workspace library targets
+ find "${S}" -name CMakeLists.txt \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_TASKMANAGER_(LIBRARY|LIBS)\}/taskmanager/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWORKSPACE_(LIBRARY|LIBS)\}/kworkspace/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROLIFACES_(LIBRARY|LIBS)\}/solidcontrolifaces/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROL_(LIBRARY|LIBS)\}/solidcontrol/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PROCESSUI_(LIBRARY|LIBS)\}/processui/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_LSOFUI_(LIBRARY|LIBS)\}/lsofui/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PLASMACLOCK_(LIBRARY|LIBS)\}/plasmaclock/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERYCLIENT_(LIBRARY|LIBS)\}/nepomukqueryclient/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERY_(LIBRARY|LIBS)\}/nepomukquery/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSCREENSAVER_(LIBRARY|LIBS)\}/kscreensaver/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_WEATHERION_(LIBRARY|LIBS)\}/weather_ion/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWINEFFECTS_(LIBRARY|LIBS)\}/kwineffects/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KDECORATIONS_(LIBRARY|LIBS)\}/kdecorations/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSGRD_(LIBRARY|LIBS)\}/ksgrd/g' {} + \
+ -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KEPHAL_(LIBRARY|LIBS)\}/kephal/g' {} + \
+ || die 'failed to replace KDE4Workspace library targets'
+
# Hack for manuals relying on outdated DTD, only outside kde-base/koffice/...
- if [ -z ${KDEBASE} ]; then
+ if [[ -z ${KDEBASE} ]]; then
find "${S}" -name "*.docbook" \
-exec sed -i -r \
-e 's:-//KDE//DTD DocBook XML V4\.1(\..)?-Based Variant V1\.[01]//EN:-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN:g' {} + \
@@ -755,7 +832,21 @@
cmake-utils_src_configure
kde4-base_src_compile
- cmake-utils_src_test
+ if [[ ${VIRTUALX_REQUIRED} == always ]] ||
+ ( [[ ${VIRTUALX_REQUIRED} != manual ]] && use test ); then
+
+ if [[ ${maketype} ]]; then
+ # surprise- we are already INSIDE virtualmake!!!
+ ewarn "QA Notice: This version of kde4-base.eclass includes the virtualx functionality."
+ ewarn " You may NOT set maketype or call virtualmake from the ebuild. Applying workaround."
+ cmake-utils_src_test
+ else
+ export maketype="cmake-utils_src_test"
+ virtualmake
+ fi
+ else
+ cmake-utils_src_test
+ fi
}
# @FUNCTION: kde4-base_src_install
1.37 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.37&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.37&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.36&r2=1.37
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- kde4-functions.eclass 24 Oct 2010 15:56:03 -0000 1.36
+++ kde4-functions.eclass 2 Dec 2010 21:49:54 -0000 1.37
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.36 2010/10/24 15:56:03 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.37 2010/12/02 21:49:54 alexxy Exp $
inherit versionator
@@ -136,7 +136,7 @@
enable_selected_linguas() {
debug-print-function ${FUNCNAME} "$@"
- local lingua linguas sr_mess wp
+ local x
# if there is no linguas defined we enable everything
if ! $(env | grep -q "^LINGUAS="); then
@@ -146,49 +146,18 @@
# @ECLASS-VARIABLE: KDE_LINGUAS_DIR
# @DESCRIPTION:
# Specified folder where application translations are located.
- KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="po"}
- [[ -d "${KDE_LINGUAS_DIR}" ]] || die "wrong linguas dir specified"
- comment_all_add_subdirectory "${KDE_LINGUAS_DIR}"
- pushd "${KDE_LINGUAS_DIR}" > /dev/null
-
- # fix all various crazy sr@Latn variations
- # this part is only ease for ebuilds, so there wont be any die when this
- # fail at any point
- sr_mess="sr@latn sr@latin sr@Latin"
- for wp in ${sr_mess}; do
- [[ -e "${wp}.po" ]] && mv "${wp}.po" "sr@Latn.po"
- if [[ -d "${wp}" ]]; then
- # move dir and fix cmakelists
- mv "${wp}" "sr@Latn"
- sed -i \
- -e "s:${wp}:sr@Latin:g" \
- CMakeLists.txt
- fi
- done
-
- for lingua in ${KDE_LINGUAS}; do
- if [[ -e "${lingua}.po" ]]; then
- mv "${lingua}.po" "${lingua}.po.old"
- fi
- done
-
- for lingua in ${KDE_LINGUAS}; do
- if use linguas_${lingua} ; then
- if [[ -d "${lingua}" ]]; then
- linguas="${linguas} ${lingua}"
- sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
- -e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
- -i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
- fi
- if [[ -e "${lingua}.po.old" ]]; then
- linguas="${linguas} ${lingua}"
- mv "${lingua}.po.old" "${lingua}.po"
- fi
- fi
- done
- [[ -n "${linguas}" ]] && einfo "Enabling languages: ${linguas}"
-
- popd > /dev/null
+ # Can be defined as array of folders where translations are located.
+ # Note that space separated list of dirs is not supported.
+ # Default value is set to "po".
+ if [[ "$(declare -p KDE_LINGUAS_DIR 2>/dev/null 2>&1)" == "declare -a"* ]]; then
+ debug-print "$FUNCNAME: we have these subfolders defined: ${KDE_LINGUAS_DIR}"
+ for x in "${KDE_LINGUAS_DIR[@]}"; do
+ _enable_selected_linguas_dir ${x}
+ done
+ else
+ KDE_LINGUAS_DIR=${KDE_LINGUAS_DIR:="po"}
+ _enable_selected_linguas_dir ${KDE_LINGUAS_DIR}
+ fi
}
# @FUNCTION: enable_selected_doc_linguas
@@ -388,6 +357,52 @@
RDEPEND+=" $(_do_blocker "$@")"
}
+# @FUNCTION: add_kdebase_dep
+# @DESCRIPTION:
+# Create proper dependency for kde-base/ dependencies,
+# adding SLOT when needed (and *only* when needed).
+# This takes 1 or 2 arguments. The first being the package
+# name, the optional second, is additional USE flags to append.
+# The output of this should be added directly to DEPEND/RDEPEND, and
+# may be wrapped in a USE conditional (but not an || conditional
+# without an extra set of parentheses).
+add_kdebase_dep() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ -z ${1} ]] && die "Missing parameter"
+
+ local use=${2:+,${2}}
+
+ if [[ ${KDEBASE} = kde-base ]]; then
+ # FIXME remove hack when kdepim-4.4.{6,7} is gone
+ local FIXME_PV
+ if [[ ${KMNAME} = kdepim || ${PN} = kdepim-runtime ]] && [[ ${PV} = 4.4.6* || ${PV} = 4.4.7* ]] && [[ ${1} = kdelibs || ${1} = kdepimlibs ]]; then
+ FIXME_PV=4.4.5
+ else
+ FIXME_PV=${PV}
+ fi
+
+ # if building stable-live version depend just on slot
+ # to allow merging packages against more stable basic stuff
+ case ${PV} in
+ *.9999*)
+ echo " !kdeprefix? ( >=kde-base/${1}-${SLOT}[aqua=,-kdeprefix${use}] )"
+ echo " kdeprefix? ( >=kde-base/${1}-${SLOT}:${SLOT}[aqua=,kdeprefix${use}] )"
+ ;;
+ *)
+ echo " !kdeprefix? ( >=kde-base/${1}-${FIXME_PV}[aqua=,-kdeprefix${use}] )"
+ echo " kdeprefix? ( >=kde-base/${1}-${FIXME_PV}:${SLOT}[aqua=,kdeprefix${use}] )"
+ ;;
+ esac
+ else
+ if [[ ${KDE_MINIMAL} = live ]]; then
+ echo " kde-base/${1}:${KDE_MINIMAL}[aqua=${use}]"
+ else
+ echo " >=kde-base/${1}-${KDE_MINIMAL}[aqua=${use}]"
+ fi
+ fi
+}
+
# _greater_max_in_slot ver slot
# slot must be 4.x or live
# returns true if ver is >= the maximum possibile version in slot
@@ -501,37 +516,52 @@
fi
}
-# @FUNCTION: add_kdebase_dep
-# @DESCRIPTION:
-# Create proper dependency for kde-base/ dependencies,
-# adding SLOT when needed (and *only* when needed).
-# This takes 1 or 2 arguments. The first being the package
-# name, the optional second, is additional USE flags to append.
-# The output of this should be added directly to DEPEND/RDEPEND, and
-# may be wrapped in a USE conditional (but not an || conditional
-# without an extra set of parentheses).
-add_kdebase_dep() {
- debug-print-function ${FUNCNAME} "$@"
+# local function to enable specified translations for specified directory
+# used from kde4-functions_enable_selected_linguas function
+_enable_selected_linguas_dir() {
+ local lingua linguas sr_mess wp
+ local dir=${1}
- [[ -z ${1} ]] && die "Missing parameter"
+ [[ -d "${dir}" ]] || die "linguas dir \"${dir}\" does not exist"
+ comment_all_add_subdirectory "${dir}"
+ pushd "${dir}" > /dev/null
- local use=${2:+,${2}}
+ # fix all various crazy sr@Latn variations
+ # this part is only ease for ebuilds, so there wont be any die when this
+ # fail at any point
+ sr_mess="sr@latn sr@latin sr@Latin"
+ for wp in ${sr_mess}; do
+ [[ -e "${wp}.po" ]] && mv "${wp}.po" "sr@Latn.po"
+ if [[ -d "${wp}" ]]; then
+ # move dir and fix cmakelists
+ mv "${wp}" "sr@Latn"
+ sed -i \
+ -e "s:${wp}:sr@Latin:g" \
+ CMakeLists.txt
+ fi
+ done
- if [[ ${KDEBASE} = kde-base ]]; then
- # FIXME remove hack when kdepim-4.4.{6,7} is gone
- local FIXME_PV
- if [[ ${KMNAME} = kdepim || ${PN} = kdepim-runtime ]] && [[ ${PV} = 4.4.6* || ${PV} = 4.4.7* ]] && [[ ${1} = kdelibs || ${1} = kdepimlibs ]]; then
- FIXME_PV=4.4.5
- else
- FIXME_PV=${PV}
+ for lingua in ${KDE_LINGUAS}; do
+ if [[ -e "${lingua}.po" ]]; then
+ mv "${lingua}.po" "${lingua}.po.old"
fi
- echo " !kdeprefix? ( >=kde-base/${1}-${FIXME_PV}[aqua=,-kdeprefix${use}] )"
- echo " kdeprefix? ( >=kde-base/${1}-${FIXME_PV}:${SLOT}[aqua=,kdeprefix${use}] )"
- else
- if [[ ${KDE_MINIMAL} = live ]]; then
- echo " kde-base/${1}:${KDE_MINIMAL}[aqua=${use}]"
- else
- echo " >=kde-base/${1}-${KDE_MINIMAL}[aqua=${use}]"
+ done
+
+ for lingua in ${KDE_LINGUAS}; do
+ if use linguas_${lingua} ; then
+ if [[ -d "${lingua}" ]]; then
+ linguas="${linguas} ${lingua}"
+ sed -e "/add_subdirectory([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
+ -e "/ADD_SUBDIRECTORY([[:space:]]*${lingua}[[:space:]]*)[[:space:]]*$/ s/^#DONOTCOMPILE //" \
+ -i CMakeLists.txt || die "Sed to uncomment linguas_${lingua} failed."
+ fi
+ if [[ -e "${lingua}.po.old" ]]; then
+ linguas="${linguas} ${lingua}"
+ mv "${lingua}.po.old" "${lingua}.po"
+ fi
fi
- fi
+ done
+ [[ -n "${linguas}" ]] && echo ">>> Enabling languages: ${linguas}"
+
+ popd > /dev/null
}
1.44 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.44&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.44&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.43&r2=1.44
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- kde4-meta.eclass 15 Sep 2010 11:06:33 -0000 1.43
+++ kde4-meta.eclass 2 Dec 2010 21:49:54 -0000 1.44
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.43 2010/09/15 11:06:33 reavertm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.44 2010/12/02 21:49:54 alexxy Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -356,16 +356,23 @@
;;
koffice)
KMEXTRACTONLY+="
- config-endian.h.cmake
filters/config-filters.h.cmake
- config-openexr.h.cmake
- config-opengl.h.cmake
- config-prefix.h.cmake
"
case ${PV} in
2.0.*)
KMEXTRACTONLY+="
- config-openctl.h.cmake"
+ config-openctl.h.cmake
+ config-endian.h.cmake
+ config-openexr.h.cmake
+ config-opengl.h.cmake
+ config-prefix.h.cmake"
+ ;;
+ 2.[12].*)
+ KMEXTRACTONLY+="
+ config-endian.h.cmake
+ config-openexr.h.cmake
+ config-opengl.h.cmake
+ config-prefix.h.cmake"
;;
esac
;;
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2010-12-29 17:06 Theo Chatzimichos (tampakrap)
0 siblings, 0 replies; 22+ messages in thread
From: Theo Chatzimichos (tampakrap) @ 2010-12-29 17:06 UTC (permalink / raw
To: gentoo-commits
tampakrap 10/12/29 17:06:51
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Add eclass support for kdepim 4.6beta3
This commit is useless for in tree eclasses, as this kdepim version will stay in overlay
I'm just syncing tree and overlay eclasses
Revision Changes Path
1.81 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.81&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.81&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.80&r2=1.81
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- kde4-base.eclass 29 Dec 2010 16:45:19 -0000 1.80
+++ kde4-base.eclass 29 Dec 2010 17:06:51 -0000 1.81
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.80 2010/12/29 16:45:19 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.81 2010/12/29 17:06:51 tampakrap Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -533,6 +533,10 @@
case ${KDEBASE} in
kde-base)
case ${PV} in
+ 4.5.93)
+ # Only kdepim and kdepim-runtime 4.6beta here
+ SRC_URI="mirror://kde/unstable/kdepim/${PV}/${_kmname}-4.6beta3.tar.bz2"
+ ;;
4.[456].8[05] | 4.[456].9[023568])
# Unstable KDE SC releases
SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2"
1.40 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.40&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.40&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.39&r2=1.40
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- kde4-functions.eclass 29 Dec 2010 16:45:19 -0000 1.39
+++ kde4-functions.eclass 29 Dec 2010 17:06:51 -0000 1.40
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.39 2010/12/29 16:45:19 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.40 2010/12/29 17:06:51 tampakrap Exp $
inherit versionator
@@ -381,6 +381,12 @@
else
FIXME_PV=${PV}
fi
+ # FIXME remove hack when kdepim-4.6beta is gone
+ if [[ ${KMNAME} = kdepim || ${PN} = kdepim-runtime ]] && [[ ${PV} = 4.5.93* ]] && [[ ${1} = kdelibs || ${1} = kdepimlibs ]]; then
+ FIXME_PV=4.5.90
+ else
+ FIXME_PV=${PV}
+ fi
# if building stable-live version depend just on slot
# to allow merging packages against more stable basic stuff
1.46 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.46&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.46&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.45&r2=1.46
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- kde4-meta.eclass 29 Dec 2010 16:38:50 -0000 1.45
+++ kde4-meta.eclass 29 Dec 2010 17:06:51 -0000 1.46
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.45 2010/12/29 16:38:50 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.46 2010/12/29 17:06:51 tampakrap Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -220,6 +220,11 @@
moduleprefix=apps/
KMTARPARAMS+=" --transform=s|apps/||"
;;
+ kdepim)
+ if [[ ${PV} == 4.5.93 ]] ; then
+ tarball="kdepim-4.6beta3.tar.${postfix}"
+ fi
+ ;;
*)
# Create tarball name from module name (this is the default)
tarball="${KMNAME}-${PV}.tar.${postfix}"
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2011-06-06 17:51 Jonathan Callen (abcd)
0 siblings, 0 replies; 22+ messages in thread
From: Jonathan Callen (abcd) @ 2011-06-06 17:51 UTC (permalink / raw
To: gentoo-commits
abcd 11/06/06 17:51:27
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Sync kde eclasses from overlay
Revision Changes Path
1.94 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.94&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.94&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.93&r2=1.94
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -r1.93 -r1.94
--- kde4-base.eclass 23 May 2011 22:56:36 -0000 1.93
+++ kde4-base.eclass 6 Jun 2011 17:51:26 -0000 1.94
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.93 2011/05/23 22:56:36 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.94 2011/06/06 17:51:26 abcd Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -133,12 +133,6 @@
# This variable must be set before inheriting any eclasses. Defaults to 'never'.
MULTIMEDIA_REQUIRED="${MULTIMEDIA_REQUIRED:-never}"
-# @ECLASS-VARIABLE: WEBKIT_REQUIRED
-# @DESCRIPTION:
-# Is qt-webkit requred? Possible values are 'always', 'optional' and 'never'.
-# This variable must be set before inheriting any eclasses. Defaults to 'never'.
-WEBKIT_REQUIRED="${WEBKIT_REQUIRED:-never}"
-
# @ECLASS-VARIABLE: CPPUNIT_REQUIRED
# @DESCRIPTION:
# Is cppunit required for tests? Possible values are 'always', 'optional' and 'never'.
@@ -280,32 +274,6 @@
esac
unset qtmultimediadepend
-# WebKit dependencies
-case ${KDE_REQUIRED} in
- always)
- qtwebkitusedeps="[kde]"
- ;;
- optional)
- qtwebkitusedeps="[kde?]"
- ;;
- *) ;;
-esac
-qtwebkitdepend="
- >=x11-libs/qt-webkit-${QT_MINIMAL}:4${qtwebkitusedeps}
-"
-unset qtwebkitusedeps
-case ${WEBKIT_REQUIRED} in
- always)
- COMMONDEPEND+=" ${qtwebkitdepend}"
- ;;
- optional)
- IUSE+=" webkit"
- COMMONDEPEND+=" webkit? ( ${qtwebkitdepend} )"
- ;;
- *) ;;
-esac
-unset qtwebkitdepend
-
# CppUnit dependencies
cppuintdepend="
dev-util/cppunit
@@ -322,6 +290,17 @@
esac
unset cppuintdepend
+
+# WebKit use dependencies
+case ${KDE_REQUIRED} in
+ always)
+ qtwebkitusedeps="[kde]"
+ ;;
+ optional)
+ qtwebkitusedeps="[kde?]"
+ ;;
+ *) ;;
+esac
# KDE dependencies
# Qt accessibility classes are needed in various places, bug 325461
kdecommondepend="
@@ -333,6 +312,7 @@
>=x11-libs/qt-sql-${QT_MINIMAL}:4[qt3support]
>=x11-libs/qt-svg-${QT_MINIMAL}:4
>=x11-libs/qt-test-${QT_MINIMAL}:4
+ >=x11-libs/qt-webkit-${QT_MINIMAL}:4${qtwebkitusedeps}
!aqua? (
x11-libs/libXext
x11-libs/libXt
@@ -601,9 +581,12 @@
*)
# set EGIT_BRANCH and EGIT_COMMIT to ${SLOT}
case ${_kmname} in
- kdeplasma-addons | kdepim | kdepim-runtime | kdepimlibs)
+ kdeplasma-addons | kdepim | kdepim-runtime | kdepimlibs | okular)
EGIT_BRANCH="${SLOT}"
;;
+ marble)
+ EGIT_BRANCH="kde-${SLOT}"
+ ;;
*) EGIT_BRANCH="KDE/${SLOT}" ;;
esac
;;
1.49 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.49&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.49&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.48&r2=1.49
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- kde4-functions.eclass 24 May 2011 20:54:58 -0000 1.48
+++ kde4-functions.eclass 6 Jun 2011 17:51:26 -0000 1.49
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.48 2011/05/24 20:54:58 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.49 2011/06/06 17:51:26 abcd Exp $
inherit versionator
@@ -79,6 +79,9 @@
KDE_SCM="git"
EGIT_REPONAME=${EGIT_REPONAME:=kde-baseapps}
;;
+ kde-workspace|kde-runtime|kde-baseapps)
+ KDE_SCM="git"
+ ;;
esac
fi
1.53 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.53&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.53&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.52&r2=1.53
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -r1.52 -r1.53
--- kde4-meta.eclass 1 May 2011 13:52:09 -0000 1.52
+++ kde4-meta.eclass 6 Jun 2011 17:51:26 -0000 1.53
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.52 2011/05/01 13:52:09 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.53 2011/06/06 17:51:26 abcd Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -21,7 +21,7 @@
# Add dependencies that all packages in a certain module share.
case ${KMNAME} in
- kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
+ kdebase|kdebase-apps|kde-baseapps|kdebase-workspace|kde-workspace|kdebase-runtime|kde-runtime|kdegraphics)
COMMONDEPEND+=" >=media-libs/qimageblitz-0.0.4"
;;
kdepim|kdepim-runtime)
@@ -239,8 +239,7 @@
kde4-meta_create_extractlists
- for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake \
- AUTHORS COPYING INSTALL README NEWS ChangeLog
+ for f in cmake/ CMakeLists.txt ConfigureChecks.cmake config.h.cmake
do
extractlist+=" ${topdir}${moduleprefix}${f}"
done
@@ -261,7 +260,9 @@
fi
# Default $S is based on $P; rename the extracted directory to match $S if necessary
- mv ${topdir} ${P} || die "Died while moving \"${topdir}\" to \"${P}\""
+ if [[ ${KMNAME} != ${PN} ]]; then
+ mv ${topdir} ${P} || die "Died while moving \"${topdir}\" to \"${P}\""
+ fi
popd > /dev/null
@@ -322,16 +323,16 @@
ConfigureChecks.cmake"
fi
;;
- kdebase-apps)
+ kdebase-apps | kde-baseapps)
KMEXTRACTONLY+="
config-apps.h.cmake
ConfigureChecks.cmake"
;;
- kdebase-runtime)
+ kdebase-runtime | kde-runtime)
KMEXTRACTONLY+="
config-runtime.h.cmake"
;;
- kdebase-workspace)
+ kdebase-workspace | kde-workspace)
KMEXTRACTONLY+="
config-unix.h.cmake
ConfigureChecks.cmake
@@ -392,7 +393,7 @@
# should not try in that case
if [[ ${KMNAME} != kdegraphics ]] || { [[ ${SLOT} != 4.6 || ${PV} < 4.6.2 ]] && ! slot_is_at_least 4.7 ${SLOT}; }; then
case ${KMNAME} in
- kdebase-runtime|kdebase-workspace|kdeedu|kdegames|kdegraphics)
+ kdebase-runtime|kde-runtime|kdebase-workspace|kde-workspace|kdeedu|kdegames|kdegraphics)
case ${PN} in
libkdegames|libkdeedu|libkworkspace)
KMEXTRA+="
@@ -560,7 +561,7 @@
done
case ${KMNAME} in
- kdebase-workspace)
+ kdebase-workspace | kde-workspace)
# COLLISION PROTECT section
# Install the startkde script just once, as a part of kde-base/kdebase-startkde,
# not as a part of every package.
@@ -575,7 +576,7 @@
-i CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
fi
;;
- kdebase-runtime)
+ kdebase-runtime | kde-runtime)
# COLLISION PROTECT section
# Only install the kde4 script as part of kde-base/kdebase-data
if [[ ${PN} != kdebase-data && -f CMakeLists.txt ]]; then
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2011-06-15 0:11 Jonathan Callen (abcd)
0 siblings, 0 replies; 22+ messages in thread
From: Jonathan Callen (abcd) @ 2011-06-15 0:11 UTC (permalink / raw
To: gentoo-commits
abcd 11/06/15 00:11:05
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
Sync eclasses from overlay
Revision Changes Path
1.99 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.99&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.99&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.98&r2=1.99
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -r1.98 -r1.99
--- kde4-base.eclass 9 Jun 2011 21:05:45 -0000 1.98
+++ kde4-base.eclass 15 Jun 2011 00:11:05 -0000 1.99
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.98 2011/06/09 21:05:45 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.99 2011/06/15 00:11:05 abcd Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -572,6 +572,9 @@
kdeplasma-addons | kdepim | kdepim-runtime | kdepimlibs | okular)
EGIT_BRANCH="$(get_kde_version)"
;;
+ kdeedu)
+ EGIT_BRANCH="$(get_kde_version)"
+ ;;
marble)
EGIT_BRANCH="kde-$(get_kde_version)"
;;
@@ -580,7 +583,14 @@
;;
esac
- EGIT_REPO_URI="${EGIT_MIRROR}/${_kmname}"
+ # default repo uri
+ case ${_kmname} in
+ kdeedu)
+ EGIT_REPO_URI="${EGIT_MIRROR}/${PN}"
+ ;;
+ *)
+ EGIT_REPO_URI="${EGIT_MIRROR}/${_kmname}"
+ esac
debug-print "${FUNCNAME}: Repository: ${EGIT_REPO_URI}"
debug-print "${FUNCNAME}: Branch: ${EGIT_BRANCH}"
1.52 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.52&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.52&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.51&r2=1.52
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -r1.51 -r1.52
--- kde4-functions.eclass 7 Jun 2011 20:11:04 -0000 1.51
+++ kde4-functions.eclass 15 Jun 2011 00:11:05 -0000 1.52
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.51 2011/06/07 20:11:04 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.52 2011/06/15 00:11:05 abcd Exp $
inherit versionator
@@ -120,26 +120,24 @@
# We no longer need to run kbuildsycoca4, as kded does that automatically, as needed
# fix permission for some directories
- for x in share/{config,kde4}; do
- [[ ${KDEDIR} == /usr ]] && DIRS=${EROOT}usr || DIRS="${EROOT}usr ${EROOT}${KDEDIR}"
- for y in ${DIRS}; do
- [[ -d "${y}/${x}" ]] || break # nothing to do if directory does not exist
- # fixes Bug 318237
- if use userland_BSD ; then
- [[ $(stat -f %p "${y}/${x}") != 40755 ]]
- local stat_rtn="$?"
- else
- [[ $(stat --format=%a "${y}/${x}") != 755 ]]
- local stat_rtn=$?
- fi
- if [[ $stat_rtn != 1 ]] ; then
- ewarn "QA Notice:"
- ewarn "Package ${PN} is breaking ${y}/${x} permissions."
- ewarn "Please report this issue to gentoo bugzilla."
- einfo "Permissions will get adjusted automatically now."
- find "${y}/${x}" -type d -print0 | xargs -0 chmod 755
- fi
- done
+ for x in usr/share/{config,kde4}; do
+ DIRS=${EROOT}usr
+ [[ -d "${EROOT}${x}" ]] || break # nothing to do if directory does not exist
+ # fixes Bug 318237
+ if use userland_BSD ; then
+ [[ $(stat -f %p "${EROOT}${x}") != 40755 ]]
+ local stat_rtn="$?"
+ else
+ [[ $(stat --format=%a "${EROOT}${x}") != 755 ]]
+ local stat_rtn=$?
+ fi
+ if [[ $stat_rtn != 1 ]] ; then
+ ewarn "QA Notice:"
+ ewarn "Package ${PN} is breaking ${EROOT}${x} permissions."
+ ewarn "Please report this issue to gentoo bugzilla."
+ einfo "Permissions will get adjusted automatically now."
+ find "${EROOT}${x}" -type d -print0 | xargs -0 chmod 755
+ fi
done
}
@@ -344,8 +342,15 @@
# Create blocks for the current package in other slots
block_other_slots() {
debug-print-function ${FUNCNAME} "$@"
+ local slot
- _do_blocker ${PN} 0:${SLOT}
+ # Temporary HACK, remove this function after slotmove
+ # (moved from _do_blocker, as this only needs a very specialized listing)
+ for slot in "${KDE_SLOTS[@]}" "${KDE_LIVE_SLOTS[@]}"; do
+ if [[ ${slot} != ${SLOT} ]]; then
+ echo " !kde-base/${PN}:${slot}"
+ fi
+ done
}
# @FUNCTION: add_blocker
@@ -354,26 +359,21 @@
# Useful for file-collision blocks.
# Parameters are package and version(s) to block.
# add_blocker kdelibs 4.2.4
-# If no version is specified, then all versions will be blocked
-# If any arguments (from 2 on) contain a ":", then different versions
-# are blocked in different slots. (Unlisted slots get the version without
-# a ":", if none, then all versions are blocked). The parameter is then of
-# the form VERSION:SLOT. Any VERSION of 0 means that no blocker will be
-# added for that slot (or, if no slot, then for any unlisted slot).
-# A parameter of the form :SLOT means to block all versions from that slot.
-# If VERSION begins with "<", then "!<foo" will be used instead of "!<=foo".
-# As a special case, if a parameter with slot "3.5" is passed, then that slot
-# may also be blocked.
+# If no version is specified, then all versions will be blocked.
+# If the version is 0, then no versions will be blocked.
+# If a second version ending in ":3.5" is passed, then the version listed for
+# that slot will be blocked as well.
+#
+# Examples:
+# # Block all versions of kdelibs
+# add_blocker kdelibs
#
-# Versions that match "4.x.50" are equivalent to all slots up to (and including)
-# "4.x", but nothing following slot "4.x"
+# # Block all versions of kdelibs older than 4.3.50
+# add_blocker kdelibs 4.3.50
#
-# As an example, if SLOT=live, then
-# add_blocker kdelibs 0 :4.3 '<4.3.96:4.4' 9999:live
-# will add the following to RDEPEND:
-# !kde-base/kdelibs:4.3
-# !<kde-base/kdelibs-4.3.96:4.4
-# !<=kde-base/kdelibs-9999:live
+# # Block kdelibs 3.5.10 and older, but not any version of
+# # kdelibs from KDE 4
+# add_blocker kdelibs 0 3.5.10:3.5
add_blocker() {
debug-print-function ${FUNCNAME} "$@"
@@ -401,12 +401,6 @@
ver=${KDE_OVERRIDE_MINIMAL}
elif [[ ${KDEBASE} != kde-base ]]; then
ver=${KDE_MINIMAL}
- # FIXME remove hack when kdepim-4.4.* is gone
- elif [[ ( ${KMNAME} == kdepim || ${PN} == kdepim-runtime ) && $(get_kde_version) == 4.4 && ${1} =~ ^(kde(pim)?libs|oxygen-icons)$ ]]; then
- ver=4.4.5
- # FIXME remove hack when kdepim-4.6beta is gone
- elif [[ ( ${KMNAME} == kdepim || ${PN} == kdepim-runtime ) && ${PV} == 4.5.98 && ${1} =~ ^(kde(pim)?libs|oxygen-icons)$ ]]; then
- ver=4.5.90
# if building stable-live version depend just on slot
# to allow merging packages against more stable basic stuff
elif [[ ${PV} == *.9999 ]]; then
@@ -417,13 +411,7 @@
[[ -z ${1} ]] && die "Missing parameter"
- local use=${2:+,${2}}
-
- if [[ ${ver} == live ]]; then
- echo " kde-base/${1}:live[aqua=${use}]"
- else
- echo " >=kde-base/${1}-${ver}[aqua=${use}]"
- fi
+ echo " >=kde-base/${1}-${ver}[aqua=${2:+,${2}}]"
}
# _greater_max_in_slot ver slot
@@ -472,53 +460,24 @@
pkg=${pkg%\[*\]}
fi
- local param slot def="unset" var atom
- # The following variables will hold parameters that contain ":"
- # - block_3_5
- # - block_4_1
- # - block_4_2
- # - block_4_3
- # - block_4_4
- # - block_live
- for slot in 3.5 ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
- local block_${slot//./_}="unset"
- done
-
- # This construct goes through each parameter passed, and sets
- # either def or block_* to the version passed
- for param; do
- # If the parameter does not have a ":" in it...
- if [[ ${param/:} == ${param} ]]; then
- def=${param}
- else # the parameter *does* have a ":" in it
- # so everything after the : is the slot...
- slot=${param#*:}
- # ...and everything before the : is the version
- local block_${slot//./_}=${param%:*}
- fi
- done
+ local slot ver="$1" atom old_ver="unset"
+ [[ "$2" == *:3.5 ]] && old_ver=${2::-4}
for slot in ${KDE_SLOTS[@]} ${KDE_LIVE_SLOTS[@]}; do
- # ${var} contains the name of the variable we care about for this slot
- # ${!var} is it's value
- var=block_${slot//./_}
- # if we didn't pass *:${slot}, then use the unsloted value
- [[ ${!var} == "unset" ]] && var=def
-
# If no version was passed, or the version is greater than the maximum
# possible version in this slot, block all versions in this slot
- if [[ ${!var} == "unset" ]] || [[ -z ${!var} ]] || _greater_max_in_slot ${!var#<} ${slot}; then
+ if [[ ${ver} == "unset" ]] || [[ -z ${ver} ]] || _greater_max_in_slot ${ver#<} ${slot}; then
atom=${pkg}
# If the version is "0" or less than the minimum possible version in
# this slot, do nothing
- elif [[ ${!var} == "0" ]] || _less_min_in_slot ${!var#<} ${slot}; then
+ elif [[ ${ver} == "0" ]] || _less_min_in_slot ${ver#<} ${slot}; then
continue
# If the version passed begins with a "<", then use "<" instead of "<="
- elif [[ ${!var:0:1} == "<" ]]; then
+ elif [[ ${ver::1} == "<" ]]; then
# this also removes the first character of the version, which is a "<"
- atom="<${pkg}-${!var:1}"
+ atom="<${pkg}-${ver:1}"
else
- atom="<=${pkg}-${!var}"
+ atom="<=${pkg}-${ver}"
fi
echo " !${atom}:${slot}${use:+[${use}]}"
done
@@ -527,13 +486,13 @@
# default version passed, and no blocker is output *unless* a version
# is passed, or ":3.5" is passed to explicitly request a block on all
# 3.5 versions.
- if [[ ${block_3_5} != "unset" && ${block_3_5} != "0" ]]; then
- if [[ -z ${block_3_5} ]]; then
+ if [[ ${old_ver} != "unset" && ${old_ver} != "0" ]]; then
+ if [[ -z ${old_ver} ]]; then
atom=${pkg}
- elif [[ ${block_3_5:0:1} == "<" ]]; then
- atom="<${pkg}-${block_3_5:1}"
+ elif [[ ${old_ver::1} == "<" ]]; then
+ atom="<${pkg}-${old_ver:1}"
else
- atom="<=${pkg}-${block_3_5}"
+ atom="<=${pkg}-${old_ver}"
fi
echo " !${atom}:3.5${use:+[${use}]}"
fi
@@ -597,9 +556,9 @@
local major=$(get_major_version ${ver})
local minor=$(get_version_component_range 2 ${ver})
local micro=$(get_version_component_range 3 ${ver})
- [[ ${ver} == 9999 ]] && echo live
- (( major == 4 && micro == 9999 )) && echo ${major}.${minor}
- if (( major == 4 && micro != 9999 )); then
+ if [[ ${ver} == 9999 ]]; then
+ echo live
+ else
(( micro < 50 )) && echo ${major}.${minor} || echo ${major}.$((minor + 1))
fi
}
1.55 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.55&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.55&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.54&r2=1.55
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -r1.54 -r1.55
--- kde4-meta.eclass 7 Jun 2011 20:11:04 -0000 1.54
+++ kde4-meta.eclass 15 Jun 2011 00:11:05 -0000 1.55
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.54 2011/06/07 20:11:04 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.55 2011/06/15 00:11:05 abcd Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -180,29 +180,29 @@
case ${KDE_SCM} in
svn)
- local rsync_options subdir kmnamedir targetdir wc_path escm
+ local rsync_options subdir targetdir wc_path escm
rsync_options="--group --links --owner --perms --quiet --exclude=.svn/ --exclude=.git/"
wc_path="${ESVN_WC_PATH}"
escm="{ESVN}"
# Copy ${KMNAME} non-recursively (toplevel files)
- rsync ${rsync_options} "${wc_path}"/${kmnamedir}* "${S}" \
+ rsync ${rsync_options} "${wc_path}"/* "${S}" \
|| die "${escm}: can't export toplevel files to '${S}'."
# Copy cmake directory
- if [[ -d "${wc_path}/${kmnamedir}cmake" ]]; then
- rsync --recursive ${rsync_options} "${wc_path}/${kmnamedir}cmake" "${S}" \
+ if [[ -d "${wc_path}/cmake" ]]; then
+ rsync --recursive ${rsync_options} "${wc_path}/cmake" "${S}" \
|| die "${escm}: can't export cmake files to '${S}'."
fi
# Copy all subdirectories
for subdir in $(__list_needed_subdirectories); do
targetdir=""
- if [[ $subdir = doc/* && ! -e "$wc_path/$kmnamedir$subdir" ]]; then
+ if [[ $subdir = doc/* && ! -e "$wc_path/$subdir" ]]; then
continue
fi
[[ ${subdir%/} = */* ]] && targetdir=${subdir%/} && targetdir=${targetdir%/*} && mkdir -p "${S}/${targetdir}"
- rsync --recursive ${rsync_options} "${wc_path}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \
+ rsync --recursive ${rsync_options} "${wc_path}/${subdir%/}" "${S}/${targetdir}" \
|| die "${escm}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'."
done
;;
@@ -305,7 +305,7 @@
# Note that this actually doesn't include KMEXTRA handling.
# In those cases you should care to add the relevant files to KMEXTRACTONLY
case ${KMNAME} in
- kdebase | kdebase-apps | kde-base-apps)
+ kdebase | kdebase-apps | kde-baseapps)
KMEXTRACTONLY+="
config-apps.h.cmake
ConfigureChecks.cmake"
^ permalink raw reply [flat|nested] 22+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2011-10-06 14:13 Alexey Shvetsov (alexxy)
0 siblings, 0 replies; 22+ messages in thread
From: Alexey Shvetsov (alexxy) @ 2011-10-06 14:13 UTC (permalink / raw
To: gentoo-commits
alexxy 11/10/06 14:13:29
Modified: kde4-base.eclass kde4-functions.eclass
kde4-meta.eclass
Log:
[eclass] Update kde eclasses
Revision Changes Path
1.108 eclass/kde4-base.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.108&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?rev=1.108&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-base.eclass?r1=1.107&r2=1.108
Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -r1.107 -r1.108
--- kde4-base.eclass 7 Sep 2011 17:34:04 -0000 1.107
+++ kde4-base.eclass 6 Oct 2011 14:13:29 -0000 1.108
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.107 2011/09/07 17:34:04 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.108 2011/10/06 14:13:29 alexxy Exp $
# @ECLASS: kde4-base.eclass
# @MAINTAINER:
@@ -569,38 +569,8 @@
fi
# default branching
- case ${PV} in
- 9999*) ;;
- *)
- # set EGIT_BRANCH and EGIT_COMMIT to $(get_kde_version)
- # every package is listed explicitly now, as upstream
- # seems to love being different :(
- case ${_kmname} in
- ark|blinken|cantor|filelight|kalgebra|kalzium|kanagram|kbruch| \
- kcalc|kcharselect|kdeplasma-addons|kdepim|kdepim-runtime|kdepimlibs| \
- kdf|kfloppy|kgeography|kgpg|khangman|kig|kiten|klettres|kmplot|kremotecontrol| \
- kstars|ktimer|ktouch|kturtle|kwallet|kwordquiz|libkdeedu|mobipocket| \
- okular|parley|printer-applet|rocs|step|superkaramba|sweeper)
- EGIT_BRANCH="$(get_kde_version)"
- ;;
- marble)
- EGIT_BRANCH="kde-$(get_kde_version)"
- ;;
- gwenview|jovie|kaccessible|kamera|kate|kcolorchooser|kde-baseapps| \
- kde-runtime|kde-workspace|kgamma| \
- kdegraphics-strigi-analyzer|kdegraphics-thumbnailers| \
- kdelibs|kimono|kmag|kmousetool|kmouth|kolourpaint|konsole|korundum| \
- kross-interpreters|kruler|ksaneplugin|ksnapshot| \
- libkdcraw|libkexiv2|libkipi|libksane|perlqt|perlkde| \
- pykde4|qtruby|qyoto|smokegen|smokekde|smokeqt|svgpart)
- EGIT_BRANCH="KDE/$(get_kde_version)"
- ;;
- *)
- ewarn "Unknown KMNAME ${_kmname}: Guessing branch name 'KDE/$(get_kde_version)'"
- EGIT_BRANCH="KDE/$(get_kde_version)" ;;
- esac
- ;;
- esac
+ [[ ${PV} != 9999* && ${KDEBASE} == kde-base ]] && \
+ EGIT_BRANCH="KDE/$(get_kde_version)"
# default repo uri
EGIT_REPO_URI="${EGIT_MIRROR}/${_kmname}"
@@ -749,21 +719,23 @@
# Replace KDE4Workspace library targets
find "${S}" -name CMakeLists.txt \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_TASKMANAGER_(LIBRARY|LIBS)\}/taskmanager/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWORKSPACE_(LIBRARY|LIBS)\}/kworkspace/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROLIFACES_(LIBRARY|LIBS)\}/solidcontrolifaces/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROL_(LIBRARY|LIBS)\}/solidcontrol/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PROCESSUI_(LIBRARY|LIBS)\}/processui/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_LSOFUI_(LIBRARY|LIBS)\}/lsofui/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_PLASMACLOCK_(LIBRARY|LIBS)\}/plasmaclock/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERYCLIENT_(LIBRARY|LIBS)\}/nepomukqueryclient/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERY_(LIBRARY|LIBS)\}/nepomukquery/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSCREENSAVER_(LIBRARY|LIBS)\}/kscreensaver/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_WEATHERION_(LIBRARY|LIBS)\}/weather_ion/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KWINEFFECTS_(LIBRARY|LIBS)\}/kwineffects/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KDECORATIONS_(LIBRARY|LIBS)\}/kdecorations/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KSGRD_(LIBRARY|LIBS)\}/ksgrd/g' {} + \
- -exec sed -i -r -e 's/\$\{KDE4WORKSPACE_KEPHAL_(LIBRARY|LIBS)\}/kephal/g' {} + \
+ -exec sed -i -r \
+ -e 's/\$\{KDE4WORKSPACE_TASKMANAGER_(LIBRARY|LIBS)\}/taskmanager/g' \
+ -e 's/\$\{KDE4WORKSPACE_KWORKSPACE_(LIBRARY|LIBS)\}/kworkspace/g' \
+ -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROLIFACES_(LIBRARY|LIBS)\}/solidcontrolifaces/g' \
+ -e 's/\$\{KDE4WORKSPACE_SOLIDCONTROL_(LIBRARY|LIBS)\}/solidcontrol/g' \
+ -e 's/\$\{KDE4WORKSPACE_PROCESSUI_(LIBRARY|LIBS)\}/processui/g' \
+ -e 's/\$\{KDE4WORKSPACE_LSOFUI_(LIBRARY|LIBS)\}/lsofui/g' \
+ -e 's/\$\{KDE4WORKSPACE_PLASMACLOCK_(LIBRARY|LIBS)\}/plasmaclock/g' \
+ -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERYCLIENT_(LIBRARY|LIBS)\}/nepomukqueryclient/g' \
+ -e 's/\$\{KDE4WORKSPACE_NEPOMUKQUERY_(LIBRARY|LIBS)\}/nepomukquery/g' \
+ -e 's/\$\{KDE4WORKSPACE_KSCREENSAVER_(LIBRARY|LIBS)\}/kscreensaver/g' \
+ -e 's/\$\{KDE4WORKSPACE_WEATHERION_(LIBRARY|LIBS)\}/weather_ion/g' \
+ -e 's/\$\{KDE4WORKSPACE_KWINEFFECTS_(LIBRARY|LIBS)\}/kwineffects/g' \
+ -e 's/\$\{KDE4WORKSPACE_KDECORATIONS_(LIBRARY|LIBS)\}/kdecorations/g' \
+ -e 's/\$\{KDE4WORKSPACE_KSGRD_(LIBRARY|LIBS)\}/ksgrd/g' \
+ -e 's/\$\{KDE4WORKSPACE_KEPHAL_(LIBRARY|LIBS)\}/kephal/g' \
+ {} + \
|| die 'failed to replace KDE4Workspace library targets'
# Hack for manuals relying on outdated DTD, only outside kde-base/koffice/...
1.57 eclass/kde4-functions.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.57&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?rev=1.57&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-functions.eclass?r1=1.56&r2=1.57
Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- kde4-functions.eclass 22 Aug 2011 04:46:32 -0000 1.56
+++ kde4-functions.eclass 6 Oct 2011 14:13:29 -0000 1.57
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.56 2011/08/22 04:46:32 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.57 2011/10/06 14:13:29 alexxy Exp $
inherit versionator
@@ -418,6 +418,11 @@
[[ -z ${1} ]] && die "Missing parameter"
+ # There will be no kdelibs 4.8+ (the next kdelibs will be a non-BC 5.0, apparently)
+ if [[ ${1} == kdelibs ]] && version_is_at_least 4.7.50 ${ver}; then
+ ver=4.7.1
+ fi
+
echo " >=kde-base/${1}-${ver}:4[aqua=${2:+,${2}}]"
}
1.57 eclass/kde4-meta.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.57&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?rev=1.57&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kde4-meta.eclass?r1=1.56&r2=1.57
Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- kde4-meta.eclass 10 Jul 2011 17:53:37 -0000 1.56
+++ kde4-meta.eclass 6 Oct 2011 14:13:29 -0000 1.57
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.56 2011/07/10 17:53:37 tampakrap Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.57 2011/10/06 14:13:29 alexxy Exp $
#
# @ECLASS: kde4-meta.eclass
# @MAINTAINER:
@@ -559,7 +559,11 @@
# Strip EXPORT feature section from workspace for KDE4 versions > 4.1.82
if [[ ${PN} != libkworkspace ]]; then
sed -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
- -i CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
+ -i CMakeLists.txt || die "${LINENO}: sed died in kde-workspace strip config install and fix EXPORT section"
+ fi
+ if [[ ${PN} != plasma-workspace ]]; then
+ sed -e '/KActivities/s/REQUIRED//' \
+ -i CMakeLists.txt || die "${LINENO}: sed died in kde-workspace dep reduction section"
fi
;;
kdebase-runtime | kde-runtime)
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2011-10-06 14:13 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-15 15:19 [gentoo-commits] gentoo-x86 commit in eclass: kde4-base.eclass kde4-functions.eclass kde4-meta.eclass Maciej Mrozowski (reavertm)
-- strict thread matches above, loose matches on Subject: below --
2011-10-06 14:13 Alexey Shvetsov (alexxy)
2011-06-15 0:11 Jonathan Callen (abcd)
2011-06-06 17:51 Jonathan Callen (abcd)
2010-12-29 17:06 Theo Chatzimichos (tampakrap)
2010-12-02 21:49 Alexey Shvetsov (alexxy)
2010-09-11 4:25 Maciej Mrozowski (reavertm)
2010-02-02 14:20 Maciej Mrozowski (reavertm)
2009-12-01 10:56 Tomas Chvatal (scarabeus)
2009-10-06 18:02 Alexey Shvetsov (alexxy)
2009-08-20 9:18 Tomas Chvatal (scarabeus)
2009-08-03 21:59 Alex Alexander (wired)
2009-06-04 9:29 Tomas Chvatal (scarabeus)
2009-05-28 9:47 Tomas Chvatal (scarabeus)
2009-05-09 13:23 Tomas Chvatal (scarabeus)
2009-04-13 0:02 Tomas Chvatal (scarabeus)
2009-03-09 19:41 Tomas Chvatal (scarabeus)
2009-03-01 11:44 Tomas Chvatal (scarabeus)
2009-01-12 19:40 Tomas Chvatal (scarabeus)
2009-01-12 17:25 Tomas Chvatal (scarabeus)
2008-10-02 6:49 Jorge Manuel B. S. Vicetto (jmbsvicetto)
2008-05-15 19:49 Ingmar Vanhassel (ingmar)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox