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, master has been updated
       via  1fe2dc5ef2a1f262b125a2ba6a85f624ce150dd2 (commit)
       via  bf3c08d648c398026eef363bb43d3f8bfaf2a286 (commit)
       via  f1e91c694b1581b4ae923b3bd4a243372cb29023 (commit)
       via  7e75568b001e29a7428d7489c57cebd909359571 (commit)
       via  0225417f60ebaa9de96dd9a9846c2ef7105a39f1 (commit)
       via  d908987634ad1dd1295ac585ffe7c810bda69415 (commit)
       via  174c02e149ab4bcc9bc98d4e4042eb0b24e2f2ee (commit)
       via  08fa2ba8d0682e0c9c307b572afbcee05cc93477 (commit)
       via  0198502ff4fa3dec9cbd3249f6f458f53a8087f3 (commit)
       via  d1aa2b3f607b35dc5dbf613b2334b6d243ec2bda (commit)
       via  87b9d6d93f2e5e6076992cae7395647359de306d (commit)
      from  96820279541017402c1fe0852444aac68179ddb7 (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1fe2dc5ef2a1f262b125a2ba6a85f624ce150dd2
commit 1fe2dc5ef2a1f262b125a2ba6a85f624ce150dd2
Merge: bf3c08d 7e75568
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed May 3 15:04:08 2017 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed May 3 11:04:17 2017 -0400

    Merge topic 'ipo-xcode'
    
    7e75568b Xcode: Support IPO (LTO)
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !785


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bf3c08d648c398026eef363bb43d3f8bfaf2a286
commit bf3c08d648c398026eef363bb43d3f8bfaf2a286
Merge: f1e91c6 d908987
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed May 3 15:00:59 2017 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed May 3 11:01:12 2017 -0400

    Merge topic 'port-language-default-to-common-macro'
    
    d9089876 AppleClang: Use common compiler macros for language standard 
default
    174c02e1 SunPro: Use common compiler macros for language standard default
    08fa2ba8 Clang: Use common compiler macros for language standard default
    0198502f Intel: Use common compiler macros for language standard default
    d1aa2b3f GNU: Use common compiler macros for language standard default
    87b9d6d9 XL: Use common compiler macros for language standard default
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !787


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f1e91c694b1581b4ae923b3bd4a243372cb29023
commit f1e91c694b1581b4ae923b3bd4a243372cb29023
Merge: 9682027 0225417
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed May 3 15:00:43 2017 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed May 3 11:00:51 2017 -0400

    Merge topic 'fix-typo-in-pgi-files'
    
    0225417f PGI: Fix typo in logic for C standard flags
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !788


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7e75568b001e29a7428d7489c57cebd909359571
commit 7e75568b001e29a7428d7489c57cebd909359571
Author:     Ruslan Baratov <ruslan_bara...@yahoo.com>
AuthorDate: Thu Apr 27 21:18:26 2017 +0800
Commit:     Ruslan Baratov <ruslan_bara...@yahoo.com>
CommitDate: Tue May 2 18:33:25 2017 +0300

    Xcode: Support IPO (LTO)

diff --git a/Modules/CheckIPOSupported.cmake b/Modules/CheckIPOSupported.cmake
index 712a95e..6bbde13 100644
--- a/Modules/CheckIPOSupported.cmake
+++ b/Modules/CheckIPOSupported.cmake
@@ -217,7 +217,7 @@ function(check_ipo_supported)
     return()
   endif()
 
-  if(CMAKE_GENERATOR MATCHES "^(Visual Studio |Xcode$)")
+  if(CMAKE_GENERATOR MATCHES "^Visual Studio ")
     _ipo_not_supported("CMake doesn't support IPO for current generator")
     return()
   endif()
diff --git a/Source/cmGlobalXCodeGenerator.cxx 
b/Source/cmGlobalXCodeGenerator.cxx
index d99e3bb..95c1236 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -1683,8 +1683,11 @@ void 
cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt,
     return;
   }
 
-  // Check IPO related warning/error.
-  gtgt->IsIPOEnabled(configName);
+  if (gtgt->IsIPOEnabled(configName)) {
+    const char* ltoValue =
+      this->CurrentMakefile->IsOn("_CMAKE_LTO_THIN") ? "YES_THIN" : "YES";
+    buildSettings->AddAttribute("LLVM_LTO", this->CreateString(ltoValue));
+  }
 
   // Add define flags
   this->CurrentLocalGenerator->AppendFlags(
diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h
index ee06074..a5d169f 100644
--- a/Source/cmGlobalXCodeGenerator.h
+++ b/Source/cmGlobalXCodeGenerator.h
@@ -90,6 +90,8 @@ public:
 
   bool HasKnownObjectFileLocation(std::string* reason) const CM_OVERRIDE;
 
+  bool IsIPOSupported() const CM_OVERRIDE { return true; }
+
   bool UseEffectivePlatformName(cmMakefile* mf) const CM_OVERRIDE;
 
   bool ShouldStripResourcePath(cmMakefile*) const CM_OVERRIDE;
diff --git a/Tests/RunCMake/CMP0069/RunCMakeTest.cmake 
b/Tests/RunCMake/CMP0069/RunCMakeTest.cmake
index 61ba458..f44f840 100644
--- a/Tests/RunCMake/CMP0069/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CMP0069/RunCMakeTest.cmake
@@ -5,7 +5,6 @@ run_cmake(CMP0069-NEW-cmake)
 run_cmake(CMP0069-NEW-compiler)
 run_cmake(CMP0069-WARN)
 
-string(COMPARE EQUAL "${RunCMake_GENERATOR}" "Xcode" is_xcode)
-if(is_xcode OR RunCMake_GENERATOR MATCHES "^Visual Studio ")
+if(RunCMake_GENERATOR MATCHES "^Visual Studio ")
   run_cmake(CMP0069-NEW-generator)
 endif()
diff --git a/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake 
b/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
index 588a75d..e145569 100644
--- a/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
@@ -8,6 +8,6 @@ run_cmake(not-supported-by-compiler)
 run_cmake(save-to-result)
 run_cmake(cmp0069-is-old)
 
-if(RunCMake_GENERATOR MATCHES "^(Visual Studio |Xcode$)")
+if(RunCMake_GENERATOR MATCHES "^Visual Studio ")
   run_cmake(not-supported-by-generator)
 endif()

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0225417f60ebaa9de96dd9a9846c2ef7105a39f1
commit 0225417f60ebaa9de96dd9a9846c2ef7105a39f1
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Tue May 2 10:08:56 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 10:08:56 2017 -0400

    PGI: Fix typo in logic for C standard flags

diff --git a/Modules/Compiler/PGI-C.cmake b/Modules/Compiler/PGI-C.cmake
index a24e554..3b3848a 100644
--- a/Modules/Compiler/PGI-C.cmake
+++ b/Modules/Compiler/PGI-C.cmake
@@ -8,7 +8,7 @@ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12.10)
   set(CMAKE_C90_EXTENSION_COMPILE_OPTION -c89)
   set(CMAKE_C99_STANDARD_COMPILE_OPTION -c99)
   set(CMAKE_C99_EXTENSION_COMPILE_OPTION -c99)
-  if (CMAKE_C_COMPILER_VERSION VERSION_CREATER_EQUAL 15.3)
+  if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 15.3)
     set(CMAKE_C11_STANDARD_COMPILE_OPTION -c11)
     set(CMAKE_C11_EXTENSION_COMPILE_OPTION -c11)
   endif ()

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d908987634ad1dd1295ac585ffe7c810bda69415
commit d908987634ad1dd1295ac585ffe7c810bda69415
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 13:21:31 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    AppleClang: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/AppleClang-C.cmake 
b/Modules/Compiler/AppleClang-C.cmake
index f874e74..c18f541 100644
--- a/Modules/Compiler/AppleClang-C.cmake
+++ b/Modules/Compiler/AppleClang-C.cmake
@@ -12,17 +12,7 @@ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0)
   set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
 endif()
 
-if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0)
-  if (NOT CMAKE_C_COMPILER_FORCED)
-    if (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_C_STANDARD_COMPUTED_DEFAULT should be set for 
${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER}) version 
${CMAKE_C_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_C_STANDARD_DEFAULT ${CMAKE_C_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_C_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_C_STANDARD_DEFAULT 99)
-  endif()
-endif()
+__compiler_check_default_language_standard(C 4.0 99)
 
 macro(cmake_record_c_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/AppleClang-CXX.cmake 
b/Modules/Compiler/AppleClang-CXX.cmake
index ee900ae..904d965 100644
--- a/Modules/Compiler/AppleClang-CXX.cmake
+++ b/Modules/Compiler/AppleClang-CXX.cmake
@@ -27,18 +27,7 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.1)
   set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-std=gnu++1z")
 endif()
 
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_CXX_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif()
-endif()
-
+__compiler_check_default_language_standard(CXX 4.0 98)
 
 macro(cmake_record_cxx_compile_features)
   set(_result 0)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=174c02e149ab4bcc9bc98d4e4042eb0b24e2f2ee
commit 174c02e149ab4bcc9bc98d4e4042eb0b24e2f2ee
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 13:11:26 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    SunPro: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/SunPro-CXX.cmake 
b/Modules/Compiler/SunPro-CXX.cmake
index b4183db..5db7987 100644
--- a/Modules/Compiler/SunPro-CXX.cmake
+++ b/Modules/Compiler/SunPro-CXX.cmake
@@ -1,3 +1,8 @@
+# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+include(Compiler/SunPro)
+
 set(CMAKE_CXX_VERBOSE_FLAG "-v")
 
 set(CMAKE_CXX_COMPILE_OPTIONS_PIC -KPIC)
@@ -39,17 +44,7 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
   set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1)
 endif()
 
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_CXX_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif()
-endif()
+__compiler_check_default_language_standard(CXX 5.13 98)
 
 macro(cmake_record_cxx_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/SunPro.cmake b/Modules/Compiler/SunPro.cmake
new file mode 100644
index 0000000..52da39a
--- /dev/null
+++ b/Modules/Compiler/SunPro.cmake
@@ -0,0 +1,10 @@
+# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+# This module is shared by multiple languages; use include blocker.
+if(__COMPILER_SUNPRO)
+  return()
+endif()
+set(__COMPILER_SUNPRO 1)
+
+include(Compiler/CMakeCommonCompilerMacros)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=08fa2ba8d0682e0c9c307b572afbcee05cc93477
commit 08fa2ba8d0682e0c9c307b572afbcee05cc93477
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 13:02:19 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    Clang: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/Clang-C.cmake b/Modules/Compiler/Clang-C.cmake
index bcd9218..b94087f 100644
--- a/Modules/Compiler/Clang-C.cmake
+++ b/Modules/Compiler/Clang-C.cmake
@@ -17,21 +17,7 @@ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
   set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
 endif()
 
-if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
-  if (NOT CMAKE_C_COMPILER_FORCED)
-    if (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_C_STANDARD_COMPUTED_DEFAULT should be set for 
${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER}) version 
${CMAKE_C_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_C_STANDARD_DEFAULT ${CMAKE_C_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_C_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.6)
-      set(CMAKE_C_STANDARD_DEFAULT 11)
-    else()
-      set(CMAKE_C_STANDARD_DEFAULT 99)
-    endif()
-  endif()
-endif()
+__compiler_check_default_language_standard(C 3.4 99 3.6 11)
 
 macro(cmake_record_c_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake
index 8ed3695..5904efa 100644
--- a/Modules/Compiler/Clang-CXX.cmake
+++ b/Modules/Compiler/Clang-CXX.cmake
@@ -36,17 +36,7 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5)
   set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-std=gnu++1z")
 endif()
 
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.1)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_CXX_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif()
-endif()
+__compiler_check_default_language_standard(CXX 3.1 98)
 
 macro(cmake_record_cxx_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/Clang.cmake b/Modules/Compiler/Clang.cmake
index 8c2f87d..ef7ff2e 100644
--- a/Modules/Compiler/Clang.cmake
+++ b/Modules/Compiler/Clang.cmake
@@ -8,6 +8,8 @@ if(__COMPILER_CLANG)
 endif()
 set(__COMPILER_CLANG 1)
 
+include(Compiler/CMakeCommonCompilerMacros)
+
 if("x${CMAKE_C_SIMULATE_ID}" STREQUAL "xMSVC"
     OR "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC")
   macro(__compiler_clang lang)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0198502ff4fa3dec9cbd3249f6f458f53a8087f3
commit 0198502ff4fa3dec9cbd3249f6f458f53a8087f3
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 13:02:02 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    Intel: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/Intel-C.cmake b/Modules/Compiler/Intel-C.cmake
index 9c67fbd..d583dba 100644
--- a/Modules/Compiler/Intel-C.cmake
+++ b/Modules/Compiler/Intel-C.cmake
@@ -30,25 +30,11 @@ if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 12.0)
   set(CMAKE_C99_EXTENSION_COMPILE_OPTION "${_std}=${_ext}99")
 endif()
 
-if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 12.1)
-  if (NOT CMAKE_C_COMPILER_FORCED)
-    if (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_C_STANDARD_COMPUTED_DEFAULT should be set for 
${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER}) version 
${CMAKE_C_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_C_STANDARD_DEFAULT ${CMAKE_C_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_C_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 15.0.0)
-      set(CMAKE_C_STANDARD_DEFAULT 11)
-    else()
-      set(CMAKE_C_STANDARD_DEFAULT 90)
-    endif()
-  endif()
-endif()
-
 unset(_std)
 unset(_ext)
 
+__compiler_check_default_language_standard(C 12.1 90 15.0.0 11)
+
 macro(cmake_record_c_compile_features)
   set(_result 0)
   if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 12.1)
diff --git a/Modules/Compiler/Intel-CXX.cmake b/Modules/Compiler/Intel-CXX.cmake
index 9c39236..4aef30a 100644
--- a/Modules/Compiler/Intel-CXX.cmake
+++ b/Modules/Compiler/Intel-CXX.cmake
@@ -47,22 +47,11 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1)
   endif()
 endif()
 
-if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    else()
-      set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-    endif()
-  elseif (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif()
-endif()
-
 unset(_std)
 unset(_ext)
 
+__compiler_check_default_language_standard(CXX 12.1 98)
+
 macro(cmake_record_cxx_compile_features)
   set(_result 0)
   if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1)
diff --git a/Modules/Compiler/Intel.cmake b/Modules/Compiler/Intel.cmake
index 06d01f1..635ac4d 100644
--- a/Modules/Compiler/Intel.cmake
+++ b/Modules/Compiler/Intel.cmake
@@ -8,6 +8,8 @@ if(__COMPILER_INTEL)
 endif()
 set(__COMPILER_INTEL 1)
 
+include(Compiler/CMakeCommonCompilerMacros)
+
 if(CMAKE_HOST_WIN32)
   # MSVC-like
   macro(__compiler_intel lang)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d1aa2b3f607b35dc5dbf613b2334b6d243ec2bda
commit d1aa2b3f607b35dc5dbf613b2334b6d243ec2bda
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 12:51:31 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    GNU: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/GNU-C.cmake b/Modules/Compiler/GNU-C.cmake
index 3f02618..8090fa6 100644
--- a/Modules/Compiler/GNU-C.cmake
+++ b/Modules/Compiler/GNU-C.cmake
@@ -22,21 +22,7 @@ elseif (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.6)
   set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu1x")
 endif()
 
-if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
-  if (NOT CMAKE_C_COMPILER_FORCED)
-    if (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_C_STANDARD_COMPUTED_DEFAULT should be set for 
${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER}) version 
${CMAKE_C_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_C_STANDARD_DEFAULT ${CMAKE_C_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_C_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.0)
-      set(CMAKE_C_STANDARD_DEFAULT 11)
-    else()
-      set(CMAKE_C_STANDARD_DEFAULT 90)
-    endif()
-  endif()
-endif()
+__compiler_check_default_language_standard(C 3.4 90 5.0 11)
 
 macro(cmake_record_c_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/GNU-CXX.cmake b/Modules/Compiler/GNU-CXX.cmake
index 2499d2f..b221c4a 100644
--- a/Modules/Compiler/GNU-CXX.cmake
+++ b/Modules/Compiler/GNU-CXX.cmake
@@ -38,17 +38,7 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1)
   set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-std=gnu++1z")
 endif()
 
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    endif()
-    set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-  elseif(NOT DEFINED CMAKE_CXX_STANDARD_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif()
-endif()
+__compiler_check_default_language_standard(CXX 4.4 98 6.0 14)
 
 macro(cmake_record_cxx_compile_features)
   set(_result 0)
diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake
index 0a510f5..e2739a8 100644
--- a/Modules/Compiler/GNU.cmake
+++ b/Modules/Compiler/GNU.cmake
@@ -8,6 +8,8 @@ if(__COMPILER_GNU)
 endif()
 set(__COMPILER_GNU 1)
 
+include(Compiler/CMakeCommonCompilerMacros)
+
 macro(__compiler_gnu lang)
   # Feature flags.
   set(CMAKE_${lang}_VERBOSE_FLAG "-v")

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=87b9d6d93f2e5e6076992cae7395647359de306d
commit 87b9d6d93f2e5e6076992cae7395647359de306d
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Mon May 1 09:29:03 2017 -0400
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Tue May 2 09:49:23 2017 -0400

    XL: Use common compiler macros for language standard default

diff --git a/Modules/Compiler/XL-C.cmake b/Modules/Compiler/XL-C.cmake
index ac84da2..5dc8bc1 100644
--- a/Modules/Compiler/XL-C.cmake
+++ b/Modules/Compiler/XL-C.cmake
@@ -12,21 +12,21 @@ string(APPEND CMAKE_C_FLAGS_INIT " -qthreaded")
 # little-endian, all versions on Linux ppc64 big-endian, all versions on AIX
 # and BGQ, etc) are derived from the UNIX compiler and only accept the
 # -qlanglvl option.
-if (CMAKE_SYSTEM MATCHES "Linux.*ppc64le" AND
-    CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
-  set(CMAKE_C90_STANDARD_COMPILE_OPTION  "-std=c89")
-  set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu89")
-  set(CMAKE_C99_STANDARD_COMPILE_OPTION  "-std=c99")
-  set(CMAKE_C99_EXTENSION_COMPILE_OPTION "-std=gnu99")
-  if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.2)
-    set(CMAKE_C11_STANDARD_COMPILE_OPTION  "-std=c11")
-    set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
+if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
+  if (CMAKE_SYSTEM MATCHES "Linux.*ppc64le" AND
+      CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
+    set(CMAKE_C90_STANDARD_COMPILE_OPTION  "-std=c89")
+    set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu89")
+    set(CMAKE_C99_STANDARD_COMPILE_OPTION  "-std=c99")
+    set(CMAKE_C99_EXTENSION_COMPILE_OPTION "-std=gnu99")
+    if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.2)
+      set(CMAKE_C11_STANDARD_COMPILE_OPTION  "-std=c11")
+      set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
+    else ()
+      set(CMAKE_C11_STANDARD_COMPILE_OPTION "-qlanglvl=extc1x")
+      set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-qlanglvl=extc1x")
+    endif ()
   else ()
-    set(CMAKE_C11_STANDARD_COMPILE_OPTION "-qlanglvl=extc1x")
-    set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-qlanglvl=extc1x")
-  endif ()
-else ()
-  if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
     set(CMAKE_C90_STANDARD_COMPILE_OPTION "-qlanglvl=stdc89")
     set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-qlanglvl=extc89")
     set(CMAKE_C99_STANDARD_COMPILE_OPTION "-qlanglvl=stdc99")
@@ -38,15 +38,4 @@ else ()
   endif ()
 endif()
 
-if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
-  if (NOT CMAKE_C_COMPILER_FORCED)
-    if (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_C_STANDARD_COMPUTED_DEFAULT should be set for 
${CMAKE_C_COMPILER_ID} (${CMAKE_C_COMPILER}) version 
${CMAKE_C_COMPILER_VERSION}")
-    else ()
-      set(CMAKE_C_STANDARD_DEFAULT ${CMAKE_C_STANDARD_COMPUTED_DEFAULT})
-    endif ()
-  elseif (NOT CMAKE_C_STANDARD_COMPUTED_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_C_STANDARD_DEFAULT 90)
-  endif ()
-endif ()
+__compiler_check_default_language_standard(C 10.1 90)
diff --git a/Modules/Compiler/XL-CXX.cmake b/Modules/Compiler/XL-CXX.cmake
index 98ccb29..b87e923 100644
--- a/Modules/Compiler/XL-CXX.cmake
+++ b/Modules/Compiler/XL-CXX.cmake
@@ -12,32 +12,30 @@ string(APPEND CMAKE_CXX_FLAGS_INIT " -qthreaded")
 # little-endian, all versions on Linux ppc64 big-endian, all versions on AIX
 # and BGQ, etc) are derived from the UNIX compiler and only accept the
 # -qlanglvl option.
-if (CMAKE_SYSTEM MATCHES "Linux.*ppc64")
-  if (CMAKE_SYSTEM MATCHES "Linux.*ppc64le" AND
-      CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
-    set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++98")
-    set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=gnu++98")
-    if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.2)
-      set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11")
-      set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++11")
-      set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "-std=c++1y")
-      set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-qlanglvl=extended1y")
+if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
+  if (CMAKE_SYSTEM MATCHES "Linux.*ppc64")
+    if (CMAKE_SYSTEM MATCHES "Linux.*ppc64le" AND
+        CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.1)
+      set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++98")
+      set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=gnu++98")
+      if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1.2)
+        set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11")
+        set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++11")
+        set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "-std=c++1y")
+        set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-qlanglvl=extended1y")
+      else ()
+        set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-qlanglvl=extended0x")
+        set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-qlanglvl=extended0x")
+      endif ()
     else ()
-      set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-qlanglvl=extended0x")
-      set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-qlanglvl=extended0x")
-    endif ()
-  else ()
-    # The non-clang based Linux ppc64 compiler, both big-endian and
-    # little-endian lacks, the non-extension language level flags
-    if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
+      # The non-clang based Linux ppc64 compiler, both big-endian and
+      # little-endian lacks, the non-extension language level flags
       set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-qlanglvl=extended")
       set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-qlanglvl=extended")
       set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-qlanglvl=extended0x")
       set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-qlanglvl=extended0x")
     endif ()
-  endif ()
-else ()
-  if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
+  else ()
     set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-qlanglvl=strict98")
     set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-qlanglvl=extended")
     set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-qlanglvl=extended0x")
@@ -45,18 +43,7 @@ else ()
   endif ()
 endif ()
 
+__compiler_check_default_language_standard(CXX 10.1 98)
+
 set(CMAKE_CXX_COMPILE_OBJECT
   "<CMAKE_CXX_COMPILER> -+ <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c 
<SOURCE>")
-
-if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10.1)
-  if (NOT CMAKE_CXX_COMPILER_FORCED)
-    if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-      message(FATAL_ERROR "CMAKE_CXX_STANDARD_COMPUTED_DEFAULT should be set 
for ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) version 
${CMAKE_CXX_COMPILER_VERSION}")
-    else ()
-      set(CMAKE_CXX_STANDARD_DEFAULT ${CMAKE_CXX_STANDARD_COMPUTED_DEFAULT})
-    endif ()
-  elseif (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
-    # Compiler id was forced so just guess the default standard level.
-    set(CMAKE_CXX_STANDARD_DEFAULT 98)
-  endif ()
-endif ()
diff --git a/Modules/Compiler/XL.cmake b/Modules/Compiler/XL.cmake
index 55f71bd..4783785 100644
--- a/Modules/Compiler/XL.cmake
+++ b/Modules/Compiler/XL.cmake
@@ -8,6 +8,8 @@ if(__COMPILER_XL)
 endif()
 set(__COMPILER_XL 1)
 
+include(Compiler/CMakeCommonCompilerMacros)
+
 # Find the CreateExportList program that comes with this toolchain.
 find_program(CMAKE_XL_CreateExportList
   NAMES CreateExportList

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

Summary of changes:
 Modules/CheckIPOSupported.cmake                    |    2 +-
 Modules/Compiler/AppleClang-C.cmake                |   12 +----
 Modules/Compiler/AppleClang-CXX.cmake              |   13 +----
 Modules/Compiler/Clang-C.cmake                     |   16 +-----
 Modules/Compiler/Clang-CXX.cmake                   |   12 +----
 Modules/Compiler/Clang.cmake                       |    2 +
 Modules/Compiler/GNU-C.cmake                       |   16 +-----
 Modules/Compiler/GNU-CXX.cmake                     |   12 +----
 Modules/Compiler/GNU.cmake                         |    2 +
 Modules/Compiler/Intel-C.cmake                     |   18 +------
 Modules/Compiler/Intel-CXX.cmake                   |   15 +-----
 Modules/Compiler/Intel.cmake                       |    2 +
 Modules/Compiler/PGI-C.cmake                       |    2 +-
 Modules/Compiler/SunPro-CXX.cmake                  |   17 +++----
 Modules/Compiler/{Cray.cmake => SunPro.cmake}      |    4 +-
 Modules/Compiler/XL-C.cmake                        |   41 ++++++---------
 Modules/Compiler/XL-CXX.cmake                      |   53 ++++++++------------
 Modules/Compiler/XL.cmake                          |    2 +
 Source/cmGlobalXCodeGenerator.cxx                  |    7 ++-
 Source/cmGlobalXCodeGenerator.h                    |    2 +
 Tests/RunCMake/CMP0069/RunCMakeTest.cmake          |    3 +-
 .../RunCMake/CheckIPOSupported/RunCMakeTest.cmake  |    2 +-
 22 files changed, 72 insertions(+), 183 deletions(-)
 copy Modules/Compiler/{Cray.cmake => SunPro.cmake} (85%)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to