Skip to content

Commit 1d223b1

Browse files
committed
wip
1 parent 20876e6 commit 1d223b1

File tree

7 files changed

+28
-17
lines changed

7 files changed

+28
-17
lines changed

cmake/modules/AddPureSwift.cmake

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,12 @@ include(macCatalystUtils)
44
function(force_add_dependencies TARGET)
55
foreach(DEPENDENCY ${ARGN})
66
string(REGEX REPLACE [<>:\"/\\|?*] _ sanitized ${DEPENDENCY})
7-
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/forced-${sanitized}-dep.swift
8-
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_CURRENT_BINARY_DIR}/forced-${sanitized}-dep.swift
7+
set(depfile "${CMAKE_CURRENT_BINARY_DIR}/forced-${sanitized}-dep.swift")
8+
add_custom_command(OUTPUT ${depfile}
9+
COMMAND ${CMAKE_COMMAND} -E touch ${depfile}
910
DEPENDS ${DEPENDENCY}
1011
)
11-
target_sources(${TARGET} PRIVATE
12-
${CMAKE_CURRENT_BINARY_DIR}/forced-${sanitized}-dep.swift
13-
)
12+
target_sources(${TARGET} PRIVATE ${depfile})
1413
endforeach()
1514
endfunction()
1615

@@ -255,7 +254,7 @@ function(add_pure_swift_host_library name)
255254
>)
256255
else()
257256
# Emit a swiftmodule in the current directory.
258-
set(module_dir "${CMAKE_CURRENT_BINARY_DIR}")
257+
set(module_dir "${CMAKE_CURRENT_BINARY_DIR}/modules")
259258
set(module_file "${module_dir}/${name}.swiftmodule")
260259
endif()
261260

cmake/modules/AddSwift.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,12 +1012,12 @@ function(add_swift_host_tool executable)
10121012
set_property(
10131013
TARGET ${executable}
10141014
APPEND PROPERTY INSTALL_RPATH
1015-
"@executable_path/../${extra_relative_rpath}lib")
1015+
"@executable_path/../${extra_relative_rpath}lib/swift/host/compiler")
10161016
else()
10171017
set_property(
10181018
TARGET ${executable}
10191019
APPEND PROPERTY INSTALL_RPATH
1020-
"$ORIGIN/../${extra_relative_rpath}lib")
1020+
"$ORIGIN/../${extra_relative_rpath}lib/swift/host/compiler")
10211021
endif()
10221022
endif()
10231023

cmake/modules/AddSwiftUnittests.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,11 +133,11 @@ function(add_swift_unittest test_dirname)
133133
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
134134
set_property(
135135
TARGET ${test_dirname}
136-
APPEND PROPERTY INSTALL_RPATH "@executable_path/${relative_lib_path}/swift/host")
136+
APPEND PROPERTY INSTALL_RPATH "@executable_path/${relative_lib_path}/swift/host/compiler")
137137
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD")
138138
set_property(
139139
TARGET ${test_dirname}
140-
APPEND PROPERTY INSTALL_RPATH "$ORIGIN/${relative_lib_path}/swift/host")
140+
APPEND PROPERTY INSTALL_RPATH "$ORIGIN/${relative_lib_path}/swift/host/compiler")
141141
endif()
142142
endif()
143143
endfunction()

lib/CompilerSwiftSyntax/CMakeLists.txt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ includeSwiftSyntax()
2727

2828
# Make unified swift-syntax shared library.
2929
add_pure_swift_host_library(swiftSyntaxUnified SHARED)
30-
set_target_properties(swiftSyntaxUnified PROPERTIES LINKER_LANGUAGE Swift)
3130

3231
macro(target_link_libraries_whole_archive target)
3332
set_property(TARGET ${target} PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
@@ -62,3 +61,11 @@ target_link_libraries_whole_archive(swiftSyntaxUnified
6261
_CompilerSwiftDiagnostics
6362
_CompilerSwiftIDEUtils
6463
)
64+
65+
set_property(TARGET swiftSyntaxUnified PROPERTY
66+
LIBRARY_OUTPUT_DIRECTORY "${SWIFT_HOST_LIBRARIES_DEST_DIR}/compiler"
67+
)
68+
swift_install_in_component(TARGETS swiftSyntaxUnified
69+
ARCHIVE DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/host/compiler" COMPONENT compiler
70+
LIBRARY DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/host/compiler" COMPONENT compiler
71+
RUNTIME DESTINATION "bin" COMPONENT compiler)

tools/SourceKit/cmake/modules/AddSwiftSourceKit.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,11 @@ function(add_sourcekit_swift_runtime_link_flags target path HAS_SWIFT_MODULES)
156156
if(SWIFT_BUILD_SWIFT_SYNTAX)
157157
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
158158
# Add rpath to the host Swift libraries.
159-
file(RELATIVE_PATH relative_hostlib_path "${path}" "${SWIFTLIB_DIR}/host")
159+
file(RELATIVE_PATH relative_hostlib_path "${path}" "${SWIFTLIB_DIR}/host/compiler")
160160
list(APPEND RPATH_LIST "@loader_path/${relative_hostlib_path}")
161161
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD")
162162
# Add rpath to the host Swift libraries.
163-
file(RELATIVE_PATH relative_hostlib_path "${path}" "${SWIFTLIB_DIR}/host")
163+
file(RELATIVE_PATH relative_hostlib_path "${path}" "${SWIFTLIB_DIR}/host/compiler")
164164
list(APPEND RPATH_LIST "$ORIGIN/${relative_hostlib_path}")
165165
else()
166166
target_link_directories(${target} PRIVATE

tools/libSwiftScan/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,17 +49,17 @@ if(SWIFT_BUILD_SWIFT_SYNTAX)
4949
# Ensure that we can find the shaered swiftsyntax libraries.
5050
set_property(
5151
TARGET libSwiftScan
52-
APPEND PROPERTY INSTALL_RPATH "@loader_path")
52+
APPEND PROPERTY INSTALL_RPATH "@loader_path/swift/host/compiler")
5353
set_property(
5454
TARGET libSwiftScan
55-
APPEND PROPERTY INSTALL_RPATH "@loader_path/../..")
55+
APPEND PROPERTY INSTALL_RPATH "@loader_path/compiler")
5656
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD")
5757
set_property(
5858
TARGET libSwiftScan
59-
APPEND PROPERTY INSTALL_RPATH "$ORIGIN")
59+
APPEND PROPERTY INSTALL_RPATH "$ORIGIN/swift/host/compiler")
6060
set_property(
6161
TARGET libSwiftScan
62-
APPEND PROPERTY INSTALL_RPATH "$ORIGIN/../..")
62+
APPEND PROPERTY INSTALL_RPATH "$ORIGIN/compiler")
6363
endif()
6464
endif()
6565

tools/swift-plugin-server/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,9 @@ if (SWIFT_BUILD_SWIFT_SYNTAX)
2929

3030
set_property(TARGET ${name}
3131
PROPERTY BUILD_WITH_INSTALL_RPATH YES)
32+
33+
swift_install_in_component(TARGETS SwiftInProcPluginServer
34+
ARCHIVE DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/host" COMPONENT compiler
35+
LIBRARY DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/host" COMPONENT compiler
36+
RUNTIME DESTINATION "bin" COMPONENT compiler)
3237
endif()

0 commit comments

Comments
 (0)