File tree 1 file changed +23
-2
lines changed
1 file changed +23
-2
lines changed Original file line number Diff line number Diff line change @@ -111,10 +111,31 @@ function(add_swift_unittest test_dirname)
111
111
endif ()
112
112
endif ()
113
113
114
+ file (RELATIVE_PATH relative_lib_path "${CMAKE_CURRENT_BINARY_DIR} " "${SWIFT_LIBRARY_OUTPUT_INTDIR} " )
115
+
116
+ if (SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
117
+ set_property (
118
+ TARGET ${test_dirname}
119
+ APPEND PROPERTY INSTALL_RPATH "@executable_path/${relative_lib_path} " )
120
+ elseif (SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD" )
121
+ set_property (
122
+ TARGET ${test_dirname}
123
+ APPEND PROPERTY INSTALL_RPATH "$ORIGIN/${relative_lib_path} " )
124
+ endif ()
125
+
114
126
if (SWIFT_SWIFT_PARSER AND NOT ASU_IS_TARGET_TEST)
115
127
# Link to stdlib the compiler uses.
116
- _add_swift_runtime_link_flags(${test_dirname} "../../lib" "" )
117
- set_property (TARGET ${test_dirname} PROPERTY BUILD_WITH_INSTALL_RPATH OFF )
128
+ _add_swift_runtime_link_flags(${test_dirname} "${relative_lib_path} " "" )
129
+
130
+ if (SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
131
+ set_property (
132
+ TARGET ${test_dirname}
133
+ APPEND PROPERTY INSTALL_RPATH "@executable_path/${relative_lib_path} /swift/host" )
134
+ elseif (SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD" )
135
+ set_property (
136
+ TARGET ${test_dirname}
137
+ APPEND PROPERTY INSTALL_RPATH "$ORIGIN/${relative_lib_path} /swift/host" )
138
+ endif ()
118
139
endif ()
119
140
endfunction ()
120
141
You can’t perform that action at this time.
0 commit comments