Skip to content

Add dependencies where targets depend on inclusions from unspecified targets. #30732

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Apr 1, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 8 additions & 9 deletions lib/AST/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -116,25 +116,24 @@ if(NOT SWIFT_BUILD_ONLY_SYNTAXPARSERLIB)
clangBasic)
endif()

target_link_libraries(swiftAST
PUBLIC swiftBasic
PRIVATE swiftSyntax)
if(SWIFT_BUILD_ONLY_SYNTAXPARSERLIB)
# Add clangBasic as a single direct dependency to avoid bringing along some
# llvm libraries that we don't need.
if("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "WINDOWS")
set(clangBasicDep "${LLVM_LIBRARY_OUTPUT_INTDIR}/clangBasic.lib")
target_link_libraries(swiftAST PRIVATE
"${LLVM_LIBRARY_OUTPUT_INTDIR}/clangBasic.lib")
else()
set(clangBasicDep "${LLVM_LIBRARY_OUTPUT_INTDIR}/libclangBasic.a")
target_link_libraries(swiftAST PRIVATE
"${LLVM_LIBRARY_OUTPUT_INTDIR}/libclangBasic.a")
endif()
target_link_libraries(swiftAST PRIVATE
swiftBasic
swiftSyntax
${clangBasicDep})
target_compile_definitions(swiftAST PRIVATE
SWIFT_BUILD_ONLY_SYNTAXPARSERLIB=1)
else()
target_link_libraries(swiftAST PRIVATE
swiftBasic
swiftMarkup
swiftSyntax)
swiftMarkup)
endif()

# intrinsics_gen is the LLVM tablegen target that generates the include files
Expand Down
3 changes: 2 additions & 1 deletion lib/Basic/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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}")
Expand Down
1 change: 1 addition & 0 deletions lib/Frontend/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ add_swift_host_library(swiftFrontend STATIC
add_dependencies(swiftFrontend
SwiftOptions)
target_link_libraries(swiftFrontend PRIVATE
swiftAST
swiftSIL
swiftMigrator
swiftOption
Expand Down
3 changes: 2 additions & 1 deletion lib/LLVMPasses/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ add_swift_host_library(swiftLLVMPasses STATIC
LLVM_LINK_COMPONENTS
analysis
)

target_link_libraries(swiftLLVMPasses PRIVATE
swiftDemangling)
1 change: 1 addition & 0 deletions lib/ParseSIL/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
add_swift_host_library(swiftParseSIL STATIC
ParseSIL.cpp)
target_link_libraries(swiftParseSIL PRIVATE
swiftDemangling
swiftSema
swiftSIL)

2 changes: 2 additions & 0 deletions lib/RemoteAST/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
2 changes: 2 additions & 0 deletions lib/SIL/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
1 change: 1 addition & 0 deletions tools/SourceKit/tools/sourcekitd/lib/API/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ add_sourcekit_library(sourcekitdAPI
ExpressionTypeArray.cpp
)
target_link_libraries(sourcekitdAPI PRIVATE
swiftBasic
SourceKitSupport
SourceKitSwiftLang)

Expand Down
1 change: 1 addition & 0 deletions tools/lldb-moduleimport-test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ add_swift_host_tool(lldb-moduleimport-test
)
target_link_libraries(lldb-moduleimport-test
PRIVATE
swiftAST
swiftASTSectionImporter
swiftClangImporter
swiftFrontend)
Expand Down
1 change: 1 addition & 0 deletions tools/sil-func-extractor/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ add_swift_host_tool(sil-func-extractor
target_link_libraries(sil-func-extractor
PRIVATE
swiftClangImporter
swiftDemangling
swiftFrontend
swiftSerialization
swiftSILGen
Expand Down
1 change: 1 addition & 0 deletions tools/sil-nm/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ add_swift_host_tool(sil-nm
target_link_libraries(sil-nm
PRIVATE
swiftClangImporter
swiftDemangling
swiftFrontend
swiftSerialization
swiftSILGen
Expand Down
1 change: 1 addition & 0 deletions tools/sil-opt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ target_link_libraries(sil-opt
PRIVATE
swiftFrontend
swiftIRGen
swiftSIL
swiftSILGen
swiftSILOptimizer
# Clang libraries included to appease the linker on linux.
Expand Down
1 change: 1 addition & 0 deletions tools/swift-ast-script/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@ add_swift_host_tool(swift-ast-script
)
target_link_libraries(swift-ast-script
PRIVATE
swiftAST
swiftFrontendTool)
1 change: 1 addition & 0 deletions tools/swift-ide-test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ add_swift_host_tool(swift-ide-test
)
target_link_libraries(swift-ide-test
PRIVATE
swiftAST
swiftDriver
swiftFrontend
swiftIDE)
Expand Down