From 72f6b4bfbe84a369fbdf4c9671470ba8c3ce14cc Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Wed, 25 Nov 2020 10:45:12 -0500 Subject: [PATCH] Modules: Rename Internal/CMake{CheckCompiler => TryCompilerOrLinker}Flag Rename the `CheckPIESupported` helper functions so that they don't clobber other internal functions. Also rename them to document they can't be unified with `CheckCompilerFlag`. Fixes: #21497 --- Modules/CheckPIESupported.cmake | 8 +++++--- Modules/Compiler/GNU.cmake | 1 - ...pilerFlag.cmake => CMakeTryCompilerOrLinkerFlag.cmake} | 6 +++--- 3 files changed, 8 insertions(+), 7 deletions(-) rename Modules/Internal/{CMakeCheckCompilerFlag.cmake => CMakeTryCompilerOrLinkerFlag.cmake} (96%) diff --git a/Modules/CheckPIESupported.cmake b/Modules/CheckPIESupported.cmake index a99d8c41f1..fb87822462 100644 --- a/Modules/CheckPIESupported.cmake +++ b/Modules/CheckPIESupported.cmake @@ -62,7 +62,7 @@ Examples #]=======================================================================] -include (Internal/CMakeCheckCompilerFlag) +include (Internal/CMakeTryCompilerOrLinkerFlag) function (check_pie_supported) cmake_policy(GET CMP0083 cmp0083) @@ -109,14 +109,16 @@ function (check_pie_supported) foreach(lang IN LISTS CHECK_PIE_LANGUAGES) if(_CMAKE_${lang}_PIE_MAY_BE_SUPPORTED_BY_LINKER) - cmake_check_compiler_flag(${lang} "${CMAKE_${lang}_LINK_OPTIONS_PIE}" + cmake_try_compiler_or_linker_flag(${lang} + "${CMAKE_${lang}_LINK_OPTIONS_PIE}" CMAKE_${lang}_LINK_PIE_SUPPORTED OUTPUT_VARIABLE output) if (NOT CMAKE_${lang}_LINK_PIE_SUPPORTED) string (APPEND outputs "PIE (${lang}): ${output}\n") endif() - cmake_check_compiler_flag(${lang} "${CMAKE_${lang}_LINK_OPTIONS_NO_PIE}" + cmake_try_compiler_or_linker_flag(${lang} + "${CMAKE_${lang}_LINK_OPTIONS_NO_PIE}" CMAKE_${lang}_LINK_NO_PIE_SUPPORTED OUTPUT_VARIABLE output) if (NOT CMAKE_${lang}_LINK_NO_PIE_SUPPORTED) diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake index 668a6a9b20..81ab3a2f70 100644 --- a/Modules/Compiler/GNU.cmake +++ b/Modules/Compiler/GNU.cmake @@ -9,7 +9,6 @@ endif() set(__COMPILER_GNU 1) include(Compiler/CMakeCommonCompilerMacros) -include(Internal/CMakeCheckCompilerFlag) set(__pch_header_C "c-header") set(__pch_header_CXX "c++-header") diff --git a/Modules/Internal/CMakeCheckCompilerFlag.cmake b/Modules/Internal/CMakeTryCompilerOrLinkerFlag.cmake similarity index 96% rename from Modules/Internal/CMakeCheckCompilerFlag.cmake rename to Modules/Internal/CMakeTryCompilerOrLinkerFlag.cmake index 9c8dfb6171..d6fa5f0a67 100644 --- a/Modules/Internal/CMakeCheckCompilerFlag.cmake +++ b/Modules/Internal/CMakeTryCompilerOrLinkerFlag.cmake @@ -6,13 +6,13 @@ NOTE: This function is used internally by CMake. Projects should not include this file directly. -The cmake_check_compiler_flag() function can be used to compile and link a +The cmake_try_compiler_or_linker_flag() function can be used to compile and link a source file to check whether a specific compiler or linker flag is supported. The function does not use the try_compile() command so as to avoid infinite recursion. It may not work for all platforms or toolchains, the caller is responsible for ensuring it is only called in valid situations. - cmake_check_compiler_flag( + cmake_try_compiler_or_linker_flag( [SRC_EXT ] [COMMAND_PATTERN ] [FAIL_REGEX ...] [OUTPUT_VARIABLE ]) @@ -39,7 +39,7 @@ Optional parameters: include_guard(GLOBAL) include(CMakeCheckCompilerFlagCommonPatterns) -function(CMAKE_CHECK_COMPILER_FLAG lang flag result) +function(CMAKE_TRY_COMPILER_OR_LINKER_FLAG lang flag result) # Cache results between runs similar to check__source_compiles() if(DEFINED ${result}) return()