Skip to content

Commit 099f0b2

Browse files
CMake: use modern whole archive linking commands
1 parent 9952102 commit 099f0b2

File tree

6 files changed

+11
-24
lines changed

6 files changed

+11
-24
lines changed

BuildTools/Android/tests/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ android {
3535

3636
externalNativeBuild {
3737
cmake {
38-
version '3.22.1'
38+
version '3.30.3'
3939
path 'src/main/jni/CMakeLists.txt'
4040
}
4141
}

CMakeLists.txt

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -445,22 +445,6 @@ else()
445445
endif(MSVC)
446446

447447

448-
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR
449-
CMAKE_CXX_COMPILER_ID MATCHES "GNU")
450-
if(PLATFORM_APPLE)
451-
# Looks like force_load is preferable over all_load
452-
set(WHOLE_ARCHIVE_FLAG "-Wl,-force_load" CACHE INTERNAL "all_load flag")
453-
# Option -noall_load is obsolete and there is no -noforce_load
454-
set(NO_WHOLE_ARCHIVE_FLAG "" CACHE INTERNAL "noall_load flag")
455-
else()
456-
set(WHOLE_ARCHIVE_FLAG "-Wl,--whole-archive" CACHE INTERNAL "whole-archive flag")
457-
set(NO_WHOLE_ARCHIVE_FLAG "-Wl,--no-whole-archive" CACHE INTERNAL "no-whole-archive flag")
458-
endif()
459-
else()
460-
set(WHOLE_ARCHIVE_FLAG "")
461-
set(NO_WHOLE_ARCHIVE_FLAG "")
462-
endif()
463-
464448
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
465449
# Treat warnings as errors
466450
set(DILIGENT_CLANG_COMPILE_OPTIONS "" CACHE STRING "Common Clang compile options")

Graphics/Archiver/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required (VERSION 3.10)
1+
cmake_minimum_required (VERSION 3.24)
22

33
project(Diligent-Archiver CXX)
44

@@ -181,7 +181,7 @@ PUBLIC
181181
Diligent-ArchiverInterface
182182
PRIVATE
183183
Diligent-BuildSettings
184-
${WHOLE_ARCHIVE_FLAG} Diligent-Archiver-static ${NO_WHOLE_ARCHIVE_FLAG}
184+
"$<LINK_LIBRARY:WHOLE_ARCHIVE,Diligent-Archiver-static>"
185185
)
186186

187187
if(PLATFORM_WIN32)

Graphics/GraphicsEngineOpenGL/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required (VERSION 3.10)
1+
cmake_minimum_required (VERSION 3.24)
22

33
project(Diligent-GraphicsEngineOpenGL CXX)
44

@@ -262,7 +262,7 @@ PUBLIC
262262
target_link_libraries(Diligent-GraphicsEngineOpenGL-shared
263263
PRIVATE
264264
Diligent-BuildSettings
265-
${WHOLE_ARCHIVE_FLAG} Diligent-GraphicsEngineOpenGL-static ${NO_WHOLE_ARCHIVE_FLAG}
265+
"$<LINK_LIBRARY:WHOLE_ARCHIVE,Diligent-GraphicsEngineOpenGL-static>"
266266
PUBLIC
267267
${PUBLIC_DEPENDENCIES}
268268
)

Graphics/GraphicsEngineVulkan/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required (VERSION 3.10)
1+
cmake_minimum_required (VERSION 3.24)
22

33
include(../../BuildTools/CMake/VulkanUtils.cmake)
44

@@ -286,7 +286,7 @@ PUBLIC
286286
target_link_libraries(Diligent-GraphicsEngineVk-shared
287287
PRIVATE
288288
Diligent-BuildSettings
289-
${WHOLE_ARCHIVE_FLAG} Diligent-GraphicsEngineVk-static ${NO_WHOLE_ARCHIVE_FLAG}
289+
"$<LINK_LIBRARY:WHOLE_ARCHIVE,Diligent-GraphicsEngineVk-static>"
290290
PUBLIC
291291
${PUBLIC_DEPENDENCIES}
292292
)

Tests/GPUTestFramework/CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
cmake_minimum_required (VERSION 3.17)
22

3+
include(../../BuildTools/CMake/BuildUtils.cmake)
4+
35
project(Diligent-GPUTestFramework)
46

57
set(SOURCE src/GPUTestingEnvironment.cpp src/TestingSwapChainBase.cpp)
@@ -156,5 +158,6 @@ set_target_properties(Diligent-GPUTestFramework PROPERTIES
156158
)
157159

158160
if (TARGET Diligent-Archiver-shared)
159-
target_link_libraries(Diligent-GPUTestFramework PUBLIC Diligent-Archiver-shared)
161+
get_backend_libraries_type(LIB_TYPE)
162+
target_link_libraries(Diligent-GPUTestFramework PUBLIC Diligent-Archiver-${LIB_TYPE})
160163
endif()

0 commit comments

Comments
 (0)