File tree Expand file tree Collapse file tree 1 file changed +23
-2
lines changed Expand file tree Collapse file tree 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)
111111 endif ()
112112 endif ()
113113
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+
114126 if (SWIFT_SWIFT_PARSER AND NOT ASU_IS_TARGET_TEST)
115127 # 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 ()
118139 endif ()
119140endfunction ()
120141
You can’t perform that action at this time.
0 commit comments