[clang-tools-extra] Prevent linking to duplicate .a libs and dylib

Fix various tool libraries not to link to clang's .a libraries and dylib
simultaneously.  This may cause breakage, in particular through
duplicate command-line option declarations.

Differential Revision: https://reviews.llvm.org/D81967
This commit is contained in:
Michał Górny 2020-06-16 20:43:55 +02:00
parent 1ad5e3cd6b
commit d4f298c820
36 changed files with 205 additions and 81 deletions

View File

@ -4,8 +4,10 @@ set(LLVM_LINK_COMPONENTS
add_clang_library(clangApplyReplacements
lib/Tooling/ApplyReplacements.cpp
)
LINK_LIBS
clang_target_link_libraries(clangApplyReplacements
PRIVATE
clangAST
clangBasic
clangRewrite

View File

@ -5,8 +5,10 @@ set(LLVM_LINK_COMPONENTS
add_clang_library(clangChangeNamespace
ChangeNamespace.cpp
)
LINK_LIBS
clang_target_link_libraries(clangChangeNamespace
PRIVATE
clangAST
clangASTMatchers
clangBasic

View File

@ -15,8 +15,10 @@ add_clang_library(clangDoc
Representation.cpp
Serialize.cpp
YAMLGenerator.cpp
)
LINK_LIBS
clang_target_link_libraries(clangDoc
PRIVATE
clangAnalysis
clangAST
clangASTMatchers

View File

@ -11,6 +11,11 @@ add_clang_library(clangIncludeFixer
YamlSymbolIndex.cpp
LINK_LIBS
findAllSymbols
)
clang_target_link_libraries(clangIncludeFixer
PRIVATE
clangAST
clangBasic
clangFormat
@ -21,7 +26,6 @@ add_clang_library(clangIncludeFixer
clangSerialization
clangTooling
clangToolingCore
findAllSymbols
)
add_subdirectory(plugin)

View File

@ -12,8 +12,10 @@ add_clang_library(findAllSymbols
PragmaCommentHandler.cpp
STLPostfixHeaderMap.cpp
SymbolInfo.cpp
)
LINK_LIBS
clang_target_link_libraries(findAllSymbols
PRIVATE
clangAST
clangASTMatchers
clangBasic

View File

@ -6,8 +6,10 @@ set(LLVM_LINK_COMPONENTS
add_clang_library(clangMove
Move.cpp
HelperDeclRefGraph.cpp
)
LINK_LIBS
clang_target_link_libraries(clangMove
PRIVATE
clangAnalysis
clangAST
clangASTMatchers

View File

@ -7,8 +7,10 @@ set(LLVM_LINK_COMPONENTS
add_clang_library(clangQuery
Query.cpp
QueryParser.cpp
)
LINK_LIBS
clang_target_link_libraries(clangQuery
PRIVATE
clangAST
clangASTMatchers
clangBasic

View File

@ -5,8 +5,10 @@ set(LLVM_LINK_COMPONENTS
add_clang_library(clangReorderFields
ReorderFieldsAction.cpp
)
LINK_LIBS
clang_target_link_libraries(clangReorderFields
PRIVATE
clangAST
clangASTMatchers
clangBasic

View File

@ -15,8 +15,10 @@ add_clang_library(clangTidy
DEPENDS
ClangSACheckers
)
LINK_LIBS
clang_target_link_libraries(clangTidy
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
@ -32,7 +34,8 @@ add_clang_library(clangTidy
)
if(CLANG_ENABLE_STATIC_ANALYZER)
target_link_libraries(clangTidy PRIVATE
clang_target_link_libraries(clangTidy
PRIVATE
clangStaticAnalyzerCore
clangStaticAnalyzerFrontend
)

View File

@ -26,12 +26,16 @@ add_clang_library(clangTidyAbseilModule
UpgradeDurationConversionsCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyAbseilModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
clangTooling
clangTransformer
)

View File

@ -23,10 +23,14 @@ add_clang_library(clangTidyAndroidModule
ComparisonInTempFailureRetryCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyAndroidModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -8,10 +8,14 @@ add_clang_library(clangTidyBoostModule
UseToStringCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyBoostModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -59,13 +59,17 @@ add_clang_library(clangTidyBugproneModule
VirtualNearMissCheck.cpp
LINK_LIBS
clangTidy
clangTidyCppCoreGuidelinesModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyBugproneModule
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyCppCoreGuidelinesModule
clangTidyUtils
clangTooling
)

View File

@ -21,10 +21,6 @@ add_clang_library(clangTidyCERTModule
VariadicFunctionDefCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyBugproneModule
clangTidyGoogleModule
@ -33,3 +29,11 @@ add_clang_library(clangTidyCERTModule
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyCERTModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
)

View File

@ -27,15 +27,19 @@ add_clang_library(clangTidyCppCoreGuidelinesModule
SpecialMemberFunctionsCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangLex
clangSerialization
clangTidy
clangTidyMiscModule
clangTidyModernizeModule
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyCppCoreGuidelinesModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangSerialization
clangTooling
)

View File

@ -9,11 +9,15 @@ add_clang_library(clangTidyDarwinModule
DispatchOnceNonstaticCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyDarwinModule
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -14,11 +14,15 @@ add_clang_library(clangTidyFuchsiaModule
VirtualInheritanceCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyGoogleModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyFuchsiaModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
)

View File

@ -24,11 +24,15 @@ add_clang_library(clangTidyGoogleModule
UsingNamespaceDirectiveCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyGoogleModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
)

View File

@ -11,11 +11,6 @@ add_clang_library(clangTidyHICPPModule
SignedBitwiseCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangLex
clangSerialization
clangTidy
clangTidyBugproneModule
clangTidyCppCoreGuidelinesModule
@ -26,3 +21,12 @@ add_clang_library(clangTidyHICPPModule
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyHICPPModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangSerialization
)

View File

@ -8,10 +8,14 @@ add_clang_library(clangTidyLinuxKernelModule
MustCheckErrsCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyLinuxKernelModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -12,12 +12,16 @@ add_clang_library(clangTidyLLVMModule
TwineLocalCheck.cpp
LINK_LIBS
clangTidy
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyLLVMModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyReadabilityModule
clangTidyUtils
clangTooling
)

View File

@ -10,12 +10,16 @@ add_clang_library(clangTidyLLVMLibcModule
RestrictSystemLibcHeadersCheck.cpp
LINK_LIBS
clangTidy
clangTidyPortabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyLLVMLibcModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyPortabilityModule
clangTidyUtils
clangTooling
)

View File

@ -21,13 +21,17 @@ add_clang_library(clangTidyMiscModule
UnusedUsingDeclsCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyMiscModule
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
clangBasic
clangLex
clangSerialization
clangTidy
clangTidyUtils
clangTooling
)

View File

@ -40,12 +40,16 @@ add_clang_library(clangTidyModernizeModule
UseUsingCheck.cpp
LINK_LIBS
clangTidy
clangTidyReadabilityModule
clangTidyUtils
)
clang_target_link_libraries(clangTidyModernizeModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyReadabilityModule
clangTidyUtils
clangTooling
)

View File

@ -9,13 +9,17 @@ add_clang_library(clangTidyMPIModule
TypeMismatchCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyMPIModule
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
clangTooling
clangStaticAnalyzerCheckers
)

View File

@ -14,10 +14,14 @@ add_clang_library(clangTidyObjCModule
SuperSelfCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyObjCModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -9,9 +9,13 @@ add_clang_library(clangTidyOpenMPModule
UseDefaultNoneCheck.cpp
LINK_LIBS
clangAST
clangASTMatchers
clangBasic
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyOpenMPModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
)

View File

@ -21,11 +21,15 @@ add_clang_library(clangTidyPerformanceModule
UnnecessaryValueParamCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyPerformanceModule
PRIVATE
clangAST
clangASTMatchers
clangAnalysis
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -2,12 +2,16 @@ add_clang_library(clangTidyPlugin
ClangTidyPlugin.cpp
LINK_LIBS
clangTidy
${ALL_CLANG_TIDY_CHECKS}
)
clang_target_link_libraries(clangTidyPlugin
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangFrontend
clangSema
clangTidy
clangTooling
${ALL_CLANG_TIDY_CHECKS}
)

View File

@ -9,11 +9,15 @@ add_clang_library(clangTidyPortabilityModule
SIMDIntrinsicsCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyPortabilityModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
clangTooling
)

View File

@ -45,12 +45,16 @@ add_clang_library(clangTidyReadabilityModule
UseAnyOfAllOfCheck.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyReadabilityModule
PRIVATE
clangAnalysis
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
clangTooling
)

View File

@ -13,11 +13,15 @@ add_clang_library(clangTidyMain
ClangTidyMain.cpp
LINK_LIBS
clangTidy
${ALL_CLANG_TIDY_CHECKS}
)
clang_target_link_libraries(clangTidyMain
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangTidy
${ALL_CLANG_TIDY_CHECKS}
clangTooling
clangToolingCore
)

View File

@ -22,11 +22,15 @@ add_clang_library(clangTidyUtils
UsingInserter.cpp
LINK_LIBS
clangTidy
)
clang_target_link_libraries(clangTidyUtils
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangSema
clangTidy
clangTransformer
)

View File

@ -8,10 +8,14 @@ add_clang_library(clangTidyZirconModule
ZirconTidyModule.cpp
LINK_LIBS
clangTidy
clangTidyUtils
)
clang_target_link_libraries(clangTidyZirconModule
PRIVATE
clangAST
clangASTMatchers
clangBasic
clangLex
clangTidy
clangTidyUtils
)

View File

@ -96,6 +96,14 @@ add_clang_library(clangDaemon
refactor/Tweak.cpp
LINK_LIBS
clangdSupport
clangTidy
${LLVM_PTHREAD_LIB}
${ALL_CLANG_TIDY_CHECKS}
)
clang_target_link_libraries(clangDaemon
PRIVATE
clangAST
clangASTMatchers
clangBasic
@ -106,15 +114,11 @@ add_clang_library(clangDaemon
clangLex
clangSema
clangSerialization
clangTidy
clangTooling
clangToolingCore
clangToolingInclusions
clangToolingRefactoring
clangToolingSyntax
clangdSupport
${LLVM_PTHREAD_LIB}
${ALL_CLANG_TIDY_CHECKS}
)
add_subdirectory(refactor/tweaks)

View File

@ -120,7 +120,6 @@ target_link_libraries(ClangdTests
clangDaemon
clangdSupport
clangTidy
LLVMSupport
LLVMTestingSupport
)