[clang-tools-extra] [cmake] Link against libclang-cpp whenever possible

Use clang_target_link_libraries() in order to support linking against
libclang-cpp instead of static libraries.

Differential Revision: https://reviews.llvm.org/D68448

llvm-svn: 373786
This commit is contained in:
Michal Gorny 2019-10-04 20:30:02 +00:00
parent c178809eb6
commit 0820041e1d
27 changed files with 120 additions and 51 deletions

View File

@ -5,12 +5,15 @@ set(LLVM_LINK_COMPONENTS
add_clang_tool(clang-apply-replacements
ClangApplyReplacementsMain.cpp
)
target_link_libraries(clang-apply-replacements
clang_target_link_libraries(clang-apply-replacements
PRIVATE
clangApplyReplacements
clangBasic
clangFormat
clangRewrite
clangToolingCore
clangToolingRefactoring
)
target_link_libraries(clang-apply-replacements
PRIVATE
clangApplyReplacements
)

View File

@ -7,12 +7,11 @@ set(LLVM_LINK_COMPONENTS
add_clang_tool(clang-change-namespace
ClangChangeNamespace.cpp
)
target_link_libraries(clang-change-namespace
clang_target_link_libraries(clang-change-namespace
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangChangeNamespace
clangFormat
clangFrontend
clangRewrite
@ -20,3 +19,7 @@ target_link_libraries(clang-change-namespace
clangTooling
clangToolingCore
)
target_link_libraries(clang-change-namespace
PRIVATE
clangChangeNamespace
)

View File

@ -4,16 +4,19 @@ add_clang_tool(clang-doc
ClangDocMain.cpp
)
target_link_libraries(clang-doc
clang_target_link_libraries(clang-doc
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangFrontend
clangDoc
clangTooling
clangToolingCore
)
target_link_libraries(clang-doc
PRIVATE
clangDoc
)
install(FILES ../assets/clang-doc-default-stylesheet.css
DESTINATION share/clang

View File

@ -4,7 +4,7 @@ add_clang_tool(find-all-symbols
FindAllSymbolsMain.cpp
)
target_link_libraries(find-all-symbols
clang_target_link_libraries(find-all-symbols
PRIVATE
clangAST
clangASTMatchers
@ -13,6 +13,9 @@ target_link_libraries(find-all-symbols
clangLex
clangSerialization
clangTooling
)
target_link_libraries(find-all-symbols
PRIVATE
findAllSymbols
)

View File

@ -4,16 +4,19 @@ add_clang_tool(clang-include-fixer
ClangIncludeFixer.cpp
)
target_link_libraries(clang-include-fixer
clang_target_link_libraries(clang-include-fixer
PRIVATE
clangBasic
clangFormat
clangFrontend
clangIncludeFixer
clangRewrite
clangSerialization
clangTooling
clangToolingCore
)
target_link_libraries(clang-include-fixer
PRIVATE
clangIncludeFixer
findAllSymbols
)

View File

@ -4,16 +4,19 @@ add_clang_tool(clang-move
ClangMove.cpp
)
target_link_libraries(clang-move
clang_target_link_libraries(clang-move
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangFormat
clangFrontend
clangMove
clangRewrite
clangSerialization
clangTooling
clangToolingCore
)
target_link_libraries(clang-move
PRIVATE
clangMove
)

View File

@ -3,14 +3,17 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
add_clang_tool(clang-query
ClangQuery.cpp
)
target_link_libraries(clang-query
clang_target_link_libraries(clang-query
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangDynamicASTMatchers
clangFrontend
clangQuery
clangSerialization
clangTooling
)
target_link_libraries(clang-query
PRIVATE
clangQuery
)

View File

@ -2,13 +2,16 @@ add_clang_tool(clang-reorder-fields
ClangReorderFields.cpp
)
target_link_libraries(clang-reorder-fields
clang_target_link_libraries(clang-reorder-fields
PRIVATE
clangBasic
clangFrontend
clangReorderFields
clangRewrite
clangSerialization
clangTooling
clangToolingCore
)
target_link_libraries(clang-reorder-fields
PRIVATE
clangReorderFields
)

View File

@ -31,7 +31,7 @@ add_clang_library(clangTidy
)
if(CLANG_ENABLE_STATIC_ANALYZER)
target_link_libraries(clangTidy PRIVATE
clang_target_link_libraries(clangTidy PRIVATE
clangStaticAnalyzerCore
clangStaticAnalyzerFrontend
)

View File

@ -11,14 +11,17 @@ add_clang_tool(clang-tidy
add_dependencies(clang-tidy
clang-resource-headers
)
target_link_libraries(clang-tidy
clang_target_link_libraries(clang-tidy
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangTidy
clangTooling
clangToolingCore
)
target_link_libraries(clang-tidy
PRIVATE
clangTidy
${ALL_CLANG_TIDY_CHECKS}
)

View File

@ -12,13 +12,16 @@ add_llvm_fuzzer(clangd-fuzzer
DUMMY_MAIN DummyClangdMain.cpp
)
target_link_libraries(clangd-fuzzer
clang_target_link_libraries(clangd-fuzzer
PRIVATE
clangBasic
clangDaemon
clangFormat
clangFrontend
clangSema
clangTooling
clangToolingCore
)
target_link_libraries(clangd-fuzzer
PRIVATE
clangDaemon
)

View File

@ -9,8 +9,11 @@ add_clang_executable(dexp
Dexp.cpp
)
target_link_libraries(dexp
clang_target_link_libraries(dexp
PRIVATE
clangBasic
)
target_link_libraries(dexp
PRIVATE
clangDaemon
)

View File

@ -8,13 +8,16 @@ add_clang_executable(clangd-indexer
IndexerMain.cpp
)
target_link_libraries(clangd-indexer
clang_target_link_libraries(clangd-indexer
PRIVATE
clangAST
clangBasic
clangDaemon
clangFrontend
clangIndex
clangLex
clangTooling
)
target_link_libraries(clangd-indexer
PRIVATE
clangDaemon
)

View File

@ -15,12 +15,10 @@ if(CLANGD_BUILD_XPC)
list(APPEND CLANGD_XPC_LIBS "clangdXpcJsonConversions" "clangdXpcTransport")
endif()
target_link_libraries(clangd
clang_target_link_libraries(clangd
PRIVATE
clangAST
clangBasic
clangTidy
clangDaemon
clangFormat
clangFrontend
clangSema
@ -28,5 +26,10 @@ target_link_libraries(clangd
clangToolingCore
clangToolingRefactoring
clangToolingSyntax
)
target_link_libraries(clangd
PRIVATE
clangTidy
clangDaemon
${CLANGD_XPC_LIBS}
)

View File

@ -78,23 +78,26 @@ add_unittest(ClangdUnitTests ClangdTests
$<TARGET_OBJECTS:obj.clangDaemonTweaks>
)
target_link_libraries(ClangdTests
clang_target_link_libraries(ClangdTests
PRIVATE
clangAST
clangBasic
clangDaemon
clangFormat
clangFrontend
clangIndex
clangLex
clangSema
clangSerialization
clangTidy
clangTooling
clangToolingCore
clangToolingInclusions
clangToolingRefactoring
clangToolingSyntax
)
target_link_libraries(ClangdTests
PRIVATE
clangDaemon
clangTidy
LLVMSupport
LLVMTestingSupport
)

View File

@ -13,14 +13,17 @@ set(LLVM_LINK_COMPONENTS
support
)
target_link_libraries(clangd-xpc-test-client
clang_target_link_libraries(clangd-xpc-test-client
PRIVATE
clangBasic
clangDaemon
clangFormat
clangFrontend
clangSema
clangTooling
clangToolingCore
)
target_link_libraries(clangd-xpc-test-client
PRIVATE
clangDaemon
clangdXpcJsonConversions
)

View File

@ -11,7 +11,7 @@ add_clang_tool(modularize
PreprocessorTracker.cpp
)
target_link_libraries(modularize
clang_target_link_libraries(modularize
PRIVATE
clangAST
clangBasic

View File

@ -7,7 +7,7 @@ add_clang_tool(pp-trace
PPCallbacksTracker.cpp
)
target_link_libraries(pp-trace
clang_target_link_libraries(pp-trace
PRIVATE
clangAST
clangBasic

View File

@ -6,7 +6,7 @@ add_clang_executable(tool-template
ToolTemplate.cpp
)
target_link_libraries(tool-template
clang_target_link_libraries(tool-template
PRIVATE
clangAST
clangASTMatchers

View File

@ -11,10 +11,13 @@ add_extra_unittest(ClangApplyReplacementsTests
ApplyReplacementsTest.cpp
)
target_link_libraries(ClangApplyReplacementsTests
clang_target_link_libraries(ClangApplyReplacementsTests
PRIVATE
clangApplyReplacements
clangBasic
clangToolingCore
clangToolingRefactoring
)
target_link_libraries(ClangApplyReplacementsTests
PRIVATE
clangApplyReplacements
)

View File

@ -15,12 +15,11 @@ add_extra_unittest(ClangChangeNamespaceTests
ChangeNamespaceTests.cpp
)
target_link_libraries(ClangChangeNamespaceTests
clang_target_link_libraries(ClangChangeNamespaceTests
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangChangeNamespace
clangFormat
clangFrontend
clangRewrite
@ -28,3 +27,7 @@ target_link_libraries(ClangChangeNamespaceTests
clangTooling
clangToolingCore
)
target_link_libraries(ClangChangeNamespaceTests
PRIVATE
clangChangeNamespace
)

View File

@ -20,12 +20,11 @@ add_extra_unittest(ClangDocTests
YAMLGeneratorTest.cpp
)
target_link_libraries(ClangDocTests
clang_target_link_libraries(ClangDocTests
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangDoc
clangFormat
clangFrontend
clangRewrite
@ -33,3 +32,7 @@ target_link_libraries(ClangDocTests
clangTooling
clangToolingCore
)
target_link_libraries(ClangDocTests
PRIVATE
clangDoc
)

View File

@ -16,16 +16,19 @@ add_extra_unittest(ClangIncludeFixerTests
FuzzySymbolIndexTests.cpp
)
target_link_libraries(ClangIncludeFixerTests
clang_target_link_libraries(ClangIncludeFixerTests
PRIVATE
clangBasic
clangFormat
clangFrontend
clangIncludeFixer
clangRewrite
clangSerialization
clangTooling
clangToolingCore
)
target_link_libraries(ClangIncludeFixerTests
PRIVATE
clangIncludeFixer
findAllSymbols
)

View File

@ -12,7 +12,7 @@ add_extra_unittest(FindAllSymbolsTests
FindAllSymbolsTests.cpp
)
target_link_libraries(FindAllSymbolsTests
clang_target_link_libraries(FindAllSymbolsTests
PRIVATE
clangAST
clangASTMatchers
@ -21,5 +21,8 @@ target_link_libraries(FindAllSymbolsTests
clangLex
clangSerialization
clangTooling
)
target_link_libraries(FindAllSymbolsTests
PRIVATE
findAllSymbols
)

View File

@ -15,16 +15,19 @@ add_extra_unittest(ClangMoveTests
ClangMoveTests.cpp
)
target_link_libraries(ClangMoveTests
clang_target_link_libraries(ClangMoveTests
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangFormat
clangFrontend
clangMove
clangRewrite
clangSerialization
clangTooling
clangToolingCore
)
target_link_libraries(ClangMoveTests
PRIVATE
clangMove
)

View File

@ -11,14 +11,17 @@ add_extra_unittest(ClangQueryTests
QueryParserTest.cpp
)
target_link_libraries(ClangQueryTests
clang_target_link_libraries(ClangQueryTests
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangDynamicASTMatchers
clangFrontend
clangQuery
clangSerialization
clangTooling
)
target_link_libraries(ClangQueryTests
PRIVATE
clangQuery
)

View File

@ -21,7 +21,7 @@ add_extra_unittest(ClangTidyTests
TransformerClangTidyCheckTest.cpp
)
target_link_libraries(ClangTidyTests
clang_target_link_libraries(ClangTidyTests
PRIVATE
clangAST
clangASTMatchers
@ -29,6 +29,12 @@ target_link_libraries(ClangTidyTests
clangFrontend
clangLex
clangSerialization
clangTooling
clangToolingCore
clangToolingRefactoring
)
target_link_libraries(ClangTidyTests
PRIVATE
clangTidy
clangTidyAndroidModule
clangTidyGoogleModule
@ -36,7 +42,4 @@ target_link_libraries(ClangTidyTests
clangTidyObjCModule
clangTidyReadabilityModule
clangTidyUtils
clangTooling
clangToolingCore
clangToolingRefactoring
)