Browse Source

Merge topic 'patch-CMAKE_COMPILER_IS_GNU'

50e57aa4ca CMAKE_COMPILER_IS_*: Replace with CMAKE_<LANG>_COMPILER_ID

Acked-by: Kitware Robot <[email protected]>
Acked-by: buildbot <[email protected]>
Merge-request: !10551
Brad King 8 months ago
parent
commit
39cccd1db8

+ 4 - 4
CompileFlags.cmake

@@ -45,23 +45,23 @@ endif()
 
 # Silence duplicate symbol warnings on AIX
 if(CMAKE_SYSTEM_NAME MATCHES "AIX")
-  if(NOT CMAKE_COMPILER_IS_GNUCXX)
+  if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -bhalt:5 ")
   endif()
 endif()
 
 if(CMAKE_SYSTEM MATCHES "OSF1-V")
-  if(NOT CMAKE_COMPILER_IS_GNUCXX)
+  if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -timplicit_local -no_implicit_include ")
   endif()
 endif()
 
 # Workaround for short jump tables on PA-RISC
 if(CMAKE_SYSTEM_PROCESSOR MATCHES "^parisc")
-  if(CMAKE_COMPILER_IS_GNUCC)
+  if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mlong-calls")
   endif()
-  if(CMAKE_COMPILER_IS_GNUCXX)
+  if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mlong-calls")
   endif()
 endif()

+ 1 - 1
Modules/CMakeBackwardCompatibilityCXX.cmake

@@ -39,7 +39,7 @@ Including this module provides backward compatibility cache variables:
 
 if(NOT CMAKE_SKIP_COMPATIBILITY_TESTS)
   # check for some ANSI flags in the CXX compiler if it is not gnu
-  if(NOT CMAKE_COMPILER_IS_GNUCXX)
+  if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     include(TestCXXAcceptsFlag)
     set(CMAKE_TRY_ANSI_CXX_FLAGS "")
     if(CMAKE_SYSTEM_NAME MATCHES "OSF")

+ 1 - 1
Modules/CMakeCInformation.cmake

@@ -27,7 +27,7 @@ endif()
 
 set(CMAKE_BASE_NAME)
 get_filename_component(CMAKE_BASE_NAME "${CMAKE_C_COMPILER}" NAME_WE)
-if(CMAKE_COMPILER_IS_GNUCC)
+if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_BASE_NAME gcc)
 endif()
 

+ 1 - 1
Modules/CMakeCXXInformation.cmake

@@ -28,7 +28,7 @@ endif()
 set(CMAKE_BASE_NAME)
 get_filename_component(CMAKE_BASE_NAME "${CMAKE_CXX_COMPILER}" NAME_WE)
 # since the gnu compiler has several names force g++
-if(CMAKE_COMPILER_IS_GNUCXX)
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_BASE_NAME g++)
 endif()
 

+ 0 - 1
Modules/CMakeDetermineCCompiler.cmake

@@ -16,7 +16,6 @@
 #   CMAKE_C_COMPILER
 #   CMAKE_AR
 #   CMAKE_RANLIB
-#   CMAKE_COMPILER_IS_GNUCC
 #
 # If not already set before, it also sets
 #   _CMAKE_TOOLCHAIN_PREFIX

+ 0 - 1
Modules/CMakeDetermineCXXCompiler.cmake

@@ -13,7 +13,6 @@
 #
 # Sets the following variables:
 #   CMAKE_CXX_COMPILER
-#   CMAKE_COMPILER_IS_GNUCXX
 #   CMAKE_AR
 #   CMAKE_RANLIB
 #

+ 0 - 2
Modules/CMakeDetermineOBJCCompiler.cmake

@@ -13,8 +13,6 @@
 #   CMAKE_OBJC_COMPILER
 #   CMAKE_AR
 #   CMAKE_RANLIB
-#   CMAKE_COMPILER_IS_GNUOBJC
-#   CMAKE_COMPILER_IS_CLANGOBJC
 #
 # If not already set before, it also sets
 #   _CMAKE_TOOLCHAIN_PREFIX

+ 0 - 2
Modules/CMakeDetermineOBJCXXCompiler.cmake

@@ -13,8 +13,6 @@
 #
 # Sets the following variables:
 #   CMAKE_OBJCXX_COMPILER
-#   CMAKE_COMPILER_IS_GNUOBJCXX
-#   CMAKE_COMPILER_IS_CLANGOBJCXX
 #   CMAKE_AR
 #   CMAKE_RANLIB
 #

+ 1 - 1
Modules/CMakeFortranInformation.cmake

@@ -18,7 +18,7 @@ endif()
 set(CMAKE_BASE_NAME)
 get_filename_component(CMAKE_BASE_NAME "${CMAKE_Fortran_COMPILER}" NAME_WE)
 # since the gnu compiler has several names force g++
-if(CMAKE_COMPILER_IS_GNUG77)
+if(CMAKE_Fortran_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_BASE_NAME g77)
 endif()
 if(CMAKE_Fortran_COMPILER_ID)

+ 1 - 1
Modules/CMakeOBJCInformation.cmake

@@ -27,7 +27,7 @@ endif()
 
 set(CMAKE_BASE_NAME)
 get_filename_component(CMAKE_BASE_NAME "${CMAKE_OBJC_COMPILER}" NAME_WE)
-if(CMAKE_COMPILER_IS_GNUOBJC)
+if(CMAKE_OBJC_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_BASE_NAME gcc)
 endif()
 

+ 1 - 1
Modules/CMakeOBJCXXInformation.cmake

@@ -24,7 +24,7 @@ endif()
 set(CMAKE_BASE_NAME)
 get_filename_component(CMAKE_BASE_NAME "${CMAKE_OBJCXX_COMPILER}" NAME_WE)
 # since the gnu compiler has several names force g++
-if(CMAKE_COMPILER_IS_GNUOBJCXX)
+if(CMAKE_OBJCXX_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_BASE_NAME g++)
 endif()
 

+ 2 - 2
Modules/CMakePrintSystemInformation.cmake

@@ -38,8 +38,8 @@ message("CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS is ${CMAKE_SHARED_LIBRARY_CREATE_
 message("CMAKE_DL_LIBS is ${CMAKE_DL_LIBS}")
 message("CMAKE_SHARED_LIBRARY_PREFIX is ${CMAKE_SHARED_LIBRARY_PREFIX}")
 message("CMAKE_SHARED_LIBRARY_SUFFIX is ${CMAKE_SHARED_LIBRARY_SUFFIX}")
-message("CMAKE_COMPILER_IS_GNUCC = ${CMAKE_COMPILER_IS_GNUCC}")
-message("CMAKE_COMPILER_IS_GNUCXX = ${CMAKE_COMPILER_IS_GNUCXX}")
+message("CMAKE_C_COMPILER_ID = ${CMAKE_C_COMPILER_ID}")
+message("CMAKE_CXX_COMPILER_ID = ${CMAKE_CXX_COMPILER_ID}")
 
 message("CMAKE_CXX_CREATE_SHARED_LIBRARY is ${CMAKE_CXX_CREATE_SHARED_LIBRARY}")
 message("CMAKE_CXX_CREATE_SHARED_MODULE is ${CMAKE_CXX_CREATE_SHARED_MODULE}")

+ 1 - 1
Modules/FindCUDA.cmake

@@ -1625,7 +1625,7 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files)
       # nvcc chokes on -g3 in versions previous to 3.0, so replace it with -g
       set(_cuda_fix_g3 FALSE)
 
-      if(CMAKE_COMPILER_IS_GNUCC)
+      if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
         if (CUDA_VERSION VERSION_LESS  "3.0" OR
             CUDA_VERSION VERSION_EQUAL "4.1" OR
             CUDA_VERSION VERSION_EQUAL "4.2"

+ 1 - 1
Modules/FindKDE3.cmake

@@ -270,7 +270,7 @@ set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE)
 # set compiler flags only if KDE3 has actually been found
 if(KDE3_FOUND)
   set(_KDE3_USE_FLAGS FALSE)
-  if(CMAKE_COMPILER_IS_GNUCXX)
+  if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$")
     set(_KDE3_USE_FLAGS TRUE) # use flags for gnu compiler
     execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version
                     OUTPUT_VARIABLE out)

+ 1 - 1
Modules/FindwxWindows.cmake

@@ -649,7 +649,7 @@ else()
       # set CXXFLAGS to be fed into CMAKE_CXX_FLAGS by the user:
       if (HAVE_ISYSTEM) # does the compiler support -isystem ?
               if (NOT APPLE) # -isystem seems to be unsupported on Mac
-                if(CMAKE_COMPILER_IS_GNUCC AND CMAKE_COMPILER_IS_GNUCXX )
+                if(CMAKE_C_COMPILER_ID MATCHES "^(GNU|LCC)$" AND CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$")
             if (CMAKE_CXX_COMPILER MATCHES g\\+\\+)
               set(CMAKE_WXWINDOWS_CXX_FLAGS "`${CMAKE_WXWINDOWS_WXCONFIG_EXECUTABLE} --cxxflags|sed -e s/-I/-isystem/g`")
             else()

+ 4 - 2
Modules/GenerateExportHeader.cmake

@@ -223,9 +223,11 @@ endmacro()
 
 macro(_test_compiler_hidden_visibility)
 
-  if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.2")
+  if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU"
+    AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.2")
     set(GCC_TOO_OLD TRUE)
-  elseif(CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_LESS "4.2")
+  elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU"
+    AND CMAKE_C_COMPILER_VERSION VERSION_LESS "4.2")
     set(GCC_TOO_OLD TRUE)
   elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "12.0")
     set(_INTEL_TOO_OLD TRUE)

+ 2 - 2
Modules/Platform/BlueGeneL.cmake

@@ -21,7 +21,7 @@ set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
 
 include(Platform/UnixPaths)
 
-if(CMAKE_COMPILER_IS_GNUCC)
+if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_C_LINK_EXECUTABLE
     "<CMAKE_C_COMPILER> -Wl,-relax <FLAGS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES> -Wl,-lgcc,-lc -lnss_files -lnss_dns -lresolv")
 else()
@@ -30,7 +30,7 @@ else()
     "<CMAKE_C_COMPILER> -Wl,-relax <FLAGS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES> -Wl,-lc -lnss_files -lnss_dns -lresolv")
 endif()
 
-if(CMAKE_COMPILER_IS_GNUCXX)
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
   set(CMAKE_CXX_LINK_EXECUTABLE
     "<CMAKE_CXX_COMPILER> -Wl,-relax <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES> -Wl,-lstdc++,-lgcc,-lc -lnss_files -lnss_dns -lresolv")
 else()

+ 3 - 3
Modules/Platform/OSF1.cmake

@@ -14,12 +14,12 @@ endif()
 
 if(CMAKE_SYSTEM MATCHES "OSF1-V")
   set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -Wl,-expect_unresolved,\\*")       # -shared
-  if(CMAKE_COMPILER_IS_GNUCXX)
+  if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-Wl,-rpath,")
   else()
     set(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-rpath ")
   endif()
-  if(CMAKE_COMPILER_IS_GNUCC)
+  if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
     set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-rpath,")
   else()
     set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-rpath ")
@@ -29,7 +29,7 @@ endif()
 
 set(CMAKE_MAKE_INCLUDE_FROM_ROOT 1) # include $(CMAKE_BINARY_DIR)/...
 
-if(CMAKE_COMPILER_IS_GNUCXX)
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
   # include the gcc flags
 else ()
   # use default OSF compiler flags

+ 1 - 1
Tests/CMakeLists.txt

@@ -2447,7 +2447,7 @@ if(BUILD_TESTING)
   endif()
 
   if(APPLE)
-    if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
+    if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
       set(BundleTestInstallDir
         "${CMake_BINARY_DIR}/Tests/BundleTest/InstallDirectory")
       add_test(BundleTest ${CMAKE_CTEST_COMMAND}

+ 2 - 2
Tests/CMakeOnly/CheckCXXCompilerFlag/CMakeLists.txt

@@ -19,7 +19,7 @@ macro(TEST_PASS value msg)
   endif ()
 endmacro()
 
-if(CMAKE_COMPILER_IS_GNUCXX)
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
   execute_process(COMMAND ${CMAKE_C_COMPILER} --version OUTPUT_VARIABLE     _gcc_version_info)
   string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
   # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
@@ -52,7 +52,7 @@ check_cxx_compiler_flag(-fvisibility=hidden HAS_HIDDEN_VISIBILITY)
 
 message("HAS_HIDDEN_VISIBILITY: ${HAS_HIDDEN_VISIBILITY}\n\nCOMPILE OUTPUT:\n${OUTPUT}")
 
-if(CMAKE_COMPILER_IS_GNUCXX)
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
   if(NOT WIN32)
 #     test_pass(HAS_HIDDEN_VISIBILITY "GCC should support hidden visibility, but does not.")
   endif()

+ 1 - 1
Tests/CMakeOnly/CheckCXXSymbolExists/CMakeLists.txt

@@ -57,7 +57,7 @@ else()
   message(STATUS "std::fopen found in <cstdio>")
 endif()
 
-if (CMAKE_COMPILER_IS_GNUCXX)
+if (CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$")
   string(APPEND CMAKE_CXX_FLAGS " -O3")
   unset(CSE_RESULT_O3 CACHE)
   message(STATUS "Testing with optimization -O3")

+ 1 - 1
Tests/CMakeOnly/CheckStructHasMember/CMakeLists.txt

@@ -76,7 +76,7 @@ endforeach()
 
 set(CMAKE_TRY_COMPILE_CONFIGURATION ${CMAKE_BUILD_TYPE})
 
-if (CMAKE_COMPILER_IS_GNUCC)
+if (CMAKE_C_COMPILER_ID MATCHES "^(GNU|LCC)$")
     string(APPEND CMAKE_C_FLAGS " -O3")
     unset(CSHM_RESULT_O3 CACHE)
     unset(CSHM_RESULT_O3_C CACHE)

+ 1 - 1
Tests/CMakeOnly/CheckSymbolExists/CMakeLists.txt

@@ -37,7 +37,7 @@ else ()
   message(STATUS "errno found as expected")
 endif ()
 
-if (CMAKE_COMPILER_IS_GNUCC)
+if (CMAKE_C_COMPILER_ID MATCHES "^(GNU|LCC)$")
   string(APPEND CMAKE_C_FLAGS " -O3")
   unset(CSE_RESULT_O3 CACHE)
   message(STATUS "Testing with optimization -O3")

+ 1 - 1
Tests/Complex/CMakeLists.txt

@@ -82,7 +82,7 @@ if(NOT 2.4 GREATER_EQUAL 2.4)
 endif()
 
 if(CMAKE_SYSTEM MATCHES "OSF1-V")
-  if(NOT CMAKE_COMPILER_IS_GNUCXX)
+  if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
      string(APPEND CMAKE_CXX_FLAGS " -timplicit_local -no_implicit_include ")
   endif()
 endif()

+ 1 - 1
Tests/Complex/Executable/CMakeLists.txt

@@ -133,7 +133,7 @@ endif()
 add_custom_target(notInAllCustom)
 add_dependencies(notInAllCustom notInAllExe)
 
-if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_INCLUDE_SYSTEM_FLAG_CXX
+if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$" AND CMAKE_INCLUDE_SYSTEM_FLAG_CXX
    AND NOT XCODE) # XCODE is excluded due to #15687
   add_executable(testSystemDir testSystemDir.cxx)
   set_target_properties(testSystemDir PROPERTIES COMPILE_FLAGS "-Werror")

+ 1 - 1
Tests/ComplexOneConfig/CMakeLists.txt

@@ -69,7 +69,7 @@ if(NOT 2.4 EQUAL 2.4)
 endif()
 
 if(CMAKE_SYSTEM MATCHES "OSF1-V")
-  if(NOT CMAKE_COMPILER_IS_GNUCXX)
+  if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
      string(APPEND CMAKE_CXX_FLAGS " -timplicit_local -no_implicit_include ")
   endif()
 endif()

+ 1 - 1
Tests/ComplexOneConfig/Executable/CMakeLists.txt

@@ -133,7 +133,7 @@ endif()
 add_custom_target(notInAllCustom)
 add_dependencies(notInAllCustom notInAllExe)
 
-if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_INCLUDE_SYSTEM_FLAG_CXX
+if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$" AND CMAKE_INCLUDE_SYSTEM_FLAG_CXX
    AND NOT XCODE) # XCODE is excluded due to #15687
   add_executable(testSystemDir testSystemDir.cxx)
   set_target_properties(testSystemDir PROPERTIES COMPILE_FLAGS "-Werror")

+ 1 - 1
Tests/RunCMake/GenerateExportHeader/GEH.cmake

@@ -82,7 +82,7 @@ if(NOT BORLAND)
   add_subdirectory(c_identifier)
 endif()
 
-if (CMAKE_COMPILER_IS_GNUCXX OR (${CMAKE_CXX_COMPILER_ID} MATCHES Clang))
+if (CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|LCC)$" OR (${CMAKE_CXX_COMPILER_ID} MATCHES Clang))
   # No need to clutter the test output with warnings.
   string(APPEND CMAKE_CXX_FLAGS " -Wno-deprecated-declarations")
 endif()