[Cmake-commits] CMake branch, next, updated. v2.8.12-4702-g74c0dda

Stephen Kelly steveire at gmail.com
Thu Oct 31 10:30:37 EDT 2013


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  74c0dda14166d8f3e657ad2171bf6995122610b2 (commit)
       via  500ee8e7d8e61f0bd4c8c26920b87f9be527b6f0 (commit)
       via  893cc69bbe86fd95c509214cfe2f64b078b98c0b (commit)
      from  2527b5bf691949664f900590e5b0c5ce7125c345 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74c0dda14166d8f3e657ad2171bf6995122610b2
commit 74c0dda14166d8f3e657ad2171bf6995122610b2
Merge: 2527b5b 500ee8e
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu Oct 31 10:30:35 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Oct 31 10:30:35 2013 -0400

    Merge topic 'target_compile_features' into next
    
    500ee8e Remove XL compiler features.
    893cc69 Improve the feature testing logic.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=500ee8e7d8e61f0bd4c8c26920b87f9be527b6f0
commit 500ee8e7d8e61f0bd4c8c26920b87f9be527b6f0
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu Oct 31 15:29:34 2013 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Thu Oct 31 15:29:34 2013 +0100

    Remove XL compiler features.
    
    C++11 mode is documented as experimental and not-to-be-relied-on.

diff --git a/Modules/Compiler/XL-CXX.cmake b/Modules/Compiler/XL-CXX.cmake
index 2042331..6c842cd 100644
--- a/Modules/Compiler/XL-CXX.cmake
+++ b/Modules/Compiler/XL-CXX.cmake
@@ -9,23 +9,3 @@ set(CMAKE_CXX_FLAGS_INIT "-qthreaded -qhalt=e")
 
 set(CMAKE_CXX_COMPILE_OBJECT
   "<CMAKE_CXX_COMPILER> -+ <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
-set(_CMAKE_CXX_CREATE_OBJECT_FILE "${CMAKE_CXX_COMPILER};<FLAGS>;-c;<SOURCE>")
-
-set(CMAKE_CXX11_COMPILE_FEATURES)
-
-include("${CMAKE_ROOT}/Modules/Internal/FeatureTesting.cmake")
-
-if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 10.1)
-   # TODO: See comment 4 here: https://www.ibm.com/developerworks/community/blogs/5894415f-be62-4bc0-81c5-3956e82276f3/entry/xlc_compiler_s_c_11_support50?lang=en
-   # http://pic.dhe.ibm.com/infocenter/lnxpcomp/v121v141/index.jsp says c++0x support is experimental and should not be relied upon. Maybe we should not enable it
-   # for this compiler.
-   # http://pic.dhe.ibm.com/infocenter/lnxpcomp/v121v141/index.jsp?topic=%2Fcom.ibm.xlcpp121.linux.doc%2Flanguage_ref%2Fcpp0x_exts.html says that IBM extensions
-   # are enabled by default. We disable that stuff for GNU unless a non-portable feature is used. Do the same here?
-   set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-qlanglvl=extended0x")
-   record_compiler_features(CXX "-qlanglvl=extended0x" CMAKE_CXX11_COMPILE_FEATURES)
-endif()
-
-
-set(CMAKE_CXX_COMPILE_FEATURES
-  ${CMAKE_CXX11_COMPILE_FEATURES}
-)

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=893cc69bbe86fd95c509214cfe2f64b078b98c0b
commit 893cc69bbe86fd95c509214cfe2f64b078b98c0b
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu Oct 31 15:28:00 2013 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Thu Oct 31 15:28:00 2013 +0100

    Improve the feature testing logic.

diff --git a/Modules/Internal/FeatureTesting.cmake b/Modules/Internal/FeatureTesting.cmake
index 50bf84c..3df4f4f 100644
--- a/Modules/Internal/FeatureTesting.cmake
+++ b/Modules/Internal/FeatureTesting.cmake
@@ -2,7 +2,8 @@
 macro(record_compiler_features lang compile_flags feature_list)
   include("${CMAKE_ROOT}/Modules/Compiler/${CMAKE_${lang}_COMPILER_ID}-${lang}-FeatureTests.cmake" OPTIONAL)
 
-  string(TOLOWER lang_lc ${lang})
+  string(TOLOWER ${lang} lang_lc)
+  file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}")
   file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/feature_tests.${lang_lc}" "
   extern const char features[] = {\n")
   foreach(feature ${CMAKE_${lang}_KNOWN_FEATURES})
@@ -20,13 +21,14 @@ macro(record_compiler_features lang compile_flags feature_list)
     WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/CMakeFiles"
     ERROR_VARIABLE _error
     OUTPUT_VARIABLE _output
+    RESULT_VARIABLE _result
   )
   # We need to capture these when running the process so that the output does
   # not leak and confuse unit tests. Clear the variables so they do not leak
   # to user CMake code either.
   unset(_error)
   unset(_output)
-  if (EXISTS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}")
+  if (_result EQUAL 0 AND EXISTS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}")
     file(STRINGS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}"
       features REGEX "${lang}_FEATURE:.*")
     foreach(info ${features})

-----------------------------------------------------------------------

Summary of changes:
 Modules/Compiler/XL-CXX.cmake         |   20 --------------------
 Modules/Internal/FeatureTesting.cmake |    6 ++++--
 2 files changed, 4 insertions(+), 22 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list