[Cmake-commits] CMake branch, next, updated. v2.8.11.2-3857-gc4e818b

Rolf Eike Beer eike at sf-mail.de
Tue Aug 13 14:52:56 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  c4e818b160744502564009c2f3917532655490a3 (commit)
       via  b8f006f28a3dae8420cbb9387fd7871644dde273 (commit)
       via  0558337c19dad9a66e019716d5290f5ce3d81456 (commit)
       via  2f32ebc2932a9b017d336781008c1f3c9076a31d (commit)
       via  32384edce18b9ea67a5260ea3b7ed7ded484c814 (commit)
       via  61d407bb3a7c891af31e951e55effd840c595c74 (commit)
      from  4ca770d82990908c3a1814b15c3a3c1e8b68e5ad (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=c4e818b160744502564009c2f3917532655490a3
commit c4e818b160744502564009c2f3917532655490a3
Merge: 4ca770d b8f006f
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 14:52:49 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Aug 13 14:52:49 2013 -0400

    Merge topic 'cxx11' into next
    
    b8f006f CXXFeatures: compose full flag name only in check loop
    0558337 CXXFeatures: add expected features for Clang
    2f32ebc CXXFeatures: allow "better" compilers than expected
    32384ed CXXFeatures: update compiler matching in test
    61d407b CXXFeatures: update expected features and flags (Intel, SunPro)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b8f006f28a3dae8420cbb9387fd7871644dde273
commit b8f006f28a3dae8420cbb9387fd7871644dde273
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 20:52:26 2013 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Tue Aug 13 20:52:26 2013 +0200

    CXXFeatures: compose full flag name only in check loop

diff --git a/Tests/Module/FindCXXFeatures/CMakeLists.txt b/Tests/Module/FindCXXFeatures/CMakeLists.txt
index 57e8fc4..be2df14 100644
--- a/Tests/Module/FindCXXFeatures/CMakeLists.txt
+++ b/Tests/Module/FindCXXFeatures/CMakeLists.txt
@@ -2,23 +2,23 @@ cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR)
 project(FindCXXFeatures CXX)
 
 set(_all_cxx_features
-        CXXFeatures_auto_FOUND
-        CXXFeatures_class_override_final_FOUND
-        CXXFeatures_constexpr_FOUND
-        CXXFeatures_cstdint_header_FOUND
-        CXXFeatures_decltype_FOUND
-        CXXFeatures_defaulted_functions_FOUND
-        CXXFeatures_delegating_constructors_FOUND
-        CXXFeatures_deleted_functions_FOUND
-        CXXFeatures_func_identifier_FOUND
-        CXXFeatures_initializer_list_FOUND
-        CXXFeatures_lambda_FOUND
-        CXXFeatures_long_long_FOUND
-        CXXFeatures_nullptr_FOUND
-        CXXFeatures_rvalue_references_FOUND
-        CXXFeatures_sizeof_member_FOUND
-        CXXFeatures_static_assert_FOUND
-        CXXFeatures_variadic_templates_FOUND
+        auto
+        class_override_final
+        constexpr
+        cstdint_header
+        decltype
+        defaulted_functions
+        delegating_constructors
+        deleted_functions
+        func_identifier
+        initializer_list
+        lambda
+        long_long
+        nullptr
+        rvalue_references
+        sizeof_member
+        static_assert
+        variadic_templates
 )
 
 unset(_expected_features)
@@ -29,101 +29,101 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     # no idea since when this is supported, but it is at least
     # supported since 3.1
     list(APPEND _expected_features
-         CXXFeatures_long_long_FOUND
-         CXXFeatures_func_identifier_FOUND)
+         long_long
+         func_identifier)
 
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.3)
         set(_expected_cxx11_flag "-std=c++0x")
         if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7)
             set(_expected_cxx11_flag "-std=c++11")
             list(APPEND _expected_features
-                 CXXFeatures_class_override_final_FOUND
-                 CXXFeatures_delegating_constructors_FOUND)
+                 class_override_final
+                 delegating_constructors)
         endif ()
         if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.6)
             list(APPEND _expected_features
-                 CXXFeatures_nullptr_FOUND)
+                 nullptr)
         endif ()
         if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.5)
             list(APPEND _expected_features
-                 CXXFeatures_constexpr_FOUND
-                 CXXFeatures_lambda_FOUND)
+                 constexpr
+                 lambda)
         endif ()
         if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4)
             list(APPEND _expected_features
-                 CXXFeatures_auto_FOUND
-                 CXXFeatures_cstdint_header_FOUND
-                 CXXFeatures_defaulted_functions_FOUND
-                 CXXFeatures_deleted_functions_FOUND
-                 CXXFeatures_initializer_list_FOUND
-                 CXXFeatures_sizeof_member_FOUND)
+                 auto
+                 cstdint_header
+                 defaulted_functions
+                 deleted_functions
+                 initializer_list
+                 sizeof_member)
         endif ()
         list(APPEND _expected_features
-             CXXFeatures_decltype_FOUND
-             CXXFeatures_rvalue_references_FOUND
-             CXXFeatures_static_assert_FOUND
-             CXXFeatures_variadic_templates_FOUND)
+             decltype
+             rvalue_references
+             static_assert
+             variadic_templates)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 17)
         list(APPEND _expected_features
-             CXXFeatures_class_override_final_FOUND)
+             class_override_final)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16)
         list(APPEND _expected_features
-             CXXFeatures_auto_FOUND
-             CXXFeatures_cstdint_header_FOUND
-             CXXFeatures_decltype_FOUND
-             CXXFeatures_lambda_FOUND
-             CXXFeatures_nullptr_FOUND
-             CXXFeatures_rvalue_references_FOUND
-             CXXFeatures_static_assert_FOUND)
+             auto
+             cstdint_header
+             decltype
+             lambda
+             nullptr
+             rvalue_references
+             static_assert)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 13.01)
         list(APPEND _expected_features
-             CXXFeatures_long_long_FOUND)
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Borland")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.60)
         list(APPEND _expected_features
-             CXXFeatures_long_long_FOUND)
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "XL")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 10.1)
         set(_expected_cxx11_flag "-qlanglvl=extended0x")
         list(APPEND _expected_features
-             CXXFeatures_long_long_FOUND)
+             long_long)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.1)
         # func_identifier and sizeof_member are here because they were detected on a
         # test machine but it is unclear since when they are supported
         list(APPEND _expected_features
-             CXXFeatures_auto_FOUND
-             CXXFeatures_decltype_FOUND
-             CXXFeatures_delegating_constructors_FOUND
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_sizeof_member_FOUND
-             CXXFeatures_static_assert_FOUND
-             CXXFeatures_variadic_templates_FOUND)
+             auto
+             decltype
+             delegating_constructors
+             func_identifier
+             sizeof_member
+             static_assert
+             variadic_templates)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1)
         list(APPEND _expected_features
-             CXXFeatures_constexpr_FOUND
-             CXXFeatures_rvalue_references_FOUND)
+             constexpr
+             rvalue_references)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1)
         list(APPEND _expected_features
-             CXXFeatures_long_long_FOUND
-             CXXFeatures_sizeof_member_FOUND)
+             long_long
+             sizeof_member)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "PGI")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.3)
         list(APPEND _expected_features
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND)
+             func_identifier
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.1)
@@ -133,26 +133,26 @@ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
             set(_expected_cxx11_flag "-std=c++0x")
         endif ()
         list(APPEND _expected_features
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND
-             CXXFeatures_static_assert_FOUND)
+             func_identifier
+             long_long
+             static_assert)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12)
         list(APPEND _expected_features
-             CXXFeatures_auto_FOUND
-             CXXFeatures_decltype_FOUND
-             CXXFeatures_defaulted_functions_FOUND
-             CXXFeatures_deleted_functions_FOUND
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_lambda_FOUND
-             CXXFeatures_long_long_FOUND
-             CXXFeatures_rvalue_references_FOUND
-             CXXFeatures_sizeof_member_FOUND
-             CXXFeatures_static_assert_FOUND)
+             auto
+             decltype
+             defaulted_functions
+             deleted_functions
+             func_identifier
+             lambda
+             long_long
+             rvalue_references
+             sizeof_member
+             static_assert)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1)
         list(APPEND _expected_features
-             CXXFeatures_variadic_templates_FOUND)
+             variadic_templates)
     endif ()
     # constexpr is partially supported in version 13, it may
     # already show up for this version depending on the check file.
@@ -164,66 +164,66 @@ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
             set(_expected_cxx11_flag "-std=c++11")
         endif ()
         list(APPEND _expected_features
-             CXXFeatures_nullptr_FOUND)
+             nullptr)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 14)
         list(APPEND _expected_features
-             CXXFeatures_class_override_final_FOUND
-             CXXFeatures_constexpr_FOUND
-             CXXFeatures_delegating_constructors_FOUND
-             CXXFeatures_initializer_list_FOUND)
+             class_override_final
+             constexpr
+             delegating_constructors
+             initializer_list)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Watcom")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.70)
         list(APPEND _expected_features
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND)
+             func_identifier
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MIPSpro")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.4.4)
         list(APPEND _expected_features
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND)
+             func_identifier
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "HP")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.20)
         list(APPEND _expected_features
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND)
+             func_identifier
+             long_long)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.9)
          set(_expected_cxx11_flag "-std=c++0x")
         list(APPEND _expected_features
-             CXXFeatures_auto_FOUND
-             CXXFeatures_class_override_final_FOUND
-             CXXFeatures_constexpr_FOUND
-             CXXFeatures_decltype_FOUND
-             CXXFeatures_deleted_functions_FOUND
-             CXXFeatures_func_identifier_FOUND
-             CXXFeatures_long_long_FOUND
-             CXXFeatures_rvalue_references_FOUND
-             CXXFeatures_sizeof_member_FOUND
-             CXXFeatures_static_assert_FOUND
-             CXXFeatures_variadic_templates_FOUND)
+             auto
+             class_override_final
+             constexpr
+             decltype
+             deleted_functions
+             func_identifier
+             long_long
+             rvalue_references
+             sizeof_member
+             static_assert
+             variadic_templates)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3)
           # FIXME: I've seen both :( FreeBSD 9.0 has 0x, 10.0 has 11
          set(_expected_cxx11_flag "-std=c++11")
          list(APPEND _expected_features
-             CXXFeatures_defaulted_functions_FOUND
-             CXXFeatures_delegating_constructors_FOUND)
+             defaulted_functions
+             delegating_constructors)
     endif ()
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.1)
          set(_expected_cxx11_flag "-std=c++11")
          list(APPEND _expected_features
-             CXXFeatures_cstdint_header_FOUND
-             CXXFeatures_initializer_list_FOUND
-             CXXFeatures_lambda_FOUND
-             CXXFeatures_nullptr_FOUND)
+             cstdint_header
+             initializer_list
+             lambda
+             nullptr)
     endif ()
 
 else ()
@@ -236,9 +236,10 @@ find_package(CXXFeatures)
 
 foreach (flag IN LISTS _all_cxx_features)
     list(FIND _expected_features "${flag}" _flag_index)
-    if (${flag})
-        add_definitions("-D${flag}")
-        message(STATUS "Compiler C++ support flag ${flag} set")
+    set(_full_flag CXXFeatures_${flag}_FOUND)
+    if (${_full_flag})
+        add_definitions("-D${_full_flag}")
+        message(STATUS "Compiler C++ support flag ${_full_flag} set")
         if (_flag_index EQUAL -1 AND NOT _compiler_unknown_features)
             message(WARNING "C++ feature '${flag}' was detected, but not expected")
         endif ()

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0558337c19dad9a66e019716d5290f5ce3d81456
commit 0558337c19dad9a66e019716d5290f5ce3d81456
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 20:46:12 2013 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Tue Aug 13 20:46:12 2013 +0200

    CXXFeatures: add expected features for Clang
    
    This is a bit vague as there seem to be some partial implementations in earlier
    versions that are good enough to satisfy our tests.

diff --git a/Tests/Module/FindCXXFeatures/CMakeLists.txt b/Tests/Module/FindCXXFeatures/CMakeLists.txt
index 7996a70..57e8fc4 100644
--- a/Tests/Module/FindCXXFeatures/CMakeLists.txt
+++ b/Tests/Module/FindCXXFeatures/CMakeLists.txt
@@ -194,6 +194,38 @@ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "HP")
              CXXFeatures_func_identifier_FOUND
              CXXFeatures_long_long_FOUND)
     endif ()
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.9)
+         set(_expected_cxx11_flag "-std=c++0x")
+        list(APPEND _expected_features
+             CXXFeatures_auto_FOUND
+             CXXFeatures_class_override_final_FOUND
+             CXXFeatures_constexpr_FOUND
+             CXXFeatures_decltype_FOUND
+             CXXFeatures_deleted_functions_FOUND
+             CXXFeatures_func_identifier_FOUND
+             CXXFeatures_long_long_FOUND
+             CXXFeatures_rvalue_references_FOUND
+             CXXFeatures_sizeof_member_FOUND
+             CXXFeatures_static_assert_FOUND
+             CXXFeatures_variadic_templates_FOUND)
+    endif ()
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3)
+          # FIXME: I've seen both :( FreeBSD 9.0 has 0x, 10.0 has 11
+         set(_expected_cxx11_flag "-std=c++11")
+         list(APPEND _expected_features
+             CXXFeatures_defaulted_functions_FOUND
+             CXXFeatures_delegating_constructors_FOUND)
+    endif ()
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.1)
+         set(_expected_cxx11_flag "-std=c++11")
+         list(APPEND _expected_features
+             CXXFeatures_cstdint_header_FOUND
+             CXXFeatures_initializer_list_FOUND
+             CXXFeatures_lambda_FOUND
+             CXXFeatures_nullptr_FOUND)
+    endif ()
+
 else ()
     message(STATUS "CTEST_FULL_OUTPUT")
     message(WARNING "Your C++ compiler configuration is not in the list of known configurations")

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2f32ebc2932a9b017d336781008c1f3c9076a31d
commit 2f32ebc2932a9b017d336781008c1f3c9076a31d
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 20:02:37 2013 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Tue Aug 13 20:02:37 2013 +0200

    CXXFeatures: allow "better" compilers than expected
    
    This can happen e.g. with old g++ with Clang plugin with more features, or
    simply by a cstdint header in the system, maybe from another compiler.

diff --git a/Tests/Module/FindCXXFeatures/CMakeLists.txt b/Tests/Module/FindCXXFeatures/CMakeLists.txt
index ec78868..7996a70 100644
--- a/Tests/Module/FindCXXFeatures/CMakeLists.txt
+++ b/Tests/Module/FindCXXFeatures/CMakeLists.txt
@@ -208,7 +208,7 @@ foreach (flag IN LISTS _all_cxx_features)
         add_definitions("-D${flag}")
         message(STATUS "Compiler C++ support flag ${flag} set")
         if (_flag_index EQUAL -1 AND NOT _compiler_unknown_features)
-            message(SEND_ERROR "C++ feature '${flag}' was detected, but not expected")
+            message(WARNING "C++ feature '${flag}' was detected, but not expected")
         endif ()
     else ()
         if (NOT _flag_index EQUAL -1)

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=32384edce18b9ea67a5260ea3b7ed7ded484c814
commit 32384edce18b9ea67a5260ea3b7ed7ded484c814
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 19:58:35 2013 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Tue Aug 13 19:58:35 2013 +0200

    CXXFeatures: update compiler matching in test
    
    -use STREQUAL to compare the compiler ids, no need for regex here
    -use CMAKE_CXX_COMPILER_ID to match g++ and MSVC
    -match CMAKE_CXX_COMPILER_VERSION for MSVC instead of MSVC_VERSION, this is not
     only more consistent with the rest, it should also work if e.g. MSVC 10 uses
     MSVC 9 compiler

diff --git a/Tests/Module/FindCXXFeatures/CMakeLists.txt b/Tests/Module/FindCXXFeatures/CMakeLists.txt
index 56fd682..ec78868 100644
--- a/Tests/Module/FindCXXFeatures/CMakeLists.txt
+++ b/Tests/Module/FindCXXFeatures/CMakeLists.txt
@@ -25,7 +25,7 @@ unset(_expected_features)
 unset(_expected_cxx11_flag)
 unset(_compiler_unknown_features)
 
-if (CMAKE_COMPILER_IS_GNUCXX)
+if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     # no idea since when this is supported, but it is at least
     # supported since 3.1
     list(APPEND _expected_features
@@ -64,12 +64,12 @@ if (CMAKE_COMPILER_IS_GNUCXX)
              CXXFeatures_static_assert_FOUND
              CXXFeatures_variadic_templates_FOUND)
     endif ()
-elseif (MSVC)
-    if (NOT MSVC_VERSION VERSION_LESS 1700)
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 17)
         list(APPEND _expected_features
              CXXFeatures_class_override_final_FOUND)
     endif ()
-    if (NOT MSVC_VERSION VERSION_LESS 1600)
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16)
         list(APPEND _expected_features
              CXXFeatures_auto_FOUND
              CXXFeatures_cstdint_header_FOUND
@@ -79,16 +79,16 @@ elseif (MSVC)
              CXXFeatures_rvalue_references_FOUND
              CXXFeatures_static_assert_FOUND)
     endif ()
-    if (NOT MSVC_VERSION VERSION_LESS 1301)
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 13.01)
         list(APPEND _expected_features
              CXXFeatures_long_long_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "Borland")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Borland")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.60)
         list(APPEND _expected_features
              CXXFeatures_long_long_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "XL")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "XL")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 10.1)
         set(_expected_cxx11_flag "-qlanglvl=extended0x")
         list(APPEND _expected_features
@@ -111,21 +111,21 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "XL")
              CXXFeatures_constexpr_FOUND
              CXXFeatures_rvalue_references_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "SunPro")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1)
         list(APPEND _expected_features
              CXXFeatures_long_long_FOUND
              CXXFeatures_sizeof_member_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "PGI")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "PGI")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.3)
         list(APPEND _expected_features
              CXXFeatures_func_identifier_FOUND
              CXXFeatures_long_long_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.1)
         if (WIN32)
             set(_expected_cxx11_flag "/Qstd=c++0x")
@@ -173,21 +173,21 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
              CXXFeatures_delegating_constructors_FOUND
              CXXFeatures_initializer_list_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "Watcom")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Watcom")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.70)
         list(APPEND _expected_features
              CXXFeatures_func_identifier_FOUND
              CXXFeatures_long_long_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "MIPSpro")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MIPSpro")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.4.4)
         list(APPEND _expected_features
              CXXFeatures_func_identifier_FOUND
              CXXFeatures_long_long_FOUND)
     endif ()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "HP")
+elseif (CMAKE_CXX_COMPILER_ID STREQUAL "HP")
     # values found by looking on the test output, may be present much longer
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.20)
         list(APPEND _expected_features

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=61d407bb3a7c891af31e951e55effd840c595c74
commit 61d407bb3a7c891af31e951e55effd840c595c74
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Tue Aug 13 19:55:31 2013 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Tue Aug 13 19:55:58 2013 +0200

    CXXFeatures: update expected features and flags (Intel, SunPro)

diff --git a/Tests/Module/FindCXXFeatures/CMakeLists.txt b/Tests/Module/FindCXXFeatures/CMakeLists.txt
index 2d6f3dc..56fd682 100644
--- a/Tests/Module/FindCXXFeatures/CMakeLists.txt
+++ b/Tests/Module/FindCXXFeatures/CMakeLists.txt
@@ -113,7 +113,7 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "XL")
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID MATCHES "SunPro")
     # values found by looking on the test output, may be present much longer
-    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.9)
+    if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1)
         list(APPEND _expected_features
              CXXFeatures_long_long_FOUND
              CXXFeatures_sizeof_member_FOUND)
@@ -126,9 +126,12 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "PGI")
              CXXFeatures_long_long_FOUND)
     endif ()
 elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
-    # FIXME: newer version support -std=c++11, Windows has /Q flag
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.1)
-        set(_expected_cxx11_flag "-std=c++0x")
+        if (WIN32)
+            set(_expected_cxx11_flag "/Qstd=c++0x")
+        else ()
+            set(_expected_cxx11_flag "-std=c++0x")
+        endif ()
         list(APPEND _expected_features
              CXXFeatures_func_identifier_FOUND
              CXXFeatures_long_long_FOUND
@@ -155,6 +158,11 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
     # already show up for this version depending on the check file.
     # The same applies to initializer lists.
     if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 13)
+        if (WIN32)
+            set(_expected_cxx11_flag "/Qstd=c++11")
+        else ()
+            set(_expected_cxx11_flag "-std=c++11")
+        endif ()
         list(APPEND _expected_features
              CXXFeatures_nullptr_FOUND)
     endif ()

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

Summary of changes:
 Tests/Module/FindCXXFeatures/CMakeLists.txt |  247 ++++++++++++++++-----------
 1 files changed, 144 insertions(+), 103 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list