|
|
@@ -46,27 +46,27 @@ is offered by various environments but with a specific syntax:
|
|
|
|
|
|
.. code-block:: cmake
|
|
|
|
|
|
- set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED TRUE)
|
|
|
+ set(CMAKE_C_LINK_LIBRARY_USING_load_archive_SUPPORTED TRUE)
|
|
|
if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
|
|
|
- set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "-force_load <LIB_ITEM>")
|
|
|
+ set(CMAKE_C_LINK_LIBRARY_USING_load_archive "-force_load <LIB_ITEM>")
|
|
|
elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU"
|
|
|
AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|
|
- set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "LINKER:--push-state,--whole-archive"
|
|
|
- "<LINK_ITEM>"
|
|
|
- "LINKER:--pop-state")
|
|
|
+ set(CMAKE_C_LINK_LIBRARY_USING_load_archive "LINKER:--push-state,--whole-archive"
|
|
|
+ "<LINK_ITEM>"
|
|
|
+ "LINKER:--pop-state")
|
|
|
elseif(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
|
|
|
- set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
|
|
|
+ set(CMAKE_C_LINK_LIBRARY_USING_load_archive "/WHOLEARCHIVE:<LIBRARY>")
|
|
|
else()
|
|
|
# feature not yet supported for the other environments
|
|
|
- set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED FALSE)
|
|
|
+ set(CMAKE_C_LINK_LIBRARY_USING_load_archive_SUPPORTED FALSE)
|
|
|
endif()
|
|
|
|
|
|
add_library(lib1 STATIC ...)
|
|
|
|
|
|
add_library(lib2 SHARED ...)
|
|
|
- if(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED)
|
|
|
+ if(CMAKE_C_LINK_LIBRARY_USING_load_archive_SUPPORTED)
|
|
|
target_link_libraries(lib2 PRIVATE
|
|
|
- "$<LINK_LIBRARY:whole_archive,lib1,$<IF:$<LINK_LANG_AND_ID:C,Clang>,libexternal.a,external>>")
|
|
|
+ "$<LINK_LIBRARY:load_archive,lib1,$<IF:$<LINK_LANG_AND_ID:C,Clang>,libexternal.a,external>>")
|
|
|
else()
|
|
|
target_link_libraries(lib2 PRIVATE lib1 external)
|
|
|
endif()
|