CompileFeatures: Warn explicitly when feature detection binary is not found

This step is not normally expected to fail, so warn instead of logging it.
This commit is contained in:
Brad King
2023-01-16 11:28:03 -05:00
parent 24ccc8c3c9
commit 9199449687

View File

@@ -39,10 +39,13 @@ macro(_record_compiler_features lang compile_flags feature_list)
COPY_FILE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.bin"
COPY_FILE_ERROR _copy_error
)
if(CMAKE_${lang}_FEATURE_TEST AND NOT _copy_error)
set(_result 0)
else()
if(NOT CMAKE_${lang}_FEATURE_TEST)
set(_result 255)
elseif(_copy_error)
set(_result 255)
message(WARNING "${_copy_error}")
else()
set(_result 0)
endif()
unset(CMAKE_${lang}_FEATURE_TEST CACHE)
unset(compile_flags_for_link)
@@ -66,7 +69,7 @@ macro(_record_compiler_features lang compile_flags feature_list)
endif()
else()
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Detecting ${lang} [${compile_flags}] compiler features failed to compile with the following output:\n${_output}\n${_copy_error}\n\n")
"Detecting ${lang} [${compile_flags}] compiler features failed to compile with the following output:\n${_output}\n\n")
endif()
endmacro()