kensington    14/08/12 14:58:40

  Modified:             ChangeLog cmake-utils.eclass
  Log:
  Sync with KDE overlay, including a large number of cosmetic changes and 
simplification and removal of old code.

Revision  Changes    Path
1.1351               eclass/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1351&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1351&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1350&r2=1.1351

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1350
retrieving revision 1.1351
diff -u -r1.1350 -r1.1351
--- ChangeLog   11 Aug 2014 00:36:20 -0000      1.1350
+++ ChangeLog   12 Aug 2014 14:58:40 -0000      1.1351
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1350 2014/08/11 
00:36:20 kumba Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1351 2014/08/12 
14:58:40 kensington Exp $
+
+  12 Aug 2014; Michael Palimaka <kensing...@gentoo.org> cmake-utils.eclass:
+  Sync with KDE overlay, including a large number of cosmetic changes and
+  simplification and removal of old code.
 
   11 Aug 2014; Joshua Kinard <ku...@gentoo.org> flag-o-matic.eclass:
   Added -mfix-r10000/-mno-fix-r10000 to ALLOWED_FLAGS for MIPS.



1.110                eclass/cmake-utils.eclass

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-utils.eclass?rev=1.110&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-utils.eclass?rev=1.110&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-utils.eclass?r1=1.109&r2=1.110

Index: cmake-utils.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v
retrieving revision 1.109
retrieving revision 1.110
diff -u -r1.109 -r1.110
--- cmake-utils.eclass  5 Aug 2014 22:59:44 -0000       1.109
+++ cmake-utils.eclass  12 Aug 2014 14:58:40 -0000      1.110
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.109 
2014/08/05 22:59:44 johu Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.110 
2014/08/12 14:58:40 kensington Exp $
 
 # @ECLASS: cmake-utils.eclass
 # @MAINTAINER:
@@ -20,42 +20,92 @@
 if [[ -z ${_CMAKE_UTILS_ECLASS} ]]; then
 _CMAKE_UTILS_ECLASS=1
 
-# @ECLASS-VARIABLE: WANT_CMAKE
+
+# @ECLASS-VARIABLE: BUILD_DIR
 # @DESCRIPTION:
-# Specify if cmake-utils eclass should depend on cmake optionally 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}"
+# Build directory where all cmake processed files should be generated.
+# For in-source build it's fixed to ${CMAKE_USE_DIR}.
+# For out-of-source build it can be overridden, by default it uses
+# ${WORKDIR}/${P}_build.
+#
+# This variable has been called CMAKE_BUILD_DIR formerly.
+# It is set under that name for compatibility.
+
+# @ECLASS-VARIABLE: CMAKE_BINARY
+# @DESCRIPTION:
+# Eclass can use different cmake binary than the one provided in by system.
+: ${CMAKE_BINARY:=cmake}
+
+# @ECLASS-VARIABLE: CMAKE_BUILD_TYPE
+# @DESCRIPTION:
+# Set to override default CMAKE_BUILD_TYPE. Only useful for packages
+# known to make use of "if (CMAKE_BUILD_TYPE MATCHES xxx)".
+# If about to be set - needs to be set before invoking 
cmake-utils_src_configure.
+# You usualy do *NOT* want nor need to set it as it pulls CMake default 
build-type
+# specific compiler flags overriding make.conf.
+: ${CMAKE_BUILD_TYPE:=Gentoo}
+
+# @ECLASS-VARIABLE: CMAKE_IN_SOURCE_BUILD
+# @DESCRIPTION:
+# Set to enable in-source build.
+
+# @ECLASS-VARIABLE: CMAKE_MAKEFILE_GENERATOR
+# @DESCRIPTION:
+# Specify a makefile generator to be used by cmake.
+# At this point only "emake" and "ninja" are supported.
+: ${CMAKE_MAKEFILE_GENERATOR:=emake}
 
 # @ECLASS-VARIABLE: CMAKE_MIN_VERSION
 # @DESCRIPTION:
 # Specify the minimum required CMake version.
-CMAKE_MIN_VERSION="${CMAKE_MIN_VERSION:-2.8.12}"
+: ${CMAKE_MIN_VERSION:=2.8.12}
+
+# @ECLASS-VARIABLE: CMAKE_REMOVE_MODULES
+# @DESCRIPTION:
+# Do we want to remove anything? yes or whatever else for no
+: ${CMAKE_REMOVE_MODULES:=yes}
+CMAKE_REMOVE_MODULES="${CMAKE_REMOVE_MODULES:-yes}"
 
 # @ECLASS-VARIABLE: CMAKE_REMOVE_MODULES_LIST
 # @DESCRIPTION:
 # Space-separated list of CMake modules that will be removed in $S during 
src_prepare,
 # in order to force packages to use the system version.
-CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST:-FindBLAS FindLAPACK}"
+: ${CMAKE_REMOVE_MODULES_LIST:=FindBLAS FindLAPACK}
 
-# @ECLASS-VARIABLE: CMAKE_REMOVE_MODULES
+# @ECLASS-VARIABLE: CMAKE_USE_DIR
 # @DESCRIPTION:
-# Do we want to remove anything? yes or whatever else for no
-CMAKE_REMOVE_MODULES="${CMAKE_REMOVE_MODULES:-yes}"
+# Sets the directory where we are working with cmake.
+# For example when application uses autotools and only one
+# plugin needs to be done by cmake.
+# By default it uses ${S}.
 
-# @ECLASS-VARIABLE: CMAKE_MAKEFILE_GENERATOR
+# @ECLASS-VARIABLE: CMAKE_VERBOSE
 # @DESCRIPTION:
-# Specify a makefile generator to be used by cmake.
-# At this point only "emake" and "ninja" are supported.
-CMAKE_MAKEFILE_GENERATOR="${CMAKE_MAKEFILE_GENERATOR:-emake}"
+# Set to OFF to disable verbose messages during compilation
+: ${CMAKE_VERBOSE:=ON}
 
 # @ECLASS-VARIABLE: CMAKE_WARN_UNUSED_CLI
 # @DESCRIPTION:
 # Warn about variables that are declared on the command line
 # but not used. Might give false-positives.
 # "no" to disable (default) or anything else to enable.
-CMAKE_WARN_UNUSED_CLI="${CMAKE_WARN_UNUSED_CLI:-no}"
+: ${CMAKE_WARN_UNUSED_CLI:=no}
+
+# @ECLASS-VARIABLE: PREFIX
+# @DESCRIPTION:
+# Eclass respects PREFIX variable, though it's not recommended way to set
+# install/lib/bin prefixes.
+# Use -DCMAKE_INSTALL_PREFIX=... CMake variable instead.
+: ${PREFIX:=/usr}
+
+# @ECLASS-VARIABLE: WANT_CMAKE
+# @DESCRIPTION:
+# Specify if cmake-utils eclass should depend on cmake optionally or not.
+# This is useful when only part of application is using cmake build system.
+# Valid values are: always [default], optional (where the value is the useflag
+# used for optionality)
+: ${WANT_CMAKE:=always}
+
 
 CMAKEDEPEND=""
 case ${WANT_CMAKE} in
@@ -68,13 +118,12 @@
 esac
 inherit toolchain-funcs multilib flag-o-matic eutils
 
-CMAKE_EXPF="src_compile src_test src_install"
 case ${EAPI:-0} in
-       2|3|4|5) CMAKE_EXPF+=" src_prepare src_configure" ;;
-       1|0) eerror "cmake-utils no longer supports EAPI 0-1." && die
-       ;;
-       *) die "Unknown EAPI, bug eclass maintainers." ;;
+       2|3|4|5) : ;;
+       *) die "EAPI=${EAPI} is not supported" ;;
 esac
+
+CMAKE_EXPF="src_prepare src_configure src_compile src_test src_install"
 EXPORT_FUNCTIONS ${CMAKE_EXPF}
 
 case ${CMAKE_MAKEFILE_GENERATOR} in
@@ -137,53 +186,6 @@
        fi
 }
 
-# @ECLASS-VARIABLE: BUILD_DIR
-# @DESCRIPTION:
-# Build directory where all cmake processed files should be generated.
-# For in-source build it's fixed to ${CMAKE_USE_DIR}.
-# For out-of-source build it can be overriden, by default it uses
-# ${WORKDIR}/${P}_build.
-#
-# This variable has been called CMAKE_BUILD_DIR formerly.
-# It is set under that name for compatibility.
-
-# @ECLASS-VARIABLE: CMAKE_BUILD_TYPE
-# @DESCRIPTION:
-# Set to override default CMAKE_BUILD_TYPE. Only useful for packages
-# known to make use of "if (CMAKE_BUILD_TYPE MATCHES xxx)".
-# If about to be set - needs to be set before invoking 
cmake-utils_src_configure.
-# You usualy do *NOT* want nor need to set it as it pulls CMake default 
build-type
-# specific compiler flags overriding make.conf.
-: ${CMAKE_BUILD_TYPE:=Gentoo}
-
-# @ECLASS-VARIABLE: CMAKE_IN_SOURCE_BUILD
-# @DESCRIPTION:
-# Set to enable in-source build.
-
-# @ECLASS-VARIABLE: CMAKE_USE_DIR
-# @DESCRIPTION:
-# Sets the directory where we are working with cmake.
-# For example when application uses autotools and only one
-# plugin needs to be done by cmake.
-# By default it uses ${S}.
-
-# @ECLASS-VARIABLE: CMAKE_VERBOSE
-# @DESCRIPTION:
-# Set to OFF to disable verbose messages during compilation
-: ${CMAKE_VERBOSE:=ON}
-
-# @ECLASS-VARIABLE: PREFIX
-# @DESCRIPTION:
-# Eclass respects PREFIX variable, though it's not recommended way to set
-# install/lib/bin prefixes.
-# Use -DCMAKE_INSTALL_PREFIX=... CMake variable instead.
-: ${PREFIX:=/usr}
-
-# @ECLASS-VARIABLE: CMAKE_BINARY
-# @DESCRIPTION:
-# Eclass can use different cmake binary than the one provided in by system.
-: ${CMAKE_BINARY:=cmake}
-
 # Determine using IN or OUT source build
 _check_build_dir() {
        : ${CMAKE_USE_DIR:=${S}}
@@ -261,7 +263,7 @@
 #
 # `cmake-utils_use_find_package foo LibFoo` echoes 
-DCMAKE_DISABLE_FIND_PACKAGE_LibFoo=OFF
 # if foo is enabled and -DCMAKE_DISABLE_FIND_PACKAGE_LibFoo=ON if it is 
disabled.
-# This can be used to make find_package optional (since cmake-2.8.6).
+# This can be used to make find_package optional.
 cmake-utils_use_find_package() { _use_me_now_inverted 
CMAKE_DISABLE_FIND_PACKAGE_ "$@" ; }
 
 # @FUNCTION: cmake-utils_use_disable
@@ -372,15 +374,15 @@
 enable_cmake-utils_src_prepare() {
        debug-print-function ${FUNCNAME} "$@"
 
-       debug-print "$FUNCNAME: PATCHES=$PATCHES"
+       pushd "${S}" > /dev/null
 
-       pushd "${S}" >/dev/null
+       debug-print "$FUNCNAME: PATCHES=$PATCHES"
        [[ ${PATCHES[@]} ]] && epatch "${PATCHES[@]}"
-
+               
        debug-print "$FUNCNAME: applying user patches"
        epatch_user
 
-       popd >/dev/null
+       popd > /dev/null
 }
 
 # @VARIABLE: mycmakeargs
@@ -393,9 +395,10 @@
 #      local mycmakeargs=(
 #              $(cmake-utils_use_with openconnect)
 #      )
+#
 #      cmake-utils_src_configure
 # }
-
+# @CODE
 
 enable_cmake-utils_src_configure() {
        debug-print-function ${FUNCNAME} "$@"
@@ -508,17 +511,16 @@
                "${MYCMAKEARGS}"
        )
 
-       pushd "${BUILD_DIR}" >/dev/null
+       pushd "${BUILD_DIR}" > /dev/null
        debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: mycmakeargs is 
${mycmakeargs_local[*]}"
        echo "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}"
        "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake 
failed"
-       popd >/dev/null
+       popd > /dev/null
 }
 
 enable_cmake-utils_src_compile() {
        debug-print-function ${FUNCNAME} "$@"
 
-       has src_configure ${CMAKE_EXPF} || cmake-utils_src_configure
        cmake-utils_src_make "$@"
 }
 
@@ -590,61 +592,25 @@
        debug-print-function ${FUNCNAME} "$@"
 
        _check_build_dir
-       pushd "${BUILD_DIR}" >/dev/null
+       pushd "${BUILD_DIR}" > /dev/null
 
        ${CMAKE_MAKEFILE_GENERATOR}_src_make "$@"
 
-       popd >/dev/null
-}
-
-enable_cmake-utils_src_install() {
-       debug-print-function ${FUNCNAME} "$@"
-
-       _check_build_dir
-       pushd "${BUILD_DIR}" >/dev/null
-       DESTDIR="${D}" ${CMAKE_MAKEFILE_GENERATOR} install "$@" || die "died 
running ${CMAKE_MAKEFILE_GENERATOR} install"
-       popd >/dev/null
-
-       pushd "${S}" >/dev/null
-       # Install docs, copied from base_src_install_docs
-       local x
-
-       if [[ "$(declare -p DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; then
-               for x in "${DOCS[@]}"; do
-                       debug-print "$FUNCNAME: docs: creating document from 
${x}"
-                       dodoc "${x}" || die "dodoc failed"
-               done
-       fi
-       if [[ "$(declare -p HTML_DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; 
then
-               for x in "${HTML_DOCS[@]}"; do
-                       debug-print "$FUNCNAME: docs: creating html document 
from ${x}"
-                       dohtml -r "${x}" || die "dohtml failed"
-               done
-       fi
-
-       # Backward compatibility, for non-array variables
-       if [[ -n "${DOCS}" ]] && [[ "$(declare -p DOCS 2>/dev/null 2>&1)" != 
"declare -a"* ]]; then
-               dodoc ${DOCS} || die "dodoc failed"
-       fi
-       if [[ -n "${HTML_DOCS}" ]] && [[ "$(declare -p HTML_DOCS 2>/dev/null 
2>&1)" != "declare -a"* ]]; then
-               dohtml -r ${HTML_DOCS} || die "dohtml failed"
-       fi
-
-       popd >/dev/null
+       popd > /dev/null
 }
 
 enable_cmake-utils_src_test() {
        debug-print-function ${FUNCNAME} "$@"
 
        _check_build_dir
-       pushd "${BUILD_DIR}" >/dev/null
+       pushd "${BUILD_DIR}" > /dev/null
        [[ -e CTestTestfile.cmake ]] || { echo "No tests found. Skipping."; 
return 0 ; }
 
        [[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose 
--output-on-failure )
 
        if ctest "${myctestargs[@]}" "$@" ; then
                einfo "Tests succeeded."
-               popd >/dev/null
+               popd > /dev/null
                return 0
        else
                if [[ -n "${CMAKE_YES_I_WANT_TO_SEE_THE_TEST_LOG}" ]] ; then
@@ -659,11 +625,24 @@
                fi
 
                # die might not die due to nonfatal
-               popd >/dev/null
+               popd > /dev/null
                return 1
        fi
 }
 
+enable_cmake-utils_src_install() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       _check_build_dir
+       pushd "${BUILD_DIR}" > /dev/null
+       DESTDIR="${D}" ${CMAKE_MAKEFILE_GENERATOR} install "$@" || die "died 
running ${CMAKE_MAKEFILE_GENERATOR} install"
+       popd > /dev/null
+
+       pushd "${S}" > /dev/null
+       einstalldocs
+       popd > /dev/null
+}
+
 # @FUNCTION: cmake-utils_src_prepare
 # @DESCRIPTION:
 # Apply ebuild and user patches.
@@ -681,20 +660,12 @@
 
 # @FUNCTION: 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.
+# General function for compiling with cmake.
 # Automatically detects the build type. All arguments are passed to emake.
 cmake-utils_src_compile() {
        _execute_optionally "src_compile" "$@"
 }
 
-# @FUNCTION: cmake-utils_src_install
-# @DESCRIPTION:
-# Function for installing the package. Automatically detects the build type.
-cmake-utils_src_install() {
-       _execute_optionally "src_install" "$@"
-}
-
 # @FUNCTION: cmake-utils_src_test
 # @DESCRIPTION:
 # Function for testing the package. Automatically detects the build type.
@@ -702,6 +673,13 @@
        _execute_optionally "src_test" "$@"
 }
 
+# @FUNCTION: cmake-utils_src_install
+# @DESCRIPTION:
+# Function for installing the package. Automatically detects the build type.
+cmake-utils_src_install() {
+       _execute_optionally "src_install" "$@"
+}
+
 # Optionally executes phases based on WANT_CMAKE variable/USE flag.
 _execute_optionally() {
        local phase="$1" ; shift




Reply via email to