Check*: Add option to pass link directories into checks

This commit is contained in:
Aliaksandr Averchanka
2024-09-09 16:45:00 +03:00
parent 6c120379df
commit 9e95bd49f2
41 changed files with 454 additions and 25 deletions

View File

@@ -31,6 +31,8 @@ the way the check is run:
.. include:: /module/CMAKE_REQUIRED_LIBRARIES.txt
.. include:: /module/CMAKE_REQUIRED_LINK_DIRECTORIES.txt
.. include:: /module/CMAKE_REQUIRED_QUIET.txt
See modules :module:`CheckIncludeFile` and :module:`CheckIncludeFiles`
@@ -86,6 +88,13 @@ macro(CHECK_INCLUDE_FILE_CXX INCLUDE VARIABLE)
unset(_CIF_CMP0075)
endif()
if(CMAKE_REQUIRED_LINK_DIRECTORIES)
set(_CIF_LINK_DIRECTORIES
"-DLINK_DIRECTORIES:STRING=${CMAKE_REQUIRED_LINK_DIRECTORIES}")
else()
set(_CIF_LINK_DIRECTORIES)
endif()
try_compile(${VARIABLE}
SOURCE_FROM_VAR CheckIncludeFile.cxx _CIF_SOURCE_CONTENT
COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
@@ -94,9 +103,11 @@ macro(CHECK_INCLUDE_FILE_CXX INCLUDE VARIABLE)
CMAKE_FLAGS
-DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_INCLUDE_FILE_FLAGS}
"${CHECK_INCLUDE_FILE_CXX_INCLUDE_DIRS}"
"${_CIF_LINK_DIRECTORIES}"
)
unset(_CIF_LINK_OPTIONS)
unset(_CIF_LINK_LIBRARIES)
unset(_CIF_LINK_DIRECTORIES)
if(${ARGC} EQUAL 3)
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS_SAVE})