cmake: detect lld-link cli argument errors

This commit is contained in:
Anonymous Maarten
2026-09-04 22:38:33 +02:00
committed by Anonymous Maarten
parent ea74d3b018
commit c1ef7793c7

View File

@@ -317,7 +317,7 @@ function(check_linker_supports_version_file VAR)
cmake_push_check_state(RESET)
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/dummy.sym" "n_0 {\n global:\n func;\n local: *;\n};\n")
list(APPEND CMAKE_REQUIRED_LINK_OPTIONS "LINKER:SHELL:--version-script \"${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/dummy.sym\"")
check_c_source_compiles("int func(void) {return 0;} int main(int argc,char*argv[]){(void)argc;(void)argv;return func();}" ${VAR} FAIL_REGEX "(unsupported|syntax error|unrecognized option)")
check_c_source_compiles("int func(void) {return 0;} int main(int argc,char*argv[]){(void)argc;(void)argv;return func();}" ${VAR} FAIL_REGEX "(unsupported|syntax error|unrecognized option|ignoring unknown argument|unknown file type)")
cmake_pop_check_state()
endif()
set(${VAR} "${${VAR}}" PARENT_SCOPE)