public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in eclass: cmake-utils.eclass kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-10-27 14:16 Tomas Chvatal (scarabeus)
  0 siblings, 0 replies; 3+ messages in thread
From: Tomas Chvatal (scarabeus) @ 2009-10-27 14:16 UTC (permalink / raw
  To: gentoo-commits

scarabeus    09/10/27 14:16:50

  Modified:             cmake-utils.eclass kde4-base.eclass
                        kde4-functions.eclass kde4-meta.eclass
  Log:
  Sync cmake-utils and kde eclasses with kde-testing overlays.
  Renamed WANT_CMAKE -> CMAKE_REQUIRED in kde eclasses
  fixed koffice2.0 support in kde eclasses
  Added WANT_CMAKE into cmake-utils eclass, where it brings possibility to depend on cmake only when some useflag is required.
  Used with WANT_CMAKE="variable", where variable is the useflag (its autoadded to IUSE too.)

Revision  Changes    Path
1.32                 eclass/cmake-utils.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.32&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.32&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?r1=1.31&r2=1.32

Index: cmake-utils.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- cmake-utils.eclass	16 Oct 2009 12:24:09 -0000	1.31
+++ cmake-utils.eclass	27 Oct 2009 14:16:49 -0000	1.32
@@ -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/cmake-utils.eclass,v 1.31 2009/10/16 12:24:09 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.32 2009/10/27 14:16:49 scarabeus Exp $
 
 # @ECLASS: cmake-utils.eclass
 # @MAINTAINER:
@@ -20,25 +20,44 @@
 # builds and an implementation of the well-known use_enable and use_with
 # functions for CMake.
 
+# @ECLASS-VARIABLE: WANT_CMAKE
+# @DESCRIPTION:
+# Specify if cmake-utils eclass should depend on cmake optionaly or not.
+# This is usefull when only part of aplication is using cmake build system.
+# Valid values are: always [default], optional (where the value is the useflag
+# used for optionality)
+WANT_CMAKE="${WANT_CMAKE:-always}"
+CMAKEDEPEND=""
+case ${WANT_CMAKE} in
+	    always)
+			;;
+		*)
+			IUSE+=" ${WANT_CMAKE}"
+			CMAKEDEPEND+="${WANT_CMAKE}? ( "
+			;;
+esac
 inherit toolchain-funcs multilib flag-o-matic base
 
-EXPF="src_compile src_test src_install"
+CMAKE_EXPF="src_compile src_test src_install"
 case ${EAPI:-0} in
-	2) EXPF="${EXPF} src_configure" ;;
+	2) CMAKE_EXPF+=" src_configure" ;;
 	1|0) ;;
 	*) die "Unknown EAPI, Bug eclass maintainers." ;;
 esac
-EXPORT_FUNCTIONS ${EXPF}
+EXPORT_FUNCTIONS ${CMAKE_EXPF}
 
 : ${DESCRIPTION:="Based on the ${ECLASS} eclass"}
 
 if [[ ${PN} != cmake ]]; then
-	CMAKEDEPEND=">=dev-util/cmake-2.6.2-r1"
+	CMAKEDEPEND+=">=dev-util/cmake-2.6.2-r1"
 fi
 
-DEPEND="${CMAKEDEPEND}
-	userland_GNU? ( >=sys-apps/findutils-4.4.0 )
-"
+CMAKEDEPEND+="userland_GNU? ( >=sys-apps/findutils-4.4.0 )"
+
+[[ ${WANT_CMAKE} = always ]] || CMAKEDEPEND+=" )"
+
+DEPEND="${CMAKEDEPEND}"
+unset CMAKEDEPEND
 
 # Internal functions used by cmake-utils_use_*
 _use_me_now() {
@@ -206,11 +225,6 @@
 # and -DHAVE_FOO=OFF if it is disabled.
 cmake-utils_use_has() { _use_me_now HAVE_ "$@" ; }
 
-# @FUNCTION: cmake-utils_has
-# @DESCRIPTION:
-# Deprecated, use cmake-utils_use_has, kept now for backcompat.
-cmake-utils_has() { ewarn "QA notice: using deprecated ${FUNCNAME} call, use cmake-utils_use_has instead." ; _use_me_now HAVE_ "$@" ; }
-
 # @FUNCTION: cmake-utils_use
 # @USAGE: <USE flag> [flag name]
 # @DESCRIPTION:
@@ -239,13 +253,11 @@
 Install path: ${CMAKE_INSTALL_PREFIX}\n")' >> CMakeLists.txt
 }
 
-# @FUNCTION: cmake-utils_src_configure
+# @FUNCTION: enable_cmake-utils_src_configure
 # @DESCRIPTION:
 # General function for configuring with cmake. Default behaviour is to start an
 # out-of-source build.
-cmake-utils_src_configure() {
-	export XDG_CONFIG_HOME="${T}"
-
+enable_cmake-utils_src_configure() {
 	debug-print-function ${FUNCNAME} "$@"
 
 	_check_build_dir init
@@ -261,6 +273,9 @@
 	# Remove dangerous things.
 	_modify-cmakelists
 
+	# Fix xdg collision with sandbox
+	export XDG_CONFIG_HOME="${T}"
+
 	# @SEE CMAKE_BUILD_TYPE
 	if [[ ${CMAKE_BUILD_TYPE} = Gentoo ]]; then
 		# Handle release builds
@@ -306,33 +321,17 @@
 	popd > /dev/null
 }
 
-# @FUNCTION: cmake-utils_src_compile
+# @FUNCTION: enable_cmake-utils_src_compile
 # @DESCRIPTION:
 # General function for compiling with cmake. Default behaviour is to check for
 # EAPI and respectively to configure as well or just compile.
-cmake-utils_src_compile() {
+enable_cmake-utils_src_compile() {
 	debug-print-function ${FUNCNAME} "$@"
 
-	has src_configure ${EXPF} || cmake-utils_src_configure
+	has src_configure ${CMAKE_EXPF} || cmake-utils_src_configure
 	cmake-utils_src_make "$@"
 }
 
-# @FUNCTION: cmake-utils_src_configurein
-# @DESCRIPTION:
-# Deprecated
-cmake-utils_src_configurein() {
-	ewarn "QA notice: using deprecated ${FUNCNAME} call, set CMAKE_IN_SOURCE_BUILD=1 instead."
-	cmake-utils_src_configure
-}
-
-# @FUNCTION: cmake-utils_src_configureout
-# @DESCRIPTION:
-# Deprecated
-cmake-utils_src_configureout() {
-	ewarn "QA notice: using deprecated ${FUNCNAME} call, out of source build is enabled by default."
-	cmake-utils_src_configure
-}
-
 # @FUNCTION: cmake-utils_src_make
 # @DESCRIPTION:
 # Function for building the package. Automatically detects the build type.
@@ -352,10 +351,10 @@
 	popd &> /dev/null
 }
 
-# @FUNCTION: cmake-utils_src_install
+# @FUNCTION: enable_cmake-utils_src_install
 # @DESCRIPTION:
 # Function for installing the package. Automatically detects the build type.
-cmake-utils_src_install() {
+enable_cmake-utils_src_install() {
 	debug-print-function ${FUNCNAME} "$@"
 
 	_check_build_dir
@@ -368,10 +367,10 @@
 	[[ -n "${HTML_DOCS}" ]] && { dohtml -r ${HTML_DOCS} || die "dohtml failed" ; }
 }
 
-# @FUNCTION: cmake-utils_src_test
+# @FUNCTION: enable_cmake-utils_src_test
 # @DESCRIPTION:
 # Function for testing the package. Automatically detects the build type.
-cmake-utils_src_test() {
+enable_cmake-utils_src_test() {
 	debug-print-function ${FUNCNAME} "$@"
 
 	_check_build_dir
@@ -392,3 +391,46 @@
 	fi
 	popd &> /dev/null
 }
+
+## Wrappers for calls bellow this line
+# @FUNCTION: cmake-utils_src_configure
+# @DESCRIPTION:
+# Wrapper for detection if we want to run enable_ prefixed function with same name
+# unconditionaly or only when some useflag is enabled.
+cmake-utils_src_configure() {
+	_inherit_optionaly "src_configure"
+}
+
+# @FUNCTION: cmake-utils_src_compile
+# @DESCRIPTION:
+# Wrapper for detection if we want to run enable_ prefixed function with same name
+# unconditionaly or only when some useflag is enabled.
+cmake-utils_src_compile() {
+	_inherit_optionaly "src_compile"
+}
+
+# @FUNCTION: cmake-utils_src_install
+# @DESCRIPTION:
+# Wrapper for detection if we want to run enable_ prefixed function with same name
+# unconditionaly or only when some useflag is enabled.
+cmake-utils_src_install() {
+	_inherit_optionaly "src_install"
+}
+
+# @FUNCTION: cmake-utils_src_test
+# @DESCRIPTION:
+# Wrapper for detection if we want to run enable_ prefixed function with same name
+# unconditionaly or only when some useflag is enabled.
+cmake-utils_src_test() {
+	_inherit_optionaly "src_test"
+}
+
+
+_execute_optionaly() {
+	local phase="$1"
+	if [[ ${WANT_CMAKE} = always ]]; then
+		enable_cmake-utils_${phase}
+	else
+		use ${WANT_CMAKE} && enable_cmake-utils_${phase}
+	fi
+}



1.47                 eclass/kde4-base.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.47&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.47&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.46&r2=1.47

Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- kde4-base.eclass	6 Oct 2009 18:02:12 -0000	1.46
+++ kde4-base.eclass	27 Oct 2009 14:16:49 -0000	1.47
@@ -1,6 +1,6 @@
-# Copyright 2007-2009 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-base.eclass,v 1.46 2009/10/06 18:02:12 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.47 2009/10/27 14:16:49 scarabeus Exp $
 
 # @ECLASS: kde4-base.eclass
 # @MAINTAINER:
@@ -13,29 +13,33 @@
 # NOTE: KDE 4 ebuilds by default define EAPI="2", this can be redefined but
 # eclass will fail with version older than 2.
 
-# @ECLASS-VARIABLE: WANT_CMAKE
+# @ECLASS-VARIABLE: CMAKE_REQUIRED
 # @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"
+# Specify if cmake buildsystem is being used. Possible values are 'always' and 'never'.
+# 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:-always}"
+if [[ ${WANT_CMAKE} = false || ${WANT_CMAKE} = never ]]; then
+	buildsystem_eclass=""
+	export_fns=""
 else
-	exports=""
-	cmake_eclass=""
+	buildsystem_eclass="cmake-utils"
+	export_fns="src_configure src_compile src_test src_install"
 fi
 
-inherit base ${cmake_eclass} eutils kde4-functions
-
 get_build_type
 if [[ ${BUILD_TYPE} = live ]]; then
-	inherit subversion
+	subversion_eclass="subversion"
 fi
 
+inherit base ${cmake_utils} eutils kde4-functions ${subversion_eclass}
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare  ${export_fns} pkg_postinst pkg_postrm
 
-EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare ${exports} pkg_postinst pkg_postrm
+unset buildsystem_eclass
+unset export_fns
+unset subversion_eclass
 
 case ${KDEBASE} in
 	kde-base)
@@ -94,29 +98,60 @@
 # Note that it is fixed to ${SLOT} for kde-base packages.
 KDE_MINIMAL="${KDE_MINIMAL:-4.3}"
 
-# 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
+# Setup packages inheriting this eclass
+case ${KDEBASE} in
+	kde-base)
+		if [[ $BUILD_TYPE = live ]]; then
+			# Disable tests for live ebuilds
+			RESTRICT+=" test"
+			# Live ebuilds in kde-base default to kdeprefix by default
+			IUSE+=" +kdeprefix"
+		else
+			# 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.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}"
 
-# @ECLASS-VARIABLE: QT_DEPEND
+		# 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
-QT_DEPEND="${QT_DEPEND:-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
+if slot_is_at_least 4.4 "${KDE_MINIMAL}"; then
+	QT_MINIMAL="${QT_MINIMAL:-4.6.0_beta}"
+fi
+
+QT_MINIMAL="${QT_MINIMAL:-4.5.1}"
 
 # OpenGL dependencies
 qtopengldepend="
-	>=x11-libs/qt-opengl-${QT_DEPEND}:4
+	>=x11-libs/qt-opengl-${QT_MINIMAL}:4
 "
 case ${OPENGL_REQUIRED} in
 	always)
@@ -141,7 +176,7 @@
 	*) ;;
 esac
 qtwebkitdepend="
-	>=x11-libs/qt-webkit-${QT_DEPEND}:4${qtwebkitusedeps}
+	>=x11-libs/qt-webkit-${QT_MINIMAL}:4${qtwebkitusedeps}
 "
 unset qtwebkitusedeps
 case ${WEBKIT_REQUIRED} in
@@ -172,65 +207,16 @@
 esac
 unset cppuintdepend
 
-# Setup packages inheriting this eclass
-case ${KDEBASE} in
-	kde-base)
-		if [[ $BUILD_TYPE = live ]]; then
-			# Disable tests for live ebuilds
-			RESTRICT+=" test"
-			# Live ebuilds in kde-base default to kdeprefix by default
-			IUSE+=" +kdeprefix"
-		else
-			# 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.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}"
-		_pvn="-${PV}"
-
-		# Block installation of other SLOTS unless kdeprefix
-		RDEPEND+=" $(block_other_slots)"
-		;;
-	koffice)
-		SLOT="2"
-		_pv="-${KDE_MINIMAL}"
-		_pvn="${_pv}"
-		;;
-	*)
-		_pv="-${KDE_MINIMAL}"
-		_pvn="${_pv}"
-		;;
-
-esac
-
 # KDE dependencies
 kdecommondepend="
 	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,kde]
-	>=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
+	>=x11-libs/qt-core-${QT_MINIMAL}:4[qt3support,ssl]
+	>=x11-libs/qt-gui-${QT_MINIMAL}:4[accessibility,dbus]
+	>=x11-libs/qt-qt3support-${QT_MINIMAL}:4[accessibility,kde]
+	>=x11-libs/qt-script-${QT_MINIMAL}:4
+	>=x11-libs/qt-sql-${QT_MINIMAL}:4[qt3support]
+	>=x11-libs/qt-svg-${QT_MINIMAL}:4
+	>=x11-libs/qt-test-${QT_MINIMAL}:4
 	!aqua? (
 		x11-libs/libXext
 		x11-libs/libXt
@@ -239,24 +225,16 @@
 "
 if [[ ${PN} != kdelibs ]]; then
 	if [[ ${KDEBASE} = kde-base ]]; then
+		kdecommondepend+=" $(add_kdebase_dep kdelibs)"
 		# 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] )
-		"
-		[[ -n ${libknotificationitem_required} ]] && \
-			kdecommondepend+="
-				kdeprefix? ( >=kde-base/libknotificationitem${_pv}[kdeprefix] )
-				!kdeprefix? ( >=kde-base/libknotificationitem${_pvn}[-kdeprefix] )
-			"
+		[[ ${PN} != libknotificationitem ]] && [[ ${SLOT} = 4.3 ]] && \
+			kdecommondepend+=" $(add_kdebase_dep libknotificationitem)"
 	else
 		kdecommondepend+="
-			>=kde-base/kdelibs${_pv}
+			>=kde-base/kdelibs-${KDE_MINIMAL}
 		"
 	fi
 fi
-unset _pv _pvn
 kdedepend="
 	dev-util/pkgconfig
 "
@@ -373,7 +351,6 @@
 				_kmname=${PN}
 			fi
 			_kmname_pv="${_kmname}-${PV}"
-			if [[ $NEED_KDE != live ]]; then
 			case ${KDEBASE} in
 				kde-base)
 					case ${PV} in
@@ -391,7 +368,6 @@
 						*) SRC_URI="mirror://kde/stable/${_kmname_pv}/src/${_kmname_pv}.tar.bz2" ;;
 					esac
 			esac
-			fi
 			unset _kmname _kmname_pv
 		fi
 		;;
@@ -412,11 +388,12 @@
 kde4-base_pkg_setup() {
 	debug-print-function ${FUNCNAME} "$@"
 
+	# Prefix compat:
+	use prefix || EROOT=${ROOT}
+	# Append missing trailing slash character
+	[[ ${EROOT} = */ ]] || EROOT+="/"
+
 	# 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
@@ -460,6 +437,8 @@
 	# Point to correct QT plugins path
 	QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
 
+	# Fix XDG collision with sandbox
+	export XDG_CONFIG_HOME="${T}"
 	# Not needed anymore
 	unset _kdedir
 }



1.26                 eclass/kde4-functions.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.26&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.26&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.25&r2=1.26

Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- kde4-functions.eclass	6 Oct 2009 18:02:12 -0000	1.25
+++ kde4-functions.eclass	27 Oct 2009 14:16:49 -0000	1.26
@@ -1,14 +1,9 @@
-# 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-functions.eclass,v 1.25 2009/10/06 18:02:12 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.26 2009/10/27 14:16:49 scarabeus Exp $
 
 inherit versionator
 
-# Prefix compat:
-: ${EROOT:=${ROOT}}
-# Append missing trailing slash character
-[[ ${EROOT} = */ ]] || EROOT+="/"
-
 # @ECLASS: kde4-functions.eclass
 # @MAINTAINER:
 # kde@gentoo.org
@@ -450,7 +445,7 @@
 		if [[ ${param/:} == ${param} ]]; then
 			def=${param}
 		else # the parameter *does* have a ":" in it
-			# so everythin after the : is the slot...
+			# so everything after the : is the slot...
 			slot=${param#*:}
 			# ...and everything before the : is the version
 			local block_${slot//./_}=${param%:*}
@@ -464,10 +459,9 @@
 		# 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
+		# 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
 			atom=${pkg}
 		# If the version is "0" or less than the minimum possible version in
 		# this slot, do nothing
@@ -512,7 +506,7 @@
 # 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.
+# without an extra set of parentheses).
 add_kdebase_dep() {
 	debug-print-function ${FUNCNAME} "$@"
 



1.27                 eclass/kde4-meta.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.27&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.27&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.26&r2=1.27

Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- kde4-meta.eclass	6 Oct 2009 18:02:12 -0000	1.26
+++ kde4-meta.eclass	27 Oct 2009 14:16:49 -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-meta.eclass,v 1.26 2009/10/06 18:02:12 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.27 2009/10/27 14:16:49 scarabeus Exp $
 #
 # @ECLASS: kde4-meta.eclass
 # @MAINTAINER:
@@ -22,7 +22,7 @@
 
 # Add khelpcenter dependency when installing handbooks
 if [[ ${PN} != khelpcenter ]] && has handbook ${IUSE//+}; then
-	RDEPEND+=" handbook? ( >=kde-base/khelpcenter-${PV}:${SLOT}[kdeprefix=] )"
+	RDEPEND+=" handbook? ( $(add_kdebase_dep khelpcenter) )"
 fi
 
 # Add dependencies that all packages in a certain module share.
@@ -30,26 +30,23 @@
 	kdebase|kdebase-apps|kdebase-workspace|kdebase-runtime|kdegraphics)
 		COMMONDEPEND+=" >=kde-base/qimageblitz-0.0.4"
 		;;
-	kdenetwork)
-		COMMONDEPEND+=" >=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]"
-		;;
 	kdepim|kdepim-runtime)
 		COMMONDEPEND+="
 			dev-libs/boost
-			>=kde-base/kdepimlibs-${PV}:${SLOT}[kdeprefix=]
+			$(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} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
-					RDEPEND+=" kontact? ( >=kde-base/kontactinterfaces-${PV}:${SLOT}[kdeprefix=] )"
+					RDEPEND+=" kontact? ( $(add_kdebase_dep kontactinterfaces) )"
 				fi
 				;;
 		esac
 		;;
 	kdegames)
 		if [[ ${PN} != libkdegames ]]; then
-			COMMONDEPEND+=" >=kde-base/libkdegames-${PV}:${SLOT}[kdeprefix=] "
+			COMMONDEPEND+=" $(add_kdebase_dep libkdegames)"
 		fi
 		;;
 	koffice)
@@ -508,16 +505,17 @@
 	comment_all_add_subdirectory ./
 
 	# Restore "add_subdirectory( cmake )" in ${S}/CMakeLists.txt
-	if [[ -f "${S}"/CMakeLists.txt ]]; then
+	if [[ -f CMakeLists.txt ]]; then
 		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"
+			-i CMakeLists.txt || die "${LINENO}: cmake sed died"
 	fi
 
 	if [[ -z ${KMNOMODULE} ]]; then
 		# Restore "add_subdirectory" in $KMMODULE subdirectories
-		find "${S}"/${KMMODULE} -name CMakeLists.txt -print0 | xargs -0 sed -i -e 's/^#DONOTCOMPILE //g' || \
-			die "${LINENO}: died in KMMODULE section"
+		find "${S}"/${KMMODULE} -name CMakeLists.txt -print0 | \
+			xargs -0 sed -i -e 's/^#DONOTCOMPILE //g' || \
+				die "${LINENO}: died in KMMODULE section"
 		_change_cmakelists_parent_dirs ${KMMODULE}
 	fi
 
@@ -525,8 +523,9 @@
 
 	# 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 || \
+		if [[ -d ${i} && -f ${i}/../CMakeLists.txt ]]; then
+			sed -e "/([[:space:]]*$(basename $i)[[:space:]]*)/s/^/#DONOTCOMPILE /" \
+				-i ${i}/../CMakeLists.txt || \
 				die "${LINENO}: sed died while working in the KMEXTRACTONLY section while processing ${i}"
 		fi
 	done
@@ -558,7 +557,7 @@
 		if [[ -d "${S}"/${i} ]]; then
 			find "${S}"/${i} -name CMakeLists.txt -print0 | \
 				xargs -0 sed -i -e 's/^#DONOTCOMPILE //g' || \
-				die "${LINENO}: sed died uncommenting add_subdirectory instructions in KMEXTRA section while processing ${i}"
+					die "${LINENO}: sed died uncommenting add_subdirectory instructions in KMEXTRA section while processing ${i}"
 			_change_cmakelists_parent_dirs ${i}
 		fi
 	done
@@ -568,31 +567,36 @@
 			# 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 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"
+				sed -e '/startkde/s/^/#DONOTINSTALL /' \
+					-i 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 [[ ${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"
+				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"
 			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"
+			if [[ ${PN} != kdebase-data && -f CMakeLists.txt ]]; then
+				sed -e '/^install(PROGRAMS[[:space:]]*[^[:space:]]*\/kde4[[:space:]]/s/^/#DONOTINSTALL /' \
+					-i CMakeLists.txt || die "Sed to exclude bin/kde4 failed"
 			fi
 			;;
+		kdenetwork)
+			# Disable hardcoded kdepimlibs check
+			sed -e 's/find_package(KdepimLibs REQUIRED)/macro_optional_find_package(KdepimLibs)/' \
+				-i CMakeLists.txt || die "failed to disable hardcoded checks"
+			;;
 		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"
+					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
@@ -608,13 +612,20 @@
 		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 -e '/install(.\+config-openexr\.h.\+)/d' \
-					"${S}"//CMakeLists.txt || \
-					die "${LINENO}: sed died in collision prevention section"
+				sed -e '/install(.*FindKOfficeLibs.cmake/,/)/ d' \
+					-i cmake/modules/CMakeLists.txt || die "${LINENO}: sed died in collision prevention section"
+				sed -e '/install(.\+config-openexr\.h.\+)/d' \
+					-i CMakeLists.txt || die "${LINENO}: sed died in collision prevention section"
 			fi
+			# koffice 2.0
+			case ${PV} in
+				2.0.[1-9])
+					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"
+					;;
+				*) ;;
+			esac
 	esac
 
 	popd > /dev/null






^ permalink raw reply	[flat|nested] 3+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: cmake-utils.eclass kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-12-10 17:35 Jonathan Callen (abcd)
  0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Callen (abcd) @ 2009-12-10 17:35 UTC (permalink / raw
  To: gentoo-commits

abcd        09/12/10 17:35:53

  Modified:             cmake-utils.eclass kde4-base.eclass
                        kde4-functions.eclass kde4-meta.eclass
  Log:
  Update cmake-utils.eclass and kde4-*.eclass from kde overlay

Revision  Changes    Path
1.35                 eclass/cmake-utils.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.35&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.35&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?r1=1.34&r2=1.35

Index: cmake-utils.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- cmake-utils.eclass	27 Oct 2009 21:20:40 -0000	1.34
+++ cmake-utils.eclass	10 Dec 2009 17:35:52 -0000	1.35
@@ -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/cmake-utils.eclass,v 1.34 2009/10/27 21:20:40 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.35 2009/12/10 17:35:52 abcd Exp $
 
 # @ECLASS: cmake-utils.eclass
 # @MAINTAINER:
@@ -40,7 +40,7 @@
 
 CMAKE_EXPF="src_compile src_test src_install"
 case ${EAPI:-0} in
-	2) CMAKE_EXPF+=" src_configure" ;;
+	3|2) CMAKE_EXPF+=" src_configure" ;;
 	1|0) ;;
 	*) die "Unknown EAPI, Bug eclass maintainers." ;;
 esac
@@ -148,7 +148,7 @@
 	# files should be located.
 	#
 	# For installing binary doins "${CMAKE_BUILD_DIR}/${PN}"
-	if [[ -n "${CMAKE_IN_SOURCE_BUILD}" ]]; then
+	if [[ -n ${CMAKE_IN_SOURCE_BUILD} ]]; then
 		# we build in source dir
 		CMAKE_BUILD_DIR="${CMAKE_USE_DIR}"
 	elif [[ ${CMAKE_USE_DIR} = ${WORKDIR} ]]; then
@@ -247,10 +247,11 @@
 		|| die "${LINENO}: failed to disable hardcoded settings"
 
 	# NOTE Append some useful summary here
-	echo '
-MESSAGE(STATUS "<<< Gentoo configuration >>>
-Build type: ${CMAKE_BUILD_TYPE}
-Install path: ${CMAKE_INSTALL_PREFIX}\n")' >> CMakeLists.txt
+	cat >> CMakeLists.txt <<- _EOF_
+		MESSAGE(STATUS "<<< Gentoo configuration >>>
+		Build type: ${CMAKE_BUILD_TYPE}
+		Install path: ${CMAKE_INSTALL_PREFIX}\n")
+	_EOF_
 }
 
 # @FUNCTION: enable_cmake-utils_src_configure
@@ -263,7 +264,7 @@
 	_check_build_dir init
 
 	# check if CMakeLists.txt exist and if no then die
-	if [[ ! -e "${CMAKE_USE_DIR}"/CMakeLists.txt ]] ; then
+	if [[ ! -e ${CMAKE_USE_DIR}/CMakeLists.txt ]] ; then
 		eerror "I was unable to locate CMakeLists.txt under:"
 		eerror "\"${CMAKE_USE_DIR}/CMakeLists.txt\""
 		eerror "You should consider not inheriting the cmake eclass."
@@ -285,38 +286,58 @@
 	fi
 
 	# Prepare Gentoo override rules (set valid compiler, append CPPFLAGS)
-	local build_rules="${TMPDIR}"/gentoo_rules.cmake
-cat > ${build_rules} << _EOF_
-SET (CMAKE_C_COMPILER $(type -P $(tc-getCC)) CACHE FILEPATH "C compiler" FORCE)
-SET (CMAKE_C_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C compile command" FORCE)
-SET (CMAKE_CXX_COMPILER $(type -P $(tc-getCXX)) CACHE FILEPATH "C++ compiler" FORCE)
-SET (CMAKE_CXX_COMPILE_OBJECT "<CMAKE_CXX_COMPILER> <DEFINES> ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C++ compile command" FORCE)
-_EOF_
+	local build_rules=${T}/gentoo_rules.cmake
+	cat > "${build_rules}" <<- _EOF_
+		SET (CMAKE_C_COMPILER $(type -P $(tc-getCC)) CACHE FILEPATH "C compiler" FORCE)
+		SET (CMAKE_C_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C compile command" FORCE)
+		SET (CMAKE_CXX_COMPILER $(type -P $(tc-getCXX)) CACHE FILEPATH "C++ compiler" FORCE)
+		SET (CMAKE_CXX_COMPILE_OBJECT "<CMAKE_CXX_COMPILER> <DEFINES> ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C++ compile command" FORCE)
+	_EOF_
+
+	if use prefix; then
+		cat >> "${build_rules}" <<- _EOF_
+			# in Prefix we need rpath and must ensure cmake gets our default linker path
+			# right ... except for Darwin hosts
+			IF (NOT APPLE)
+			SET (CMAKE_SKIP_RPATH OFF CACHE BOOL "" FORCE)
+			SET (CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH "${EPREFIX}/usr/${CHOST}/lib/gcc;${EPREFIX}/usr/${CHOST}/lib;${EPREFIX}/usr/$(get_libdir);${EPREFIX}/$(get_libdir)"
+			CACHE STRING "" FORCE)
+			ENDIF (NOT APPLE)
+		_EOF_
+	fi
+
+	# Common configure parameters (invariants)
+	local common_config=${T}/gentoo_common_config.cmake
+	local libdir=$(get_libdir)
+	cat > "${common_config}" <<- _EOF_
+		SET (LIB_SUFFIX ${libdir/lib} CACHE STRING "library path suffix" FORCE)
+	_EOF_
+	[[ -n ${CMAKE_NO_COLOR} ]] && echo 'SET (CMAKE_COLOR_MAKEFILE OFF CACHE BOOL "pretty colors during make" FORCE)' >> "${common_config}"
+
+	# Convert mycmakeargs to an array, for backwards compatibility
+	if [[ $(declare -p mycmakeargs) != "declare -a mycmakeargs="* ]]; then
+		mycmakeargs=(${mycmakeargs})
+	fi
+
+	has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
 
 	# Common configure parameters (overridable)
 	# NOTE CMAKE_BUILD_TYPE can be only overriden via CMAKE_BUILD_TYPE eclass variable
 	# No -DCMAKE_BUILD_TYPE=xxx definitions will be in effect.
-	local cmakeargs="
-		-DCMAKE_INSTALL_PREFIX=${PREFIX:-/usr}
-		${mycmakeargs}
-		-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
+	local cmakeargs=(
+		-C "${common_config}"
+		-DCMAKE_INSTALL_PREFIX="${PREFIX:-${EPREFIX}/usr}"
+		"${mycmakeargs[@]}"
+		-DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}"
 		-DCMAKE_INSTALL_DO_STRIP=OFF
-		-DCMAKE_USER_MAKE_RULES_OVERRIDE=${build_rules}"
-
-	# Common configure parameters (invariants)
-	local common_config="${TMPDIR}"/gentoo_common_config.cmake
-	local libdir=$(get_libdir)
-cat > ${common_config} << _EOF_
-SET (LIB_SUFFIX ${libdir/lib} CACHE STRING "library path suffix" FORCE)
-_EOF_
-	[[ -n ${CMAKE_NO_COLOR} ]] && echo 'SET (CMAKE_COLOR_MAKEFILE OFF CACHE BOOL "pretty colors during make" FORCE)' >> ${common_config}
-	cmakeargs="-C ${common_config} ${cmakeargs}"
+		-DCMAKE_USER_MAKE_RULES_OVERRIDE="${build_rules}"
+	)
 
 	mkdir -p "${CMAKE_BUILD_DIR}"
 	pushd "${CMAKE_BUILD_DIR}" > /dev/null
-	debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: mycmakeargs is $cmakeargs"
-	echo cmake ${cmakeargs} "${CMAKE_USE_DIR}"
-	cmake ${cmakeargs} "${CMAKE_USE_DIR}" || die "cmake failed"
+	debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: mycmakeargs is ${cmakeargs[*]}"
+	echo cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}"
+	cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed"
 
 	popd > /dev/null
 }
@@ -335,7 +356,7 @@
 # @FUNCTION: cmake-utils_src_make
 # @DESCRIPTION:
 # Function for building the package. Automatically detects the build type.
-# All arguments are passed to emake:
+# All arguments are passed to emake
 cmake-utils_src_make() {
 	debug-print-function ${FUNCNAME} "$@"
 



1.56                 eclass/kde4-base.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.56&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.56&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.55&r2=1.56

Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- kde4-base.eclass	2 Dec 2009 17:07:05 -0000	1.55
+++ kde4-base.eclass	10 Dec 2009 17:35:52 -0000	1.56
@@ -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.55 2009/12/02 17:07:05 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.56 2009/12/10 17:35:52 abcd Exp $
 
 # @ECLASS: kde4-base.eclass
 # @MAINTAINER:
@@ -60,6 +60,12 @@
 # This variable must be set before inheriting any eclasses. Defaults to 'never'.
 OPENGL_REQUIRED="${OPENGL_REQUIRED:-never}"
 
+# @ECLASS-VARIABLE: MULTIMEDIA_REQUIRED
+# @DESCRIPTION:
+# Is qt-multimedia required? Possible values are 'always', 'optional' and 'never'.
+# 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'.
@@ -167,6 +173,22 @@
 esac
 unset qtopengldepend
 
+# MultiMedia dependencies
+qtmultimediadepend="
+	>=x11-libs/qt-multimedia-${QT_MINIMAL}:4
+"
+case ${MULTIMEDIA_REQUIRED} in
+	always)
+		COMMONDEPEND+=" ${qtmultimediadepend}"
+		;;
+	optional)
+		IUSE+=" multimedia"
+		COMMONDEPEND+=" multimedia? ( ${qtmultimediadepend} )"
+		;;
+	*) ;;
+esac
+unset qtmultimediadepend
+
 # WebKit dependencies
 case ${KDE_REQUIRED} in
 	always)
@@ -402,7 +424,11 @@
 	debug-print-function ${FUNCNAME} "$@"
 
 	# Prefix compat:
-	use prefix || EROOT=${ROOT}
+	if [[ ${EAPI} == 2 ]] && ! use prefix; then
+		EPREFIX=
+		EROOT=${ROOT}
+	fi
+
 	# Append missing trailing slash character
 	[[ ${EROOT} = */ ]] || EROOT+="/"
 
@@ -414,11 +440,11 @@
 
 	if [[ ${KDEBASE} = kde-base ]]; then
 		if use kdeprefix; then
-			KDEDIR="${EROOT}usr/kde/${_kdedir}"
+			KDEDIR=${EPREFIX}/usr/kde/${_kdedir}
 		else
-			KDEDIR="${EROOT}usr"
+			KDEDIR=${EPREFIX}/usr
 		fi
-		PREFIX="${PREFIX:-${KDEDIR}}"
+		: ${PREFIX:=${KDEDIR}}
 	else
 		# Determine KDEDIR by loooking for the closest match with KDE_MINIMAL
 		KDEDIR=
@@ -427,9 +453,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="${EROOT}usr/kde/${slot}"
+					KDEDIR=${EPREFIX}/usr/kde/${slot}
 				else
-					KDEDIR="${EROOT}usr"
+					KDEDIR=${EPREFIX}/usr
 				fi
 				break;
 			fi
@@ -440,10 +466,10 @@
 		if [[ ${KDE_REQUIRED} = always ]] || { [[ ${KDE_REQUIRED} = optional ]] && use kde; }; then
 			[[ -z ${KDEDIR} ]] && die "Failed to determine KDEDIR!"
 		else
-			[[ -z ${KDEDIR} ]] && KDEDIR="${EROOT}usr"
+			[[ -z ${KDEDIR} ]] && KDEDIR=${EPREFIX}/usr
 		fi
 
-		PREFIX="${PREFIX:-${EROOT}usr}"
+		: ${PREFIX:=${EPREFIX}/usr}
 	fi
 	# Point pkg-config path to KDE *.pc files
 	export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
@@ -465,10 +491,10 @@
 	if [[ ${BUILD_TYPE} = live ]]; then
 		migrate_store_dir
 		subversion_src_unpack
-	elif [[ ${EAPI} == 2 ]]; then
+	elif [[ ${EAPI} == [23] ]]; then
 		local file
 		for file in ${A}; do
-			# This setup is because EAPI <= 2 cannot unpack *.tar.xz files
+			# This setup is because EAPI <= 3 cannot unpack *.tar.xz files
 			# directly, so we do it ourselves (using the exact same code as portage)
 			case ${file} in
 				*.tar.xz)
@@ -482,7 +508,7 @@
 			esac
 		done
 	else
-		# For EAPI >= 3, we can just use unpack() directly
+		# For EAPI >= 4, we can just use unpack() directly
 		unpack ${A}
 	fi
 }
@@ -529,10 +555,10 @@
 	debug-print-function ${FUNCNAME} "$@"
 
 	# Build tests in src_test only, where we override this value
-	local cmakeargs="-DKDE4_BUILD_TESTS=OFF"
+	local cmakeargs=(-DKDE4_BUILD_TESTS=OFF)
 
 	if has kdeenablefinal ${IUSE//+} && use kdeenablefinal; then
-		cmakeargs+=" -DKDE4_ENABLE_FINAL=ON"
+		cmakeargs+=(-DKDE4_ENABLE_FINAL=ON)
 	fi
 
 	if has debug ${IUSE//+} && use debug; then
@@ -544,10 +570,10 @@
 	fi
 
 	# Set distribution name
-	[[ ${PN} = kdelibs ]] && cmakeargs+=" -DKDE_DISTRIBUTION_TEXT=Gentoo"
+	[[ ${PN} = kdelibs ]] && cmakeargs+=(-DKDE_DISTRIBUTION_TEXT=Gentoo)
 
 	# Here we set the install prefix
-	cmakeargs+=" -DCMAKE_INSTALL_PREFIX=${PREFIX}"
+	cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${PREFIX}")
 
 	# Use colors
 	QTEST_COLORED=1
@@ -556,27 +582,31 @@
 	unset KDEDIRS
 
 	# Handle kdeprefix-ed KDE
-	if [[ ${KDEDIR} != "${EROOT}usr" ]]; then
+	if [[ ${KDEDIR} != ${EPREFIX}/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+=" -DCMAKE_SKIP_RPATH=OFF"
+		cmakeargs+=(-DCMAKE_SKIP_RPATH=OFF)
 
 		# Set cmake prefixes to allow buildsystem to locate valid KDE installation
 		# when more are present
-		cmakeargs+=" -DCMAKE_SYSTEM_PREFIX_PATH=${KDEDIR}"
+		cmakeargs+=(-DCMAKE_SYSTEM_PREFIX_PATH="${KDEDIR}")
 	fi
 
 	# Handle kdeprefix in application itself
 	if ! has kdeprefix ${IUSE//+} || ! use kdeprefix; then
 		# If prefix is /usr, sysconf needs to be /etc, not /usr/etc
-		cmakeargs+=" -DSYSCONF_INSTALL_DIR=${EROOT}etc"
+		cmakeargs+=(-DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc)
+	fi
+
+	if [[ $(declare -p mycmakeargs) != "declare -a mycmakeargs="* ]]; then
+		mycmakeargs=(${mycmakeargs})
 	fi
 
-	mycmakeargs="${cmakeargs} ${mycmakeargs}"
+	mycmakeargs=("${cmakeargs[@]}" "${mycmakeargs[@]}")
 
 	cmake-utils_src_configure
 }
@@ -597,7 +627,7 @@
 	debug-print-function ${FUNCNAME} "$@"
 
 	# Override this value, set in kde4-base_src_configure()
-	mycmakeargs+=" -DKDE4_BUILD_TESTS=ON"
+	mycmakeargs+=(-DKDE4_BUILD_TESTS=ON)
 	cmake-utils_src_configure
 	kde4-base_src_compile
 
@@ -639,12 +669,14 @@
 		done
 	fi
 
-	if [[ -n ${KDEBASE} ]] && [[ -d "${D}${EROOT}usr/share/doc/${PF}" ]]; then
+	[[ -z ${ED} ]] && ED=${D}${EPREFIX}
+
+	if [[ -n ${KDEBASE} ]] && [[ -d ${ED}usr/share/doc/${PF} ]]; then
 		# work around bug #97196
 		dodir /usr/share/doc/KDE4 && \
-			cp -r "${D}${EROOT}usr/share/doc/${PF}" "${D}${EROOT}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 "${D}${EROOT}usr/share/doc/${PF}"
+			rm -rf "${ED}usr/share/doc/${PF}"
 	fi
 }
 



1.28                 eclass/kde4-functions.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.28&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.28&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.27&r2=1.28

Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- kde4-functions.eclass	1 Dec 2009 10:56:17 -0000	1.27
+++ kde4-functions.eclass	10 Dec 2009 17:35:52 -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-functions.eclass,v 1.27 2009/12/01 10:56:17 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.28 2009/12/10 17:35:52 abcd Exp $
 
 inherit versionator
 
@@ -17,7 +17,7 @@
 # By default kde4 eclasses want EAPI 2 which might be redefinable to newer
 # versions.
 case ${EAPI:-0} in
-	2) : ;;
+	2|3) : ;;
 	*) DEPEND="EAPI-TOO-OLD" ;;
 esac
 
@@ -65,6 +65,8 @@
 buildsycoca() {
 	debug-print-function ${FUNCNAME} "$@"
 
+	[[ -z ${EROOT} ]] && EROOT=${ROOT}${EPREFIX}
+
 	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
@@ -320,7 +322,7 @@
 	local depsfile="${T}/${PN}:${SLOT}"
 
 	ebegin "Installing library dependencies as ${depsfile##*/}"
-	insinto ${EROOT}var/lib/kde
+	insinto /var/lib/kde
 	doins "${depsfile}" || die "Failed to install library dependencies."
 	eend $?
 }
@@ -335,7 +337,7 @@
 	i=0
 	for pn in ${KMLOADLIBS} ; do
 		((i++))
-		depsfile="${EROOT}var/lib/kde/${pn}:${SLOT}"
+		depsfile="${EPREFIX}/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.30                 eclass/kde4-meta.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.30&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.30&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.29&r2=1.30

Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- kde4-meta.eclass	2 Dec 2009 17:07:05 -0000	1.29
+++ kde4-meta.eclass	10 Dec 2009 17:35:52 -0000	1.30
@@ -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.29 2009/12/02 17:07:05 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.30 2009/12/10 17:35:52 abcd Exp $
 #
 # @ECLASS: kde4-meta.eclass
 # @MAINTAINER:
@@ -16,13 +16,11 @@
 
 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
+[[ -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) )"
+	RDEPEND+=" handbook? ( $(add_kdebase_dep khelpcenter) )"
 fi
 
 # Add dependencies that all packages in a certain module share.
@@ -35,7 +33,7 @@
 		case ${PN} in
 			akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
 				IUSE+=" +kontact"
-				if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
+				if ! slot_is_at_least 4.4 ${SLOT}; then
 					RDEPEND+=" kontact? ( $(add_kdebase_dep kontactinterfaces) )"
 				fi
 				;;
@@ -355,7 +353,7 @@
 			if has kontact ${IUSE//+} && use kontact; then
 				KMEXTRA+="
 					kontact/plugins/${PLUGINNAME:-${PN}}/"
-				if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
+				if ! slot_is_at_least 4.4 ${SLOT}; then
 					KMEXTRACTONLY+="
 						kontactinterfaces/"
 				fi
@@ -636,16 +634,22 @@
 kde4-meta_src_configure() {
 	debug-print-function ${FUNCNAME} "$@"
 
+	# backwards-compatibility: make mycmakeargs an array, if it isn't already
+	if [[ $(declare -p mycmakeargs) != "declare -a mycmakeargs="* ]]; then
+		mycmakeargs=(${mycmakeargs})
+	fi
+
 	# Set some cmake default values here (usually workarounds for automagic deps)
 	case ${KMNAME} in
 		kdewebdev)
-			mycmakeargs="
+			mycmakeargs=(
 				-DWITH_KdepimLibs=OFF
 				-DWITH_LibXml2=OFF
 				-DWITH_LibXslt=OFF
 				-DWITH_Boost=OFF
 				-DWITH_LibTidy=OFF
-				${mycmakeargs}"
+				"${mycmakeargs[@]}"
+			)
 			;;
 	esac
 
@@ -664,12 +668,16 @@
 
 # @FUNCTION: kde4-meta_src_test
 # @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) if
+# I_KNOW_WHAT_I_AM_DOING is set. Use this in split ebuilds.
 kde4-meta_src_test() {
 	debug-print-function $FUNCNAME "$@"
 
-	kde4-base_src_test
+	if [[ $I_KNOW_WHAT_I_AM_DOING ]]; then
+		kde4-base_src_test
+	else
+		einfo "Tests disabled"
+	fi
 }
 
 # @FUNCTION: kde4-meta_src_install






^ permalink raw reply	[flat|nested] 3+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: cmake-utils.eclass kde4-base.eclass kde4-functions.eclass kde4-meta.eclass
@ 2009-12-14 19:44 Jonathan Callen (abcd)
  0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Callen (abcd) @ 2009-12-14 19:44 UTC (permalink / raw
  To: gentoo-commits

abcd        09/12/14 19:44:15

  Modified:             cmake-utils.eclass kde4-base.eclass
                        kde4-functions.eclass kde4-meta.eclass
  Log:
  Updates from kde overlay

Revision  Changes    Path
1.37                 eclass/cmake-utils.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.37&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?rev=1.37&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/cmake-utils.eclass?r1=1.36&r2=1.37

Index: cmake-utils.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- cmake-utils.eclass	10 Dec 2009 19:58:42 -0000	1.36
+++ cmake-utils.eclass	14 Dec 2009 19:44:15 -0000	1.37
@@ -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/cmake-utils.eclass,v 1.36 2009/12/10 19:58:42 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.37 2009/12/14 19:44:15 abcd Exp $
 
 # @ECLASS: cmake-utils.eclass
 # @MAINTAINER:
@@ -303,6 +303,7 @@
 			SET (CMAKE_SKIP_RPATH OFF CACHE BOOL "" FORCE)
 			SET (CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH "${EPREFIX}/usr/${CHOST}/lib/gcc;${EPREFIX}/usr/${CHOST}/lib;${EPREFIX}/usr/$(get_libdir);${EPREFIX}/$(get_libdir)"
 			CACHE STRING "" FORCE)
+			SET (CMAKE_BUILD_WITH_INSTALL_RPATH ON CACHE BOOL "" FORCE)
 			ENDIF (NOT APPLE)
 		_EOF_
 	fi
@@ -327,7 +328,7 @@
 	# No -DCMAKE_BUILD_TYPE=xxx definitions will be in effect.
 	local cmakeargs=(
 		-C "${common_config}"
-		-DCMAKE_INSTALL_PREFIX="${PREFIX:-${EPREFIX}/usr}"
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX:-/usr}"
 		"${mycmakeargs[@]}"
 		-DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}"
 		-DCMAKE_INSTALL_DO_STRIP=OFF



1.57                 eclass/kde4-base.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.57&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?rev=1.57&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-base.eclass?r1=1.56&r2=1.57

Index: kde4-base.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- kde4-base.eclass	10 Dec 2009 17:35:52 -0000	1.56
+++ kde4-base.eclass	14 Dec 2009 19:44:15 -0000	1.57
@@ -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.56 2009/12/10 17:35:52 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-base.eclass,v 1.57 2009/12/14 19:44:15 abcd Exp $
 
 # @ECLASS: kde4-base.eclass
 # @MAINTAINER:
@@ -440,9 +440,9 @@
 
 	if [[ ${KDEBASE} = kde-base ]]; then
 		if use kdeprefix; then
-			KDEDIR=${EPREFIX}/usr/kde/${_kdedir}
+			KDEDIR=/usr/kde/${_kdedir}
 		else
-			KDEDIR=${EPREFIX}/usr
+			KDEDIR=/usr
 		fi
 		: ${PREFIX:=${KDEDIR}}
 	else
@@ -453,9 +453,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=${EPREFIX}/usr/kde/${slot}
+					KDEDIR=/usr/kde/${slot}
 				else
-					KDEDIR=${EPREFIX}/usr
+					KDEDIR=/usr
 				fi
 				break;
 			fi
@@ -466,15 +466,17 @@
 		if [[ ${KDE_REQUIRED} = always ]] || { [[ ${KDE_REQUIRED} = optional ]] && use kde; }; then
 			[[ -z ${KDEDIR} ]] && die "Failed to determine KDEDIR!"
 		else
-			[[ -z ${KDEDIR} ]] && KDEDIR=${EPREFIX}/usr
+			[[ -z ${KDEDIR} ]] && KDEDIR=/usr
 		fi
 
-		: ${PREFIX:=${EPREFIX}/usr}
+		: ${PREFIX:=/usr}
 	fi
+	EKDEDIR=${EPREFIX}${KDEDIR}
+
 	# Point pkg-config path to KDE *.pc files
-	export PKG_CONFIG_PATH="${KDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
+	export PKG_CONFIG_PATH="${EKDEDIR}/$(get_libdir)/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}"
 	# Point to correct QT plugins path
-	QT_PLUGIN_PATH="${KDEDIR}/$(get_libdir)/kde4/plugins/"
+	QT_PLUGIN_PATH="${EKDEDIR}/$(get_libdir)/kde4/plugins/"
 
 	# Fix XDG collision with sandbox
 	export XDG_CONFIG_HOME="${T}"
@@ -573,7 +575,7 @@
 	[[ ${PN} = kdelibs ]] && cmakeargs+=(-DKDE_DISTRIBUTION_TEXT=Gentoo)
 
 	# Here we set the install prefix
-	cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${PREFIX}")
+	cmakeargs+=(-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}")
 
 	# Use colors
 	QTEST_COLORED=1
@@ -582,18 +584,18 @@
 	unset KDEDIRS
 
 	# Handle kdeprefix-ed KDE
-	if [[ ${KDEDIR} != ${EPREFIX}/usr ]]; then
+	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}"
+		PATH="${EKDEDIR}/bin:${PATH}"
+		LDPATH="${EKDEDIR}/$(get_libdir)${LDPATH+:}${LDPATH}"
 
 		# Append full RPATH
 		cmakeargs+=(-DCMAKE_SKIP_RPATH=OFF)
 
 		# Set cmake prefixes to allow buildsystem to locate valid KDE installation
 		# when more are present
-		cmakeargs+=(-DCMAKE_SYSTEM_PREFIX_PATH="${KDEDIR}")
+		cmakeargs+=(-DCMAKE_SYSTEM_PREFIX_PATH="${EKDEDIR}")
 	fi
 
 	# Handle kdeprefix in application itself
@@ -602,7 +604,7 @@
 		cmakeargs+=(-DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc)
 	fi
 
-	if [[ $(declare -p mycmakeargs) != "declare -a mycmakeargs="* ]]; then
+	if [[ $(declare -p mycmakeargs 2>&-) != "declare -a mycmakeargs="* ]]; then
 		mycmakeargs=(${mycmakeargs})
 	fi
 
@@ -640,6 +642,11 @@
 kde4-base_src_install() {
 	debug-print-function ${FUNCNAME} "$@"
 
+	# Prefix support, for usage in ebuilds
+	if [[ ${EAPI} == 2 ]] && ! use prefix; then
+		ED=${D}
+	fi
+
 	if [[ -n ${KMSAVELIBS} ]] ; then
 		install_library_dependencies
 	fi
@@ -669,7 +676,7 @@
 		done
 	fi
 
-	[[ -z ${ED} ]] && ED=${D}${EPREFIX}
+	[[ -z ${ED} ]] && ED=${D}
 
 	if [[ -n ${KDEBASE} ]] && [[ -d ${ED}usr/share/doc/${PF} ]]; then
 		# work around bug #97196



1.29                 eclass/kde4-functions.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.29&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?rev=1.29&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-functions.eclass?r1=1.28&r2=1.29

Index: kde4-functions.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- kde4-functions.eclass	10 Dec 2009 17:35:52 -0000	1.28
+++ kde4-functions.eclass	14 Dec 2009 19:44:15 -0000	1.29
@@ -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.28 2009/12/10 17:35:52 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-functions.eclass,v 1.29 2009/12/14 19:44:15 abcd Exp $
 
 inherit versionator
 
@@ -65,7 +65,9 @@
 buildsycoca() {
 	debug-print-function ${FUNCNAME} "$@"
 
-	[[ -z ${EROOT} ]] && EROOT=${ROOT}${EPREFIX}
+	if [[ ${EAPI} == 2 ]] && ! use prefix; then
+		EROOT=${ROOT}
+	fi
 
 	local KDE3DIR="${EROOT}usr/kde/3.5"
 	if [[ -z ${EROOT%%/} && -x "${KDE3DIR}"/bin/kbuildsycoca ]]; then
@@ -85,7 +87,7 @@
 
 	# fix permission for some directories
 	for x in share/{config,kde4}; do
-		[[ ${KDEDIR} = ${EROOT}usr ]] && DIRS=${EROOT}usr || DIRS="${EROOT}usr ${KDEDIR}"
+		[[ ${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
 			if [[ $(stat --format=%a "${y}/${x}") != 755 ]]; then



1.31                 eclass/kde4-meta.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.31&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?rev=1.31&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/kde4-meta.eclass?r1=1.30&r2=1.31

Index: kde4-meta.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- kde4-meta.eclass	10 Dec 2009 17:35:52 -0000	1.30
+++ kde4-meta.eclass	14 Dec 2009 19:44:15 -0000	1.31
@@ -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.30 2009/12/10 17:35:52 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde4-meta.eclass,v 1.31 2009/12/14 19:44:15 abcd Exp $
 #
 # @ECLASS: kde4-meta.eclass
 # @MAINTAINER:
@@ -635,7 +635,7 @@
 	debug-print-function ${FUNCNAME} "$@"
 
 	# backwards-compatibility: make mycmakeargs an array, if it isn't already
-	if [[ $(declare -p mycmakeargs) != "declare -a mycmakeargs="* ]]; then
+	if [[ $(declare -p mycmakeargs 2>&-) != "declare -a mycmakeargs="* ]]; then
 		mycmakeargs=(${mycmakeargs})
 	fi
 






^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-12-14 19:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-10 17:35 [gentoo-commits] gentoo-x86 commit in eclass: cmake-utils.eclass kde4-base.eclass kde4-functions.eclass kde4-meta.eclass Jonathan Callen (abcd)
  -- strict thread matches above, loose matches on Subject: below --
2009-12-14 19:44 Jonathan Callen (abcd)
2009-10-27 14:16 Tomas Chvatal (scarabeus)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox