commit:     7f03821876f1a7884396057f315013c3622b4609
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  3 12:41:04 2015 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Wed Nov  4 12:34:27 2015 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=7f038218

cmake-utils.eclass: Prepare for cmake-3.4

 eclass/cmake-utils.eclass | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/eclass/cmake-utils.eclass b/eclass/cmake-utils.eclass
index c92759d..2ebde45 100644
--- a/eclass/cmake-utils.eclass
+++ b/eclass/cmake-utils.eclass
@@ -121,7 +121,7 @@ case ${WANT_CMAKE} in
                CMAKEDEPEND+="${WANT_CMAKE}? ( "
                ;;
 esac
-inherit toolchain-funcs multilib flag-o-matic eutils
+inherit toolchain-funcs multilib flag-o-matic eutils versionator
 
 case ${EAPI} in
        2|3|4|5) : ;;
@@ -461,12 +461,22 @@ enable_cmake-utils_src_configure() {
 
        # Prepare Gentoo override rules (set valid compiler, append CPPFLAGS 
etc.)
        local build_rules=${BUILD_DIR}/gentoo_rules.cmake
+       # Since cmake-3.4.0_rc1 "<FLAGS>" no longer contains includes and thus
+       # we need to add "<INCLUDES>"
+       local includes=
+       if [[ ${PN} == cmake ]] ; then
+               if $(version_is_at_least 3.4.0 $(get_version_component_range 
1-3 ${PV})) ; then
+                       includes="<INCLUDES>"
+               fi
+       elif has_version \>=dev-util/cmake-3.4.0_rc1 ; then
+               includes="<INCLUDES>"
+       fi
        cat > "${build_rules}" <<- _EOF_ || die
                SET (CMAKE_AR $(type -P $(tc-getAR)) CACHE FILEPATH "Archive 
manager" FORCE)
-               SET (CMAKE_ASM_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> 
${CFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "ASM compile command" 
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_COMPILE_OBJECT "<CMAKE_CXX_COMPILER> <DEFINES> 
${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C++ compile command" 
FORCE)
-               SET (CMAKE_Fortran_COMPILE_OBJECT "<CMAKE_Fortran_COMPILER> 
<DEFINES> ${FCFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "Fortran 
compile command" FORCE)
+               SET (CMAKE_ASM_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> 
${includes} ${CFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "ASM 
compile command" FORCE)
+               SET (CMAKE_C_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> 
${includes} ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C 
compile command" FORCE)
+               SET (CMAKE_CXX_COMPILE_OBJECT "<CMAKE_CXX_COMPILER> <DEFINES> 
${includes} ${CPPFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING "C++ 
compile command" FORCE)
+               SET (CMAKE_Fortran_COMPILE_OBJECT "<CMAKE_Fortran_COMPILER> 
<DEFINES> ${includes} ${FCFLAGS} <FLAGS> -o <OBJECT> -c <SOURCE>" CACHE STRING 
"Fortran compile command" FORCE)
                SET (CMAKE_RANLIB $(type -P $(tc-getRANLIB)) CACHE FILEPATH 
"Archive index generator" FORCE)
                SET (PKG_CONFIG_EXECUTABLE $(type -P $(tc-getPKG_CONFIG)) CACHE 
FILEPATH "pkg-config executable" FORCE)
        _EOF_

Reply via email to