File tree Expand file tree Collapse file tree 5 files changed +15
-6
lines changed Expand file tree Collapse file tree 5 files changed +15
-6
lines changed Original file line number Diff line number Diff line change @@ -111,6 +111,10 @@ option(SwiftCore_ENABLE_INTERNAL_CHECKS "" OFF)
111
111
defaulted_set (SwiftCore_OBJECT_FORMAT STRING "Object format: ELF COFF" )
112
112
defaulted_set (SwiftCore_THREADING_PACKAGE STRING "Threading Package: C11 Linux PThreads Win32" )
113
113
114
+ option (SwiftCore_INSTALL_NESTED_SUBDIR "Install libraries under a platform and architecture subdirectory" ON )
115
+ set (SwiftCore_INSTALL_LIBDIR "${CMAKE_INSTALL_LIBDIR} /swift$<$<NOT:$<BOOL:${BUILD_SHARED_LIBS} >>:_static>$<$<BOOL:${SwiftCore_INSTALL_NESTED_SUBDIR} >:/${SwiftCore_PLATFORM_SUBDIR} /${SwiftCore_ARCH_SUBDIR} >" )
116
+ set (SwiftCore_INSTALL_SWIFTMODULEDIR "${CMAKE_INSTALL_LIBDIR} /swift$<$<NOT:$<BOOL:${BUILD_SHARED_LIBS} >>:_static>$<$<BOOL:${SwiftCore_INSTALL_NESTED_SUBDIR} >:/${SwiftCore_PLATFORM_SUBDIR} >" )
117
+
114
118
# TODO: Most of these should be attached to specific targets rather than applied
115
119
# globally. They can be applied as part of the library interface if they
116
120
# affect the behavior of libraries that build against a given target.
Original file line number Diff line number Diff line change @@ -13,6 +13,8 @@ set(SwiftCore_ENABLE_RUNTIME_FUNCTION_COUNTERS ON CACHE BOOL "")
13
13
set (SwiftCore_ENABLE_BACKDEPLOYMENT_SUPPORT ON CACHE BOOL "" )
14
14
set (SwiftCore_ENABLE_FILESYSTEM_SUPPORT ON CACHE BOOL "" )
15
15
16
+ set (SwiftCore_INSTALL_NESTED_SUBDIR OFF CACHE BOOL "" )
17
+
16
18
set (CMAKE_CXX_FLAGS_MINSIZEREL "-Os -g -DNDEBUG" CACHE STRING "" )
17
19
set (CMAKE_C_FLAGS_MINSIZEREL "-Os -g -DNDEBUG" CACHE STRING "" )
18
20
set (CMAKE_Swift_FLAGS_MINSIZEREL "-Osize -g" CACHE STRING "" )
Original file line number Diff line number Diff line change @@ -21,10 +21,10 @@ function(install_swift_interface target)
21
21
if (SwiftCore_ENABLE_LIBRARY_EVOLUTION )
22
22
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftinterface"
23
23
RENAME "${SwiftCore_MODULE_TRIPLE} .swiftinterface"
24
- DESTINATION "${CMAKE_INSTALL_LIBDIR} /swift /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
24
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
25
25
26
26
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.private.swiftinterface"
27
27
RENAME "${SwiftCore_MODULE_TRIPLE} .private.swiftinterface"
28
- DESTINATION "${CMAKE_INSTALL_LIBDIR} /swift /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
28
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
29
29
endif ()
30
30
endfunction ()
Original file line number Diff line number Diff line change @@ -325,9 +325,12 @@ elseif(NOT APPLE AND NOT LINUX AND NOT ANDROID AND UNIX)
325
325
target_link_libraries (swiftCore PRIVATE "${EXECINFO_LIBRARY} " )
326
326
endif ()
327
327
328
- install (TARGETS swiftCore )
328
+ install (TARGETS swiftCore
329
+ ARCHIVE DESTINATION "${SwiftCore_INSTALL_LIBDIR} "
330
+ LIBRARY DESTINATION "${SwiftCore_INSTALL_LIBDIR} "
331
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR} " )
329
332
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /Swift.swiftmodule"
330
- DESTINATION "${CMAKE_INSTALL_LIBDIR} /swift /Swift.swiftmodule"
333
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /Swift.swiftmodule"
331
334
RENAME "${SwiftCore_MODULE_TRIPLE} .swiftmodule" )
332
335
emit_swift_interface (swiftCore )
333
336
install_swift_interface (swiftCore )
Original file line number Diff line number Diff line change @@ -149,13 +149,13 @@ if("${SwiftCore_OBJECT_FORMAT}" STREQUAL "elfx")
149
149
"${SwiftCore_SWIFTC_SOURCE_DIR} /include"
150
150
"${PROJECT_BINARY_DIR} /include" )
151
151
target_link_libraries (swiftrt PRIVATE swiftShims )
152
- install (TARGETS swiftrt DESTINATION "${CMAKE_INSTALL_LIBDIR} /swift " )
152
+ install (TARGETS swiftrt DESTINATION "${SwiftCore_INSTALL_LIBDIR} " )
153
153
elseif ("${SwiftCore_OBJECT_FORMAT} " STREQUAL "coffx" )
154
154
add_library (swiftrt OBJECT SwiftRT-COFF.cpp )
155
155
target_compile_definitions (swiftrt PRIVATE
156
156
$< $< NOT:$< BOOL:${BUILD_SHARED_LIBS} > > :SWIFT_STATIC_STDLIB> )
157
157
target_link_libraries (swiftrt PRIVATE swiftShims )
158
- install (TARGETS swiftrt DESTINATION "${CMAKE_INSTALL_LIBDIR} /swift " )
158
+ install (TARGETS swiftrt DESTINATION "${SwiftCore_INSTALL_LIBDIR} " )
159
159
elseif (NOT "${SwiftCore_OBJECT_FORMAT} " STREQUAL "x" )
160
160
message (SEND_ERROR "Unknown object format '${SwiftCore_OBJECT_FORMAT} '" )
161
161
endif ()
You can’t perform that action at this time.
0 commit comments