diff options
author | Ingmar Vanhassel <ingmar@gentoo.org> | 2008-05-15 19:49:32 +0000 |
---|---|---|
committer | Ingmar Vanhassel <ingmar@gentoo.org> | 2008-05-15 19:49:32 +0000 |
commit | 78962fa759a8e482293def29bedcebd6f5eb6edf (patch) | |
tree | c4396f831a79479791ad5b67088b05723cb3d8a0 /eclass | |
parent | add ~x86, bug #222011 (diff) | |
download | gentoo-2-78962fa759a8e482293def29bedcebd6f5eb6edf.tar.gz gentoo-2-78962fa759a8e482293def29bedcebd6f5eb6edf.tar.bz2 gentoo-2-78962fa759a8e482293def29bedcebd6f5eb6edf.zip |
Eclass updates for KDE 4.0.4, thanks to Bo Ørsted Andresen & Jorge Manuel B. S. Vicetto.
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/kde4-base.eclass | 59 | ||||
-rw-r--r-- | eclass/kde4-functions.eclass | 52 | ||||
-rw-r--r-- | eclass/kde4-meta.eclass | 122 |
3 files changed, 148 insertions, 85 deletions
diff --git a/eclass/kde4-base.eclass b/eclass/kde4-base.eclass index b4be8d8e0819..b1cb90573eb6 100644 --- a/eclass/kde4-base.eclass +++ b/eclass/kde4-base.eclass @@ -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 @@ inherit base eutils multilib cmake-utils kde4-functions 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 @@ kde4-base_set_qt_dependencies() { 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 @@ kde4-base_pkg_setup() { 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 diff --git a/eclass/kde4-functions.eclass b/eclass/kde4-functions.eclass index 39fc3d08a0c9..bae292afe818 100644 --- a/eclass/kde4-functions.eclass +++ b/eclass/kde4-functions.eclass @@ -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/kde-menu 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/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 @@ -155,11 +157,13 @@ 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/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/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 @@ -178,6 +183,7 @@ 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 @@ -192,6 +198,7 @@ kde-base/kdegraphics kde-base/ksnapshot 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/kcalc 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 @@ is-parent-package() { 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 @@ buildsycoca() { 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 @@ buildsycoca() { # 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 @@ enable_selected_linguas() { 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 @@ kde4-functions_check_use() { 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." diff --git a/eclass/kde4-meta.eclass b/eclass/kde4-meta.eclass index 7224893c300f..34db91a75ec4 100644 --- a/eclass/kde4-meta.eclass +++ b/eclass/kde4-meta.eclass @@ -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 @@ case ${KDEBASE} in 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 @@ case ${KMNAME} in 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_pkg_setup() { 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 @@ kde4-meta_create_extractlists() { 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 @@ __list_needed_subdirectories() { 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 @@ __list_needed_subdirectories() { 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 @@ _change_cmakelists_parent_dirs() { 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 @@ kde4-meta_change_cmakelists() { 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 @@ kde4-meta_change_cmakelists() { 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 @@ kde4-meta_change_cmakelists() { 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_install() { kde4-meta_src_make_doc cmake-utils_src_install + + if [[ -n ${KMSAVELIBS} ]] ; then + install_library_dependencies + fi } # @FUNCTION: kde4-meta_src_make_doc |