Merge topic 'CheckSymbolExists-required-flags' into release-4.4

e81906d12e CheckSymbolExists: Restore support for CMAKE_REQUIRED_FLAGS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Tom Pollard <tom_pollard@hotmail.co.uk>
Merge-request: !12342
This commit is contained in:
Brad King
2026-07-30 11:27:41 -04:00
committed by Kitware Robot
4 changed files with 20 additions and 0 deletions
+2
View File
@@ -174,6 +174,8 @@ int main(int argc, char** argv)
${_CSE_ADD_LINK_OPTIONS}
${_CSE_ADD_LINK_LIBRARIES}
CMAKE_FLAGS
-DCOMPILE_DEFINITIONS:STRING=${CMAKE_REQUIRED_FLAGS}
${_CSE_EXTRA_CMAKE_ARGUMENTS}
-DCMAKE_SKIP_RPATH:BOOL=${CMAKE_SKIP_RPATH}
"${_CSE_INCLUDE_DIRECTORIES}"
"${_CSE_LINK_DIRECTORIES}"
@@ -14,6 +14,13 @@ set(CMAKE_REQUIRED_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/../CheckSymbolExists")
include(CheckCXXSymbolExists)
set(CMAKE_REQUIRED_FLAGS "-DCSE_REQUIRED_FLAG")
check_cxx_symbol_exists(required_flag_symbol "cm_cse.h" CSE_RESULT_REQUIRED_FLAG)
if(NOT CSE_RESULT_REQUIRED_FLAG)
message(SEND_ERROR "CheckCXXSymbolExists did not honor CMAKE_REQUIRED_FLAGS")
endif()
unset(CMAKE_REQUIRED_FLAGS)
foreach(_config_type Release RelWithDebInfo MinSizeRel Debug)
set(CMAKE_TRY_COMPILE_CONFIGURATION ${_config_type})
unset(CSE_RESULT_${_config_type} CACHE)
@@ -14,6 +14,13 @@ set(CMAKE_REQUIRED_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}")
include(CheckSymbolExists)
set(CMAKE_REQUIRED_FLAGS "-DCSE_REQUIRED_FLAG")
check_symbol_exists(required_flag_symbol "cm_cse.h" CSE_RESULT_REQUIRED_FLAG)
if(NOT CSE_RESULT_REQUIRED_FLAG)
message(SEND_ERROR "CheckSymbolExists did not honor CMAKE_REQUIRED_FLAGS")
endif()
unset(CMAKE_REQUIRED_FLAGS)
foreach(_config_type Release RelWithDebInfo MinSizeRel Debug)
set(CMAKE_TRY_COMPILE_CONFIGURATION ${_config_type})
unset(CSE_RESULT_${_config_type} CACHE)
@@ -3,4 +3,8 @@
int non_existent_function_for_symbol_test();
#ifdef CSE_REQUIRED_FLAG
# define required_flag_symbol 1
#endif
#endif