diff options
-rw-r--r-- | eclass/ChangeLog | 8 | ||||
-rw-r--r-- | eclass/kde4-base.eclass | 53 | ||||
-rw-r--r-- | eclass/kde4-functions.eclass | 7 | ||||
-rw-r--r-- | eclass/kde4-meta.eclass | 5 |
4 files changed, 38 insertions, 35 deletions
diff --git a/eclass/ChangeLog b/eclass/ChangeLog index efa0857e9822..4b645640b57b 100644 --- a/eclass/ChangeLog +++ b/eclass/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for eclass directory # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.47 2011/12/17 03:57:38 reavertm Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.48 2011/12/18 00:00:45 dilfridge Exp $ + + 18 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> kde4-base.eclass, + kde4-functions.eclass, kde4-meta.eclass: + Re-sync kde4 eclasses with kde overlay: remove libkworkspace target hacks + (requires libkworkspace rebuild), force qt-4.7.4 for kde-4.8, properly treat + kde-4.[789] version numbers, warn if the handbook useflag is added manually 17 Dec 2011; Maciej Mrozowski <reavertm@gentoo.org> eutils.eclass: Revert old eshopts_{pop,push} implementations until new ones pass unit tests. diff --git a/eclass/kde4-base.eclass b/eclass/kde4-base.eclass index 0600665c729a..a9036ed760d6 100644 --- a/eclass/kde4-base.eclass +++ b/eclass/kde4-base.eclass @@ -1,6 +1,6 @@ -# Copyright 1999-2010 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.110 2011/10/29 15:07:16 abcd Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.111 2011/12/18 00:00:45 dilfridge Exp $ # @ECLASS: kde4-base.eclass # @MAINTAINER: @@ -13,6 +13,13 @@ # NOTE: KDE 4 ebuilds currently support EAPI "3". This will be reviewed # over time as new EAPI versions are approved. +# @ECLASS-VARIABLE: KDE_SELINUX_MODULE +# @DESCRIPTION: +# If set to "none", do nothing. +# For any other value, add selinux to IUSE, and depending on that useflag +# add a dependency on sec-policy/selinux-${KDE_SELINUX_MODULE} to (R)DEPEND +: ${KDE_SELINUX_MODULE:=none} + # @ECLASS-VARIABLE: VIRTUALX_REQUIRED # @DESCRIPTION: # For proper description see virtualx.eclass manpage. @@ -192,10 +199,10 @@ esac # @ECLASS-VARIABLE: QT_MINIMAL # @DESCRIPTION: # Determine version of qt we enforce as minimal for the package. -if version_is_at_least 4.5.50 "${KDE_MINIMAL}"; then - QT_MINIMAL="${QT_MINIMAL:-4.7.0}" +if version_is_at_least 4.7.80 "${KDE_MINIMAL}"; then + QT_MINIMAL="${QT_MINIMAL:-4.7.4}" else - QT_MINIMAL="${QT_MINIMAL:-4.6.3}" + QT_MINIMAL="${QT_MINIMAL:-4.7.0}" fi # Declarative dependencies @@ -381,6 +388,14 @@ case ${KDE_HANDBOOK} in esac unset kdehandbookdepend kdehandbookrdepend +case ${KDE_SELINUX_MODULE} in + none) ;; + *) + IUSE+=" selinux" + kdecommondepend+=" selinux? ( sec-policy/selinux-${KDE_SELINUX_MODULE} )" + ;; +esac + case ${KDE_REQUIRED} in always) IUSE+=" aqua" @@ -437,7 +452,7 @@ _calculate_src_uri() { case ${KDEBASE} in kde-base) case ${PV} in - 4.[456].8[05] | 4.[456].9[023568]) + 4.[456789].8[05] | 4.[456789].9[023568]) # Unstable KDE SC releases SRC_URI="mirror://kde/unstable/${PV}/src/${_kmname_pv}.tar.bz2" if ! version_is_at_least 4.6.80 ${PV} @@ -600,6 +615,11 @@ debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: SRC_URI is ${SRC_URI}" kde4-base_pkg_setup() { debug-print-function ${FUNCNAME} "$@" + if has handbook ${IUSE} || has "+handbook" ${IUSE} && [ "${KDE_HANDBOOK}" != optional ] ; then + eqawarn "Handbook support is enabled via KDE_HANDBOOK=optional in the ebuild." + eqawarn "Please do not just set IUSE=handbook, as this leads to dependency errors." + fi + if use_if_iuse kdeprefix; then eerror "Sorry, kdeprefix support has been removed." eerror "Please remove kdeprefix from your USE variable." @@ -721,27 +741,6 @@ kde4-base_src_prepare() { 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' \ - -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/... if [[ -z ${KDEBASE} ]]; then find "${S}" -name "*.docbook" \ diff --git a/eclass/kde4-functions.eclass b/eclass/kde4-functions.eclass index ad15b6e26353..9ec0a818e2aa 100644 --- a/eclass/kde4-functions.eclass +++ b/eclass/kde4-functions.eclass @@ -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.57 2011/10/06 14:13:29 alexxy Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.58 2011/12/18 00:00:45 dilfridge Exp $ inherit versionator @@ -418,11 +418,6 @@ add_kdebase_dep() { [[ -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}}]" } diff --git a/eclass/kde4-meta.eclass b/eclass/kde4-meta.eclass index 08cbfa20016d..1178a209a4af 100644 --- a/eclass/kde4-meta.eclass +++ b/eclass/kde4-meta.eclass @@ -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.58 2011/10/29 15:07:16 abcd Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.59 2011/12/18 00:00:45 dilfridge Exp $ # # @ECLASS: kde4-meta.eclass # @MAINTAINER: @@ -556,6 +556,9 @@ kde4-meta_change_cmakelists() { sed -e '/startkde/s/^/#DONOTINSTALL /' \ -i CMakeLists.txt || die "${LINENO}: sed died in the kdebase-startkde collision prevention section" fi + # Remove workspace target prefix in order to get direct linking to workspace libs + sed -e '/set(KDE4WORKSPACE_TARGET_PREFIX/s/^/#OVERRIDE /' \ + -i CMakeLists.txt || die "${LINENO}: sed died in KDE4WORKSPACE_TARGET_PREFIX removal section" # 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' \ |