diff options
author | Marc Chevrier <marc.chevrier@gmail.com> | 2022-03-10 15:54:43 (GMT) |
---|---|---|
committer | Marc Chevrier <marc.chevrier@gmail.com> | 2022-03-17 22:07:59 (GMT) |
commit | dabe56de58a32768f0dff740f83539ab8337b132 (patch) | |
tree | 1804ac7f935f1344ffeca22388d3e07d85d3350f /Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake | |
parent | 3a37fda6a2b4f28fdd7efe58f4a0b7570404a7d4 (diff) | |
download | CMake-dabe56de58a32768f0dff740f83539ab8337b132.zip CMake-dabe56de58a32768f0dff740f83539ab8337b132.tar.gz CMake-dabe56de58a32768f0dff740f83539ab8337b132.tar.bz2 |
genex-LINK_LIBRARY: Add feature WHOLE_ARCHIVE
Diffstat (limited to 'Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake')
-rw-r--r-- | Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake index 349310f..021de41 100644 --- a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake +++ b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/RunCMakeTest.cmake @@ -67,8 +67,8 @@ if ((RunCMake_GENERATOR MATCHES "Makefiles|Ninja|Xcode" if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" OR (CMAKE_C_COMPILER_ID STREQUAL "MSVC" AND MSVC_VERSION GREATER "1900") OR (CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_SYSTEM_NAME STREQUAL "Linux")) - run_cmake(whole_archive) - run_cmake_target(whole_archive link-exe main) + run_cmake(load_archive) + run_cmake_target(load_archive link-exe main) endif() if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang") run_cmake(weak_library) @@ -110,3 +110,13 @@ endif() if (CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND CMAKE_C_COMPILER_VERSION GREATER_EQUAL "12") run_cmake_target(apple_library needed_library main-needed_library) endif() + +# WHOLE_ARCHIVE feature +if ((CMAKE_SYSTEM_NAME STREQUAL "Windows" AND + ((DEFINED MSVC_VERSION AND MSVC_VERSION GREATER "1900") OR (CMAKE_C_COMPILER_ID MATCHES "GNU|Clang" AND NOT CMAKE_C_SIMULATE_ID STREQUAL "MSVC"))) + OR (CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND + (NOT CMAKE_C_COMPILER_ID STREQUAL "SunPro" OR CMAKE_C_COMPILER_VERSION GREATER "5.9")) + OR CMAKE_SYSTEM_NAME MATCHES "Darwin|iOS|tvOS|watchOS|Linux|BSD|MSYS|CYGWIN") + run_cmake(feature-WHOLE_ARCHIVE) + run_cmake_target(feature-WHOLE_ARCHIVE link-exe main) +endif() |