From 336d1a65ead9d8eb05786746aaf3febdec31e333 Mon Sep 17 00:00:00 2001 From: baldurk Date: Sun, 2 Sep 2018 13:13:57 +0100 Subject: [PATCH] Fix linking of renderdoc_libentry on mac * We use -force_load to ensure the library is used and referenced. --- renderdoc/CMakeLists.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/renderdoc/CMakeLists.txt b/renderdoc/CMakeLists.txt index 3fd78ab20..5ae997bc9 100644 --- a/renderdoc/CMakeLists.txt +++ b/renderdoc/CMakeLists.txt @@ -429,7 +429,14 @@ add_library(renderdoc_libentry STATIC os/posix/posix_libentry.cpp) target_compile_definitions(renderdoc_libentry ${RDOC_DEFINITIONS}) target_include_directories(renderdoc_libentry ${RDOC_INCLUDES}) link_directories(${CMAKE_CURRENT_BINARY_DIR}) -list(APPEND RDOC_LIBRARIES PRIVATE -lrenderdoc_libentry) + +# On apple we need to pass the force_load parameter here - if we set it with LINK_FLAGS below +# it gets applied too early (even if the -lrenderdoc_libentry is later) +if(APPLE) + list(APPEND RDOC_LIBRARIES PRIVATE "-Wl,-force_load,librenderdoc_libentry.a -lrenderdoc_libentry") +else() + list(APPEND RDOC_LIBRARIES PRIVATE -lrenderdoc_libentry) +endif() add_library(renderdoc SHARED ${renderdoc_objects}) target_compile_definitions(renderdoc ${RDOC_DEFINITIONS})