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`.
This commit is contained in:
Tony Allevato
2020-03-30 15:53:53 -07:00
parent 56695a1ac1
commit 5284cb6f99
14 changed files with 21 additions and 4 deletions

View File

@@ -124,15 +124,17 @@ if(SWIFT_BUILD_ONLY_SYNTAXPARSERLIB)
else()
set(clangBasicDep "${LLVM_LIBRARY_OUTPUT_INTDIR}/libclangBasic.a")
endif()
target_link_libraries(swiftAST PUBLIC
swiftBasic)
target_link_libraries(swiftAST PRIVATE
swiftBasic
swiftSyntax
${clangBasicDep})
target_compile_definitions(swiftAST PRIVATE
SWIFT_BUILD_ONLY_SYNTAXPARSERLIB=1)
else()
target_link_libraries(swiftAST PUBLIC
swiftBasic)
target_link_libraries(swiftAST PRIVATE
swiftBasic
swiftMarkup
swiftSyntax)
endif()

View File

@@ -86,8 +86,9 @@ add_swift_host_library(swiftBasic STATIC
target_include_directories(swiftBasic PRIVATE
${UUID_INCLUDE})
target_link_libraries(swiftBasic PUBLIC
swiftDemangling)
target_link_libraries(swiftBasic PRIVATE
swiftDemangling
${UUID_LIBRARIES})
message(STATUS "Swift version: ${SWIFT_VERSION}")

View File

@@ -16,6 +16,7 @@ add_swift_host_library(swiftFrontend STATIC
add_dependencies(swiftFrontend
SwiftOptions)
target_link_libraries(swiftFrontend PRIVATE
swiftAST
swiftSIL
swiftMigrator
swiftOption

View File

@@ -9,4 +9,5 @@ add_swift_host_library(swiftLLVMPasses STATIC
LLVM_LINK_COMPONENTS
analysis
)
target_link_libraries(swiftLLVMPasses PRIVATE
swiftDemangling)

View File

@@ -1,6 +1,7 @@
add_swift_host_library(swiftParseSIL STATIC
ParseSIL.cpp)
target_link_libraries(swiftParseSIL PRIVATE
swiftDemangling
swiftSema
swiftSIL)

View File

@@ -15,6 +15,8 @@ add_swift_host_library(swiftRemoteAST STATIC
RemoteAST.cpp
InProcessMemoryReader.cpp
${REMOTE_LIB_HEADERS})
target_link_libraries(swiftRemoteAST PUBLIC
swiftDemangling)
target_link_libraries(swiftRemoteAST PRIVATE
swiftIRGen
swiftSema)

View File

@@ -27,6 +27,8 @@ add_subdirectory(Verifier)
add_swift_host_library(swiftSIL STATIC
${SIL_SOURCES})
target_link_libraries(swiftSIL PUBLIC
swiftDemangling)
target_link_libraries(swiftSIL PRIVATE
swiftSema
swiftSerialization)

View File

@@ -14,6 +14,7 @@ add_sourcekit_library(sourcekitdAPI
ExpressionTypeArray.cpp
)
target_link_libraries(sourcekitdAPI PRIVATE
swiftBasic
SourceKitSupport
SourceKitSwiftLang)

View File

@@ -4,6 +4,7 @@ add_swift_host_tool(lldb-moduleimport-test
)
target_link_libraries(lldb-moduleimport-test
PRIVATE
swiftAST
swiftASTSectionImporter
swiftClangImporter
swiftFrontend)

View File

@@ -5,6 +5,7 @@ add_swift_host_tool(sil-func-extractor
target_link_libraries(sil-func-extractor
PRIVATE
swiftClangImporter
swiftDemangling
swiftFrontend
swiftSerialization
swiftSILGen

View File

@@ -5,6 +5,7 @@ add_swift_host_tool(sil-nm
target_link_libraries(sil-nm
PRIVATE
swiftClangImporter
swiftDemangling
swiftFrontend
swiftSerialization
swiftSILGen

View File

@@ -6,6 +6,7 @@ target_link_libraries(sil-opt
PRIVATE
swiftFrontend
swiftIRGen
swiftSIL
swiftSILGen
swiftSILOptimizer
# Clang libraries included to appease the linker on linux.

View File

@@ -7,4 +7,5 @@ add_swift_host_tool(swift-ast-script
)
target_link_libraries(swift-ast-script
PRIVATE
swiftAST
swiftFrontendTool)

View File

@@ -6,6 +6,7 @@ add_swift_host_tool(swift-ide-test
)
target_link_libraries(swift-ide-test
PRIVATE
swiftAST
swiftDriver
swiftFrontend
swiftIDE)