Skip to content

Commit 5284cb6

Browse files
committed
Add dependencies where targets depend on inclusions from unspecified targets.
A follow-up PR adds a flag to control an inline namespace that allows symbols in libDemangling to be distinguished between the runtime and the compiler. These dependencies ensure that the flag is plumbed through for inclusions of Demangling headers that aren't already covered by existing `target_link_libraries`.
1 parent 56695a1 commit 5284cb6

File tree

14 files changed

+21
-4
lines changed

14 files changed

+21
-4
lines changed

lib/AST/CMakeLists.txt

+4-2
Original file line numberDiff line numberDiff line change
@@ -124,15 +124,17 @@ if(SWIFT_BUILD_ONLY_SYNTAXPARSERLIB)
124124
else()
125125
set(clangBasicDep "${LLVM_LIBRARY_OUTPUT_INTDIR}/libclangBasic.a")
126126
endif()
127+
target_link_libraries(swiftAST PUBLIC
128+
swiftBasic)
127129
target_link_libraries(swiftAST PRIVATE
128-
swiftBasic
129130
swiftSyntax
130131
${clangBasicDep})
131132
target_compile_definitions(swiftAST PRIVATE
132133
SWIFT_BUILD_ONLY_SYNTAXPARSERLIB=1)
133134
else()
135+
target_link_libraries(swiftAST PUBLIC
136+
swiftBasic)
134137
target_link_libraries(swiftAST PRIVATE
135-
swiftBasic
136138
swiftMarkup
137139
swiftSyntax)
138140
endif()

lib/Basic/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,9 @@ add_swift_host_library(swiftBasic STATIC
8686
target_include_directories(swiftBasic PRIVATE
8787
${UUID_INCLUDE})
8888

89+
target_link_libraries(swiftBasic PUBLIC
90+
swiftDemangling)
8991
target_link_libraries(swiftBasic PRIVATE
90-
swiftDemangling
9192
${UUID_LIBRARIES})
9293

9394
message(STATUS "Swift version: ${SWIFT_VERSION}")

lib/Frontend/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ add_swift_host_library(swiftFrontend STATIC
1616
add_dependencies(swiftFrontend
1717
SwiftOptions)
1818
target_link_libraries(swiftFrontend PRIVATE
19+
swiftAST
1920
swiftSIL
2021
swiftMigrator
2122
swiftOption

lib/LLVMPasses/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,5 @@ add_swift_host_library(swiftLLVMPasses STATIC
99
LLVM_LINK_COMPONENTS
1010
analysis
1111
)
12-
12+
target_link_libraries(swiftLLVMPasses PRIVATE
13+
swiftDemangling)

lib/ParseSIL/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
add_swift_host_library(swiftParseSIL STATIC
22
ParseSIL.cpp)
33
target_link_libraries(swiftParseSIL PRIVATE
4+
swiftDemangling
45
swiftSema
56
swiftSIL)
67

lib/RemoteAST/CMakeLists.txt

+2
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ add_swift_host_library(swiftRemoteAST STATIC
1515
RemoteAST.cpp
1616
InProcessMemoryReader.cpp
1717
${REMOTE_LIB_HEADERS})
18+
target_link_libraries(swiftRemoteAST PUBLIC
19+
swiftDemangling)
1820
target_link_libraries(swiftRemoteAST PRIVATE
1921
swiftIRGen
2022
swiftSema)

lib/SIL/CMakeLists.txt

+2
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ add_subdirectory(Verifier)
2727

2828
add_swift_host_library(swiftSIL STATIC
2929
${SIL_SOURCES})
30+
target_link_libraries(swiftSIL PUBLIC
31+
swiftDemangling)
3032
target_link_libraries(swiftSIL PRIVATE
3133
swiftSema
3234
swiftSerialization)

tools/SourceKit/tools/sourcekitd/lib/API/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ add_sourcekit_library(sourcekitdAPI
1414
ExpressionTypeArray.cpp
1515
)
1616
target_link_libraries(sourcekitdAPI PRIVATE
17+
swiftBasic
1718
SourceKitSupport
1819
SourceKitSwiftLang)
1920

tools/lldb-moduleimport-test/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ add_swift_host_tool(lldb-moduleimport-test
44
)
55
target_link_libraries(lldb-moduleimport-test
66
PRIVATE
7+
swiftAST
78
swiftASTSectionImporter
89
swiftClangImporter
910
swiftFrontend)

tools/sil-func-extractor/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ add_swift_host_tool(sil-func-extractor
55
target_link_libraries(sil-func-extractor
66
PRIVATE
77
swiftClangImporter
8+
swiftDemangling
89
swiftFrontend
910
swiftSerialization
1011
swiftSILGen

tools/sil-nm/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ add_swift_host_tool(sil-nm
55
target_link_libraries(sil-nm
66
PRIVATE
77
swiftClangImporter
8+
swiftDemangling
89
swiftFrontend
910
swiftSerialization
1011
swiftSILGen

tools/sil-opt/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ target_link_libraries(sil-opt
66
PRIVATE
77
swiftFrontend
88
swiftIRGen
9+
swiftSIL
910
swiftSILGen
1011
swiftSILOptimizer
1112
# Clang libraries included to appease the linker on linux.

tools/swift-ast-script/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@ add_swift_host_tool(swift-ast-script
77
)
88
target_link_libraries(swift-ast-script
99
PRIVATE
10+
swiftAST
1011
swiftFrontendTool)

tools/swift-ide-test/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ add_swift_host_tool(swift-ide-test
66
)
77
target_link_libraries(swift-ide-test
88
PRIVATE
9+
swiftAST
910
swiftDriver
1011
swiftFrontend
1112
swiftIDE)

0 commit comments

Comments
 (0)