diff options
author | Maciej Mrozowski <reavertm@gentoo.org> | 2010-09-14 12:39:51 +0000 |
---|---|---|
committer | Maciej Mrozowski <reavertm@gentoo.org> | 2010-09-14 12:39:51 +0000 |
commit | cae0a29fc44a0830f3c2cb065224ae9473424c45 (patch) | |
tree | 7fbc94d0847c2c46cacdfc30c71c4ff6a42886e9 | |
parent | Removing old versions of xwax to address bug #335787 (diff) | |
download | gentoo-2-cae0a29fc44a0830f3c2cb065224ae9473424c45.tar.gz gentoo-2-cae0a29fc44a0830f3c2cb065224ae9473424c45.tar.bz2 gentoo-2-cae0a29fc44a0830f3c2cb065224ae9473424c45.zip |
Rework KDE_HANDBOOK=1 -> KDE_HANDBOOK->'always', 'optional'(USE=handbook), 'never'(default)
-rw-r--r-- | eclass/kde4-base.eclass | 43 | ||||
-rw-r--r-- | eclass/kde4-meta.eclass | 19 |
2 files changed, 40 insertions, 22 deletions
diff --git a/eclass/kde4-base.eclass b/eclass/kde4-base.eclass index abb66212a282..ddc5058953cf 100644 --- a/eclass/kde4-base.eclass +++ b/eclass/kde4-base.eclass @@ -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.73 2010/09/13 21:47:37 reavertm Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.74 2010/09/14 12:39:51 reavertm Exp $ # @ECLASS: kde4-base.eclass # @MAINTAINER: @@ -141,15 +141,18 @@ CPPUNIT_REQUIRED="${CPPUNIT_REQUIRED:-never}" # @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. +# 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}" # @ECLASS-VARIABLE: KDE_HANDBOOK # @DESCRIPTION: -# Set to enable handbook in application. It adds +handbook to IUSE, handbook dirs -# to KMEXTRA and ensures buildtime and runtime dependencies. -[[ -n ${KDE_HANDBOOK} ]] && IUSE+=" +handbook" +# Set to enable handbook in application. Possible values are 'always', 'optional' +# (handbook USE flag) and 'never'. +# This variable must be set before inheriting any eclasses. Defaults to 'never'. +# It adds default handbook dirs for kde-base packages to KMEXTRA and in any case it +# ensures buildtime and runtime dependencies. +KDE_HANDBOOK="${KDE_HANDBOOK:-never}" # Setup packages inheriting this eclass case ${KDEBASE} in @@ -318,16 +321,26 @@ kdedepend=" " kderdepend="" -# Handbook handling - dependencies -if [[ -n ${KDE_HANDBOOK} ]]; then - kdedepend+=" - handbook? ( - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xsl-stylesheets - ) - " - [[ ${PN} != kdelibs ]] && kderdepend+=" handbook? ( $(add_kdebase_dep khelpcenter) )" -fi +kdehandbookdepend=" + app-text/docbook-xml-dtd:4.2 + app-text/docbook-xsl-stylesheets +" +kdehandbookrdepend=" + $(add_kdebase_dep kdelibs 'handbook') +" +case ${KDE_HANDBOOK} in + always) + kdedepend+=" ${kdehandbookdepend}" + [[ ${PN} != kdelibs ]] && kderdepend+=" ${kdehandbookrdepend}" + ;; + optional) + IUSE+=" +handbook" + kdedepend+=" handbook? ( ${kdehandbookdepend} )" + [[ ${PN} != kdelibs ]] && kderdepend+=" handbook? ( ${kdehandbookrdepend} )" + ;; + *) ;; +esac +unset kdehandbookdepend kdehandbookrdepend case ${KDE_REQUIRED} in always) diff --git a/eclass/kde4-meta.eclass b/eclass/kde4-meta.eclass index 05465251c1ef..99df107283ec 100644 --- a/eclass/kde4-meta.eclass +++ b/eclass/kde4-meta.eclass @@ -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.40 2010/09/11 04:25:23 reavertm Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.41 2010/09/14 12:39:51 reavertm Exp $ # # @ECLASS: kde4-meta.eclass # @MAINTAINER: @@ -108,10 +108,9 @@ fi # @DESCRIPTION: # All subdirectories listed here will be extracted, compiled & installed. # $KMMODULE is always added to $KMEXTRA. -# 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. +# If KDE_HANDBOOK is 'always' or 'optional' and handbook USE-flag is set, and if this +# directory exists, then "doc/$KMMODULE" is added to $KMEXTRA. If there's additional +# documentation in different subdirectories, it should be added to KMEXTRA manually.. # @ECLASS-VARIABLE: KMCOMPILEONLY # @DESCRIPTION: @@ -282,14 +281,20 @@ kde4-meta_src_extract() { kde4-meta_create_extractlists() { debug-print-function ${FUNCNAME} "$@" - # TODO change to KMEXTRA for more strict check - if has handbook ${IUSE//+} && use handbook && [[ -n ${KMMODULE} ]]; then + # Add default handbook locations + # FIXME - legacy code - remove when 4.4.5 is gone or preferrably port 4.4.5. + if ! slot_is_at_least 4.5 ${SLOT} && 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+=" doc/${KMMODULE##*/}" fi + # Add default handbook locations + if [[ -n ${KMMODULE} ]] && [[ ${KDE_HANDBOOK} = always ]] || { [[ ${KDE_HANDBOOK} = optional ]] && use handbook; }; then + KMEXTRA+=" doc/${KMMODULE##*/}" + fi + # Add some CMake-files to KMEXTRACTONLY. # Note that this actually doesn't include KMEXTRA handling. # In those cases you should care to add the relevant files to KMEXTRACTONLY |