Skip to content

Commit d8bd9b1

Browse files
committed
Rebase swift's component system ontop of LLVM's component system.
LLVM's component system works by all installable things having individual install-* targets. Swift's component system is intended to categorize installable things with high level categories like a package maintainer would want (e.x. compiler, editor-integration, etc). What this commit does is: 1. If a swift component is supposed to be installed, rather than just setting a variable, we also define an install-${swift_component} custom target. 2. When we call swift_install_in_category, we now require a 2nd argument which is a custom target install name. This must be a unique name since we will define a rule based off of the provided name (install-${target_install_name}). If one is trying to install a target, please use the target name as the target install name. If one is installing a file or directory, this must just be a unique name among all targets. This allows for us to plug into LLVM's cmake install component system without giving up the nice high level components for swift.
1 parent 1c703bf commit d8bd9b1

File tree

24 files changed

+94
-46
lines changed

24 files changed

+94
-46
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -948,7 +948,7 @@ endif()
948948

949949
add_subdirectory(cmake/modules)
950950

951-
swift_install_in_component(license
951+
swift_install_in_component(license swift-license
952952
FILES "LICENSE.txt"
953953
DESTINATION "share/swift")
954954

cmake/modules/AddSwift.cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1418,7 +1418,7 @@ function(add_swift_host_library name)
14181418
INSTALL_IN_COMPONENT "dev"
14191419
)
14201420

1421-
swift_install_in_component(dev
1421+
swift_install_in_component(dev ${name}
14221422
TARGETS ${name}
14231423
ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
14241424
LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
@@ -2000,15 +2000,15 @@ function(add_swift_target_library name)
20002000
WORLD_READ)
20012001
endif()
20022002

2003-
swift_install_in_component("${SWIFTLIB_INSTALL_IN_COMPONENT}"
2003+
swift_install_in_component("${SWIFTLIB_INSTALL_IN_COMPONENT}" ${name}
20042004
FILES "${UNIVERSAL_LIBRARY_NAME}"
20052005
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/${resource_dir}/${resource_dir_sdk_subdir}"
20062006
PERMISSIONS ${file_permissions})
20072007
if(sdk STREQUAL WINDOWS)
20082008
foreach(arch ${SWIFT_SDK_WINDOWS_ARCHITECTURES})
20092009
if(TARGET ${name}-windows-${arch}_IMPLIB)
20102010
get_target_property(import_library ${name}-windows-${arch}_IMPLIB IMPORTED_LOCATION)
2011-
swift_install_in_component(${SWIFTLIB_INSTALL_IN_COMPONENT}
2011+
swift_install_in_component(${SWIFTLIB_INSTALL_IN_COMPONENT} ${import_library}
20122012
FILES ${import_library}
20132013
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/${resource_dir}/${resource_dir_sdk_subdir}/${arch}"
20142014
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
@@ -2043,7 +2043,7 @@ function(add_swift_target_library name)
20432043
OUTPUT
20442044
"${UNIVERSAL_LIBRARY_NAME}"
20452045
${THIN_INPUT_TARGETS_STATIC})
2046-
swift_install_in_component("${SWIFTLIB_INSTALL_IN_COMPONENT}"
2046+
swift_install_in_component("${SWIFTLIB_INSTALL_IN_COMPONENT}" ${name}
20472047
FILES "${UNIVERSAL_LIBRARY_NAME}"
20482048
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift_static/${resource_dir_sdk_subdir}"
20492049
PERMISSIONS
@@ -2403,7 +2403,7 @@ function(add_swift_host_tool executable)
24032403

24042404
# And then create the install rule if we are asked to.
24052405
if (ADDSWIFTHOSTTOOL_SWIFT_COMPONENT)
2406-
swift_install_in_component(${ADDSWIFTHOSTTOOL_SWIFT_COMPONENT}
2406+
swift_install_in_component(${ADDSWIFTHOSTTOOL_SWIFT_COMPONENT} ${executable}
24072407
TARGETS ${executable}
24082408
RUNTIME DESTINATION bin)
24092409

cmake/modules/SwiftComponents.cmake

Lines changed: 52 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,10 @@ macro(swift_configure_components)
8787
string(REPLACE "-" "_" var_name_piece "${var_name_piece}")
8888
if(NOT SWIFT_INSTALL_EXCLUDE_${var_name_piece})
8989
set(SWIFT_INSTALL_${var_name_piece} TRUE)
90+
91+
# This is the high level install target that we use to create dependencies
92+
# upon our llvm based install components.
93+
add_custom_target(install-${component})
9094
endif()
9195
endforeach()
9296
endmacro()
@@ -108,22 +112,64 @@ function(swift_is_installing_component component result_var_name)
108112
endif()
109113
endfunction()
110114

111-
# swift_install_in_component(<COMPONENT NAME>
115+
# swift_install_in_component(<COMPONENT NAME> <TARGET NAME>
112116
# <same parameters as install()>)
113117
#
114118
# Executes the specified installation actions if the named component is
115119
# requested to be installed.
116120
#
117-
# This function accepts the same parameters as install().
118-
function(swift_install_in_component component)
119-
precondition(component MESSAGE "Component name is required")
121+
# This function accepts the same parameters as install() except for TARGETS and
122+
# COMPONENT since we need to control these two parameters to install so we can
123+
# use LLVM's underlying install primitives.
124+
function(swift_install_in_component swift_component install_target_name)
125+
precondition(swift_component MESSAGE "Component name is required")
126+
precondition(install_target_name MESSAGE "Install target name is required")
120127

121-
swift_is_installing_component("${component}" is_installing)
128+
# Make sure that we were not passed TARGETS
129+
cmake_parse_arguments(
130+
SIIC # prefix
131+
"" # options
132+
"" # single-value args
133+
"COMPONENT;TARGETS" # multi-value args
134+
${ARGN})
135+
precondition(SIIC_COMPONENT NEGATE MESSAGE "Must not specify COMPONENT as an arg")
136+
137+
# We do not support installing using the xcode generator.
138+
if (NOT CMAKE_CONFIGURATION_TYPES)
139+
return()
140+
endif()
141+
142+
# First specify our install line swapping our install_target_name as our
143+
# component.
144+
install(COMPONENT ${install_target_name}-component ${SIIC_UNPARSED_ARGS})
145+
146+
# Then create the install-${install_target_name} target that invokes the given
147+
# cmake component. If we intercepted a TARGETS argument, add those targets as
148+
# our dependencies. Otherwise, this expands to the empty string.
149+
set(targets_to_depend_on)
150+
if (SIIC_TARGETS)
151+
set(targets_to_depend_on DEPENDS ${SICC_TARGETS})
152+
endif()
153+
add_llvm_install_targets(install-${install_target_name}
154+
${targets_to_depend_on}
155+
COMPONENT ${install_target_name}-component)
156+
157+
# Ok, we now have setup a CMAKE component with the target
158+
# install-${install_target_name} to trigger it. Now see if we were asked to
159+
# install the specified ${swift_component}. If so, the variable
160+
# install-${swift_component} will be defined and is expected to trigger the
161+
# given CMAKE component. So in such a case make install-${swift_component}
162+
# depend upon install-${install_target_name}.
163+
swift_is_installing_component("${swift_component}" is_installing)
122164
if(NOT is_installing)
123165
return()
124166
endif()
125167

126-
install(${ARGN})
168+
if (NOT TARGET install-${swift_component})
169+
message(FATAL "The target install-${swift_component} does not exist for component: ${swift_component}?!")
170+
endif()
171+
172+
add_dependency(install-${swift_component} install-${install_target_name})
127173
endfunction()
128174

129175
function(swift_install_symlink_component component)

cmake/modules/SwiftManpage.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ find_program(POD2MAN pod2man)
1111
# MAN_SECTION N
1212
# INSTALL_IN_COMPONENT comp
1313
# )
14-
function(manpage)
14+
function(manpage name)
1515
cmake_parse_arguments(
1616
MP # prefix
1717
"" # options
@@ -38,7 +38,7 @@ function(manpage)
3838
DEPENDS "${MP_SOURCE}"
3939
ALL)
4040

41-
swift_install_in_component("${MP_INSTALL_IN_COMPONENT}"
41+
swift_install_in_component("${MP_INSTALL_IN_COMPONENT}" ${name}
4242
FILES "${output_file_name}"
4343
DESTINATION "share/man/man${MP_MAN_SECTION}")
4444
endfunction()

cmake/modules/SwiftSource.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,7 @@ function(_compile_swift_files
348348
list(APPEND module_outputs "${interface_file}")
349349
endif()
350350

351-
swift_install_in_component("${SWIFTFILE_INSTALL_IN_COMPONENT}"
351+
swift_install_in_component("${SWIFTFILE_INSTALL_IN_COMPONENT}" ${module_base}-module
352352
FILES ${module_outputs}
353353
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${library_subdir}")
354354

@@ -377,7 +377,7 @@ function(_compile_swift_files
377377
list(APPEND depends_create_apinotes "${apinote_input_file}")
378378

379379
list(APPEND apinote_files "${apinote_file}")
380-
swift_install_in_component("${SWIFTFILE_INSTALL_IN_COMPONENT}"
380+
swift_install_in_component("${SWIFTFILE_INSTALL_IN_COMPONENT}" ${apinote_module}-apinotes
381381
FILES ${apinote_file}
382382
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${library_subdir}")
383383
endforeach()

docs/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ if (DOXYGEN_FOUND)
174174
add_dependencies(doxygen doxygen-swift)
175175
endif()
176176

177-
swift_install_in_component(dev
177+
swift_install_in_component(dev swift-doxygen-html
178178
DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/doxygen/html"
179179
DESTINATION "docs/html")
180180
endif()

docs/tools/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
include(SwiftManpage)
22

33
manpage(
4+
swift-pod
45
SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/swift.pod"
56
PAGE_HEADER "Swift Documentation"
67
MAN_FILE_BASENAME swift

include/swift/SwiftRemoteMirror/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ list(APPEND swift_remote_mirror_headers
44
Platform.h
55
SwiftRemoteMirror.h
66
SwiftRemoteMirrorTypes.h)
7-
swift_install_in_component("swift-remote-mirror-headers"
7+
swift_install_in_component("swift-remote-mirror-headers" swift-remote-mirror-headers
88
FILES
99
${swift_remote_mirror_headers}
1010
DESTINATION

lib/Driver/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ if(SWIFT_BUILD_STATIC_STDLIB)
5151
"${SWIFT_SOURCE_DIR}/utils/gen-static-stdlib-link-args")
5252

5353
list(APPEND static_stdlib_lnk_file_list ${swift_static_stdlib_${sdk}_args})
54-
swift_install_in_component(stdlib
54+
swift_install_in_component(stdlib ${lowercase_sdk}-linkfile
5555
FILES "${SWIFTSTATICLIB_DIR}/${linkfile}"
5656
DESTINATION "lib/swift_static/${lowercase_sdk}")
5757
endif()

lib/Migrator/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ add_custom_target("symlink_migrator_data"
3838
DEPENDS "${output_dir}" "${outputs}"
3939
COMMENT "Symlinking migrator data to ${output_dir}")
4040

41-
swift_install_in_component(compiler
41+
swift_install_in_component(compiler symlink-migrator-data
4242
FILES ${datafiles}
4343
DESTINATION "lib/swift/migrator")
4444

lib/SwiftDemangle/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ add_swift_host_library(swiftDemangle
77
C_COMPILE_FLAGS
88
-DLLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1)
99

10-
swift_install_in_component(compiler
10+
swift_install_in_component(compiler swift-demangle-host
1111
TARGETS swiftDemangle
1212
LIBRARY DESTINATION "lib${LLVM_LIBDIR_SUFFIX}"
1313
ARCHIVE DESTINATION "lib${LLVM_LIBDIR_SUFFIX}")

stdlib/public/Platform/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ foreach(sdk ${SWIFT_SDKS})
114114
# It is not relocatable to the target platform itself.
115115
# This affects any cross-comipled targets that use glibc.modulemap.
116116

117-
swift_install_in_component(sdk-overlay
117+
swift_install_in_component(sdk-overlay glibc
118118
FILES "${glibc_modulemap_out}"
119119
DESTINATION "lib/swift/${arch_subdir}")
120120

stdlib/public/SwiftShims/CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,13 +131,13 @@ add_custom_command_target(unused_var
131131
COMMENT "Symlinking Clang resource headers into ${SWIFTLIB_DIR}/clang")
132132
add_dependencies(copy_shim_headers symlink_clang_headers)
133133

134-
swift_install_in_component(compiler
134+
swift_install_in_component(compiler symlink-clang-headers-helper
135135
FILES ${sources}
136136
DESTINATION "lib/swift/shims")
137137

138138
# Install Clang headers under the Swift library so that an installed Swift's
139139
# module importer can find the compiler headers corresponding to its Clang.
140-
swift_install_in_component(clang-builtin-headers
140+
swift_install_in_component(clang-builtin-headers clang-builtin-headers-helper
141141
DIRECTORY "${clang_headers_location}/"
142142
DESTINATION "lib/swift/clang"
143143
PATTERN "*.h")
@@ -151,6 +151,7 @@ swift_install_symlink_component(clang-resource-dir-symlink
151151
# need to use a different version of the headers than the installed Clang. This
152152
# should be used in conjunction with clang-resource-dir-symlink.
153153
swift_install_in_component(clang-builtin-headers-in-clang-resource-dir
154+
clang-builtin-headers-in-clang-resource-dir-helper
154155
DIRECTORY "${SWIFT_PATH_TO_CLANG_BUILD}/lib/clang"
155156
DESTINATION "lib"
156157
PATTERN "*.h")

stdlib/public/runtime/CMakeLists.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ if(SWIFT_BUILD_STATIC_STDLIB AND "${sdk}" STREQUAL "LINUX")
123123
"${LibraryLocation}/${CMAKE_STATIC_LIBRARY_PREFIX}swiftImageInspectionShared${CMAKE_STATIC_LIBRARY_SUFFIX}"
124124
DEPENDS
125125
${FragileSupportLibrary})
126-
swift_install_in_component(stdlib
126+
swift_install_in_component(stdlib ${FragileSupportLibrary}
127127
FILES $<TARGET_FILE:${FragileSupportLibrary}>
128128
DESTINATION "lib/swift_static/${lowercase_sdk}/${arch}")
129129
endforeach()
@@ -137,7 +137,7 @@ if(SWIFT_BUILD_STATIC_STDLIB AND "${sdk}" STREQUAL "LINUX")
137137
"${LibraryLocationPrimary}/${CMAKE_STATIC_LIBRARY_PREFIX}swiftImageInspectionShared${CMAKE_STATIC_LIBRARY_SUFFIX}"
138138
DEPENDS
139139
${FragileSupportLibraryPrimary})
140-
swift_install_in_component(stdlib
140+
swift_install_in_component(stdlib $<TARGET_FILE:${FragileSupportLibraryPrimary}>
141141
FILES $<TARGET_FILE:${FragileSupportLibraryPrimary}>
142142
DESTINATION "lib/swift_static/${lowercase_sdk}")
143143

@@ -154,7 +154,7 @@ if(SWIFT_BUILD_STATIC_STDLIB AND "${sdk}" STREQUAL "LINUX")
154154
"${SWIFT_SOURCE_DIR}/utils/static-executable-args.lnk")
155155

156156
list(APPEND static_binary_lnk_file_list ${swift_static_binary_${sdk}_args})
157-
swift_install_in_component(stdlib
157+
swift_install_in_component(stdlib ${lowercase_sdk}-linkfile
158158
FILES "${SWIFTSTATICLIB_DIR}/${linkfile}"
159159
DESTINATION "lib/swift_static/${lowercase_sdk}")
160160
add_custom_target(static_binary_magic ALL DEPENDS ${static_binary_lnk_file_list})
@@ -230,14 +230,14 @@ foreach(sdk ${SWIFT_CONFIGURED_SDKS})
230230
DEPENDS
231231
"${swiftrtObject}")
232232
if(SWIFT_BUILD_DYNAMIC_STDLIB)
233-
swift_install_in_component(stdlib
233+
swift_install_in_component(stdlib swiftImageRegistration-${arch_suffix}-dynamic
234234
FILES
235235
"${shared_runtime_registrar}"
236236
DESTINATION
237237
"lib/swift/${arch_subdir}")
238238
endif()
239239
if(SWIFT_BUILD_STATIC_STDLIB)
240-
swift_install_in_component(stdlib
240+
swift_install_in_component(stdlib swiftImageRegistration-${arch_suffix}-static
241241
FILES
242242
"${static_runtime_registrar}"
243243
DESTINATION

test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ function(swift_configure_lit_site_cfg source_path destination_path installed_nam
1717
configure_file("${source_path}" "${destination_path}" @ONLY)
1818

1919
if(NOT "${installed_name}" STREQUAL "")
20-
swift_install_in_component(testsuite-tools
20+
swift_install_in_component(testsuite-tools testsuite-tools
2121
FILES "${destination_path}"
2222
RENAME "${installed_name}"
2323
DESTINATION "share/swift/testsuite")

tools/SourceKit/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ if(NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
175175
add_dependencies(dispatch libdispatch-install)
176176
add_dependencies(BlocksRuntime libdispatch-install)
177177

178-
swift_install_in_component(sourcekit-inproc
178+
swift_install_in_component(sourcekit-inproc sourcekit-inproc-dispatch-blocksruntime
179179
FILES
180180
$<TARGET_FILE:dispatch>
181181
$<TARGET_FILE:BlocksRuntime>

tools/SourceKit/cmake/modules/AddSwiftSourceKit.cmake

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -196,12 +196,12 @@ macro(add_sourcekit_library name)
196196
set(SOURCEKITLIB_INSTALL_IN_COMPONENT dev)
197197
endif()
198198
endif()
199-
swift_install_in_component("${SOURCEKITLIB_INSTALL_IN_COMPONENT}"
199+
swift_install_in_component("${SOURCEKITLIB_INSTALL_IN_COMPONENT}" ${name}
200200
TARGETS ${name}
201201
LIBRARY DESTINATION "lib${LLVM_LIBDIR_SUFFIX}"
202202
ARCHIVE DESTINATION "lib${LLVM_LIBDIR_SUFFIX}"
203203
RUNTIME DESTINATION "bin")
204-
swift_install_in_component("${SOURCEKITLIB_INSTALL_IN_COMPONENT}"
204+
swift_install_in_component("${SOURCEKITLIB_INSTALL_IN_COMPONENT}" ${name}-headers
205205
FILES ${SOURCEKITLIB_HEADERS}
206206
DESTINATION "include/SourceKit")
207207
set_target_properties(${name} PROPERTIES FOLDER "SourceKit libraries")
@@ -335,7 +335,7 @@ macro(add_sourcekit_framework name)
335335

336336

337337
if (SOURCEKIT_DEPLOYMENT_OS MATCHES "^macosx")
338-
swift_install_in_component(${SOURCEKITFW_INSTALL_IN_COMPONENT}
338+
swift_install_in_component(${SOURCEKITFW_INSTALL_IN_COMPONENT} ${name}
339339
TARGETS ${name}
340340
LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
341341
ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
@@ -354,7 +354,7 @@ macro(add_sourcekit_framework name)
354354
MACOSX_FRAMEWORK_BUNDLE_VERSION "${SOURCEKIT_VERSION_STRING}"
355355
PUBLIC_HEADER "${headers}")
356356
else()
357-
swift_install_in_component(${SOURCEKITFW_INSTALL_IN_COMPONENT}
357+
swift_install_in_component(${SOURCEKITFW_INSTALL_IN_COMPONENT} ${name}
358358
DIRECTORY ${framework_location}
359359
DESTINATION lib${LLVM_LIBDIR_SUFFIX}
360360
USE_SOURCE_PERMISSIONS)

tools/SourceKit/tools/complete-test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ if(SWIFT_ANALYZE_CODE_COVERAGE)
2424
LINK_FLAGS " -fprofile-instr-generate -fcoverage-mapping")
2525
endif()
2626

27-
swift_install_in_component(tools
27+
swift_install_in_component(tools complete-test
2828
TARGETS complete-test
2929
RUNTIME DESTINATION bin)

tools/SourceKit/tools/sourcekitd-repl/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ if(HAVE_UNICODE_LIBEDIT)
2727
LINK_FLAGS " -fprofile-instr-generate -fcoverage-mapping")
2828
endif()
2929

30-
swift_install_in_component(tools
30+
swift_install_in_component(tools sourcekitd-repl
3131
TARGETS sourcekitd-repl
3232
RUNTIME DESTINATION bin)
3333
endif()

tools/SourceKit/tools/sourcekitd-test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,6 @@ if(SWIFT_ANALYZE_CODE_COVERAGE)
3232
LINK_FLAGS " -fprofile-instr-generate -fcoverage-mapping")
3333
endif()
3434

35-
swift_install_in_component(tools
35+
swift_install_in_component(tools sourcekitd-test
3636
TARGETS sourcekitd-test
3737
RUNTIME DESTINATION bin)

tools/driver/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,12 @@ if(NOT SWIFT_BUILT_STANDALONE)
3838
add_dependencies(swift clang-headers)
3939
endif()
4040

41-
swift_install_in_component(compiler
41+
swift_install_in_component(compiler swiftc
4242
FILES "${SWIFT_RUNTIME_OUTPUT_INTDIR}/swiftc${CMAKE_EXECUTABLE_SUFFIX}"
4343
DESTINATION "bin")
44-
swift_install_in_component(autolink-driver
44+
swift_install_in_component(autolink-driver swift-autolink-extract
4545
FILES "${SWIFT_RUNTIME_OUTPUT_INTDIR}/swift-autolink-extract${CMAKE_EXECUTABLE_SUFFIX}"
4646
DESTINATION "bin")
47-
swift_install_in_component(editor-integration
47+
swift_install_in_component(editor-integration swift-format
4848
FILES "${SWIFT_RUNTIME_OUTPUT_INTDIR}/swift-format${CMAKE_EXECUTABLE_SUFFIX}"
4949
DESTINATION "bin")

0 commit comments

Comments
 (0)