File tree Expand file tree Collapse file tree 5 files changed +13
-23
lines changed
Tests/Tools/XDGTestHelper Expand file tree Collapse file tree 5 files changed +13
-23
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,10 @@ enable_testing()
18
18
set (CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL" CACHE
19
19
STRING "MSVC Runtime Library" )
20
20
21
+ set (CMAKE_LIBRARY_OUTPUT_DIR ${CMAKE_BINARY_DIR} )
22
+ set (CMAKE_RUNTIME_OUTPUT_DIR ${CMAKE_BINARY_DIR} )
23
+ set (CMAKE_Swift_MODULE_DIRECTORY ${CMAKE_BINARY_DIR} /swift )
24
+
21
25
if (CMAKE_VERSION VERSION_LESS 3.16.0 )
22
26
if (NOT (CMAKE_SYSTEM_NAME STREQUAL Windows OR CMAKE_SYSTEM_NAME STREQUAL Darwin ))
23
27
set (CMAKE_SHARED_LIBRARY_RUNTIME_Swift_FLAG "-Xlinker -rpath -Xlinker " )
Original file line number Diff line number Diff line change @@ -148,20 +148,14 @@ target_link_libraries(Foundation
148
148
swiftDispatch )
149
149
set_target_properties (Foundation PROPERTIES
150
150
INSTALL_RPATH "$ORIGIN"
151
- Swift_MODULE_DIRECTORY ${CMAKE_BINARY_DIR} /swift
151
+ BUILD_RPATH "$<TARGET_FILE_DIR:swiftDispatch>"
152
152
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR} /swift )
153
153
154
154
if (CMAKE_SYSTEM_NAME STREQUAL Windows AND CMAKE_VERSION VERSION_LESS 3.16 )
155
155
# Workaround for CMake 3.15 which doesn't link in the resource file target
156
156
# properly
157
157
add_dependencies (Foundation CoreFoundationResources )
158
158
target_link_options (Foundation PRIVATE $< TARGET_OBJECTS:CoreFoundationResources> )
159
-
160
- # Workaround for CMake 3.15 which doesn't handle `-rpath` properly
161
- if (NOT CMAKE_SYSTEM_NAME STREQUAL Windows AND NOT CMAKE_SYSTEM_NAME STREQUAL Darwin )
162
- target_link_options (Foundation PRIVATE
163
- "SHELL:-Xlinker -rpath -Xlinker $<TARGET_FILE_DIR:swiftDispatch>" )
164
- endif ()
165
159
endif ()
166
160
167
161
@@ -172,6 +166,6 @@ install(TARGETS Foundation
172
166
RUNTIME DESTINATION bin )
173
167
get_swift_host_arch (swift_arch )
174
168
install (FILES
175
- ${CMAKE_BINARY_DIR} /swift /Foundation.swiftdoc
176
- ${CMAKE_BINARY_DIR} /swift /Foundation.swiftmodule
169
+ $< TARGET_PROPERTY:Foundation,Swift_MODULE_DIRECTORY > /Foundation.swiftdoc
170
+ $< TARGET_PROPERTY:Foundation,Swift_MODULE_DIRECTORY > /Foundation.swiftmodule
177
171
DESTINATION lib/swift$<$<NOT:$<BOOL:${BUILD_SHARED_LIBS}>>:_static>/$<LOWER_CASE:${CMAKE_SYSTEM_NAME}>/${swift_arch} )
Original file line number Diff line number Diff line change @@ -39,7 +39,6 @@ target_link_libraries(FoundationNetworking PRIVATE
39
39
CFURLSessionInterface )
40
40
set_target_properties (FoundationNetworking PROPERTIES
41
41
INSTALL_RPATH "$ORIGIN"
42
- Swift_MODULE_DIRECTORY ${CMAKE_BINARY_DIR} /swift
43
42
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR} /swift )
44
43
45
44
@@ -50,6 +49,6 @@ install(TARGETS FoundationNetworking
50
49
RUNTIME DESTINATION bin )
51
50
get_swift_host_arch (swift_arch )
52
51
install (FILES
53
- ${CMAKE_BINARY_DIR} /swift /FoundationNetworking.swiftdoc
54
- ${CMAKE_BINARY_DIR} /swift /FoundationNetworking.swiftmodule
52
+ $< TARGET_PROPERTY:FoundationNetworking,Swift_MODULE_DIRECTORY > /FoundationNetworking.swiftdoc
53
+ $< TARGET_PROPERTY:FoundationNetworking,Swift_MODULE_DIRECTORY > /FoundationNetworking.swiftmodule
55
54
DESTINATION lib/swift$<$<NOT:$<BOOL:${BUILD_SHARED_LIBS}>>:_static>/$<LOWER_CASE:${CMAKE_SYSTEM_NAME}>/${swift_arch} )
Original file line number Diff line number Diff line change @@ -15,7 +15,6 @@ target_link_libraries(FoundationXML PRIVATE
15
15
CFXMLInterface )
16
16
set_target_properties (FoundationXML PROPERTIES
17
17
INSTALL_RPATH "$ORIGIN"
18
- Swift_MODULE_DIRECTORY ${CMAKE_BINARY_DIR} /swift
19
18
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR} /swift )
20
19
21
20
@@ -26,6 +25,6 @@ install(TARGETS FoundationXML
26
25
RUNTIME DESTINATION bin )
27
26
get_swift_host_arch (swift_arch )
28
27
install (FILES
29
- ${CMAKE_BINARY_DIR} /swift /FoundationXML.swiftdoc
30
- ${CMAKE_BINARY_DIR} /swift /FoundationXML.swiftmodule
28
+ $< TARGET_PROPERTY:FoundationXML,Swift_MODULE_DIRECTORY > /FoundationXML.swiftdoc
29
+ $< TARGET_PROPERTY:FoundationXML,Swift_MODULE_DIRECTORY > /FoundationXML.swiftmodule
31
30
DESTINATION lib/swift$<$<NOT:$<BOOL:${BUILD_SHARED_LIBS}>>:_static>/$<LOWER_CASE:${CMAKE_SYSTEM_NAME}>/${swift_arch} )
Original file line number Diff line number Diff line change @@ -4,11 +4,5 @@ target_link_libraries(xdgTestHelper PRIVATE
4
4
Foundation
5
5
FoundationNetworking
6
6
FoundationXML )
7
-
8
- if (CMAKE_VERSION VERSION_LESS 3.16 )
9
- if (NOT CMAKE_SYSTEM_NAME STREQUAL Windows AND NOT CMAKE_SYSTEM_NAME STREQUAL Darwin )
10
- target_link_options (xdgTestHelper PRIVATE
11
- "SHELL:-Xlinker -rpath -Xlinker $<TARGET_FILE_DIR:swiftDispatch>"
12
- "SHELL:-Xlinker -rpath -Xlinker $<TARGET_FILE_DIR:Foundation>" )
13
- endif ()
14
- endif ()
7
+ set_target_properties (xdgTestHelper PROPERTIES
8
+ BUILD_RPATH "$<TARGET_FILE_DIR:swiftDispatch>;$<TARGET_FILE_DIR:Foundation>" )
You can’t perform that action at this time.
0 commit comments