mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
Merge topic 'implicit-link-info-msvc'
93f2cd5b7c CMakeParseImplicitLinkInfo: Better detection of msvc
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7619
This commit is contained in:
@@ -503,7 +503,8 @@ elseif(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA")
|
||||
CMAKE_CUDA_HOST_IMPLICIT_LINK_DIRECTORIES
|
||||
CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES
|
||||
log
|
||||
"${CMAKE_CUDA_IMPLICIT_OBJECT_REGEX}")
|
||||
"${CMAKE_CUDA_IMPLICIT_OBJECT_REGEX}"
|
||||
LANGUAGE CUDA)
|
||||
|
||||
# Detect CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT from the compiler by looking at which
|
||||
# cudart library exists in the implicit link libraries passed to the host linker.
|
||||
|
||||
@@ -149,7 +149,8 @@ function(CMAKE_DETERMINE_COMPILER_ABI lang src)
|
||||
if(CMAKE_${lang}_VERBOSE_FLAG)
|
||||
CMAKE_PARSE_IMPLICIT_LINK_INFO("${OUTPUT}" implicit_libs implicit_dirs implicit_fwks log
|
||||
"${CMAKE_${lang}_IMPLICIT_OBJECT_REGEX}"
|
||||
COMPUTE_IMPLICIT_OBJECTS implicit_objs)
|
||||
COMPUTE_IMPLICIT_OBJECTS implicit_objs
|
||||
LANGUAGE ${lang})
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Parsed ${lang} implicit link information from above output:\n${log}\n\n")
|
||||
endif()
|
||||
|
||||
@@ -22,7 +22,7 @@ function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var fwk_var log_var obj
|
||||
set(log "")
|
||||
|
||||
set(keywordArgs)
|
||||
set(oneValueArgs COMPUTE_IMPLICIT_OBJECTS)
|
||||
set(oneValueArgs COMPUTE_IMPLICIT_OBJECTS LANGUAGE)
|
||||
set(multiValueArgs )
|
||||
cmake_parse_arguments(EXTRA_PARSE "${keywordArgs}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
@@ -76,6 +76,11 @@ function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var fwk_var log_var obj
|
||||
endif()
|
||||
endif()
|
||||
set(is_msvc 0)
|
||||
if(EXTRA_PARSE_LANGUAGE AND
|
||||
("x${CMAKE_${EXTRA_PARSE_LANGUAGE}_ID}" STREQUAL "xMSVC" OR
|
||||
"x${CMAKE_${EXTRA_PARSE_LANGUAGE}_SIMULATE_ID}" STREQUAL "xMSVC"))
|
||||
set(is_msvc 1)
|
||||
endif()
|
||||
set(search_static 0)
|
||||
if("${cmd}" MATCHES "${linker_regex}")
|
||||
string(APPEND log " link line: [${line}]\n")
|
||||
|
||||
@@ -238,6 +238,7 @@ function(_OPENMP_GET_FLAGS LANG FLAG_MODE OPENMP_FLAG_VAR OPENMP_LIB_NAMES_VAR)
|
||||
OpenMP_${LANG}_IMPLICIT_FWK_DIRS
|
||||
OpenMP_${LANG}_LOG_VAR
|
||||
"${CMAKE_${LANG}_IMPLICIT_OBJECT_REGEX}"
|
||||
LANGUAGE ${LANG}
|
||||
)
|
||||
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
|
||||
Reference in New Issue
Block a user