Skip to content

Commit bfae569

Browse files
committed
[Macros] Set correct RPATH to libTestingMacros.so
It's not guaranteed that the host compiler has all the dependency loaded.
1 parent ade1954 commit bfae569

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

Sources/TestingMacros/CMakeLists.txt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,16 @@ else()
6060
add_library(TestingMacros SHARED)
6161

6262
target_link_options(TestingMacros PRIVATE "-no-toolchain-stdlib-rpath")
63-
# Not setting RPATH means it requires all the dependencies are already loaded
64-
# in the process, because 'plugin' directory wouldn't contain any dependencies.
65-
set_property(TARGET TestingMacros PROPERTY INSTALL_RPATH)
6663
set_property(TARGET TestingMacros PROPERTY BUILD_WITH_INSTALL_RPATH YES)
6764

6865
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
6966
set(plugin_destination_dir "lib/swift/host/plugins/testing")
67+
set_property(TARGET TestingMacros PROPERTY INSTALL_RPATH)
7068
else()
7169
set(plugin_destination_dir "lib/swift/host/plugins")
70+
# RPATH 'lib/swift/{system}' and 'lib/swift/host'
71+
set_property(TARGET TestingMacros PROPERTY
72+
INSTALL_RPATH "$ORIGIN/../../<LOWER_CASE:${CMAKE_SYSTEM_NAME}>;$ORIGIN/..")
7273
endif()
7374

7475
install(TARGETS TestingMacros

0 commit comments

Comments
 (0)