[clang-tools-extra] Fix add_clang_library usage (#109321)
If a add_clang_library call doesn't specify building as static or shared
library they are implicitly added to the list static libraries that is
linked in to clang-cpp shared library here.
315ba77406/clang/cmake/modules/AddClang.cmake (L107)
Because the clang-tools-extra libraries targets were declared after
clang-cpp they by luck never got linked to clang-cpp.
This change is required for clang symbol visibility macros on windows to
work correctly for clang tools since we need to distinguish if a target
being built will be importing or exporting clang symbols from the
clang-cpp DLL.
This commit is contained in:
@@ -2,7 +2,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangApplyReplacements
|
||||
add_clang_library(clangApplyReplacements STATIC
|
||||
lib/Tooling/ApplyReplacements.cpp
|
||||
|
||||
DEPENDS
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangChangeNamespace
|
||||
add_clang_library(clangChangeNamespace STATIC
|
||||
ChangeNamespace.cpp
|
||||
|
||||
DEPENDS
|
||||
|
||||
@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangDoc
|
||||
add_clang_library(clangDoc STATIC
|
||||
BitcodeReader.cpp
|
||||
BitcodeWriter.cpp
|
||||
ClangDoc.cpp
|
||||
|
||||
@@ -2,7 +2,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
support
|
||||
)
|
||||
|
||||
add_clang_library(clangIncludeFixer
|
||||
add_clang_library(clangIncludeFixer STATIC
|
||||
IncludeFixer.cpp
|
||||
IncludeFixerContext.cpp
|
||||
InMemorySymbolIndex.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(findAllSymbols
|
||||
add_clang_library(findAllSymbols STATIC
|
||||
FindAllSymbols.cpp
|
||||
FindAllSymbolsAction.cpp
|
||||
FindAllMacros.cpp
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
add_clang_library(clangIncludeFixerPlugin
|
||||
add_clang_library(clangIncludeFixerPlugin STATIC
|
||||
IncludeFixerPlugin.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangMove
|
||||
add_clang_library(clangMove STATIC
|
||||
Move.cpp
|
||||
HelperDeclRefGraph.cpp
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangQuery
|
||||
add_clang_library(clangQuery STATIC
|
||||
Query.cpp
|
||||
QueryParser.cpp
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
support
|
||||
)
|
||||
|
||||
add_clang_library(clangReorderFields
|
||||
add_clang_library(clangReorderFields STATIC
|
||||
ReorderFieldsAction.cpp
|
||||
|
||||
DEPENDS
|
||||
|
||||
@@ -8,7 +8,7 @@ configure_file(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/clang-tidy-config.h)
|
||||
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_clang_library(clangTidy
|
||||
add_clang_library(clangTidy STATIC
|
||||
ClangTidy.cpp
|
||||
ClangTidyCheck.cpp
|
||||
ClangTidyModule.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyAbseilModule
|
||||
add_clang_library(clangTidyAbseilModule STATIC
|
||||
AbseilTidyModule.cpp
|
||||
CleanupCtadCheck.cpp
|
||||
DurationAdditionCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyAlteraModule
|
||||
add_clang_library(clangTidyAlteraModule STATIC
|
||||
AlteraTidyModule.cpp
|
||||
IdDependentBackwardBranchCheck.cpp
|
||||
KernelNameRestrictionCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyAndroidModule
|
||||
add_clang_library(clangTidyAndroidModule STATIC
|
||||
AndroidTidyModule.cpp
|
||||
CloexecAccept4Check.cpp
|
||||
CloexecAcceptCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyBoostModule
|
||||
add_clang_library(clangTidyBoostModule STATIC
|
||||
BoostTidyModule.cpp
|
||||
UseRangesCheck.cpp
|
||||
UseToStringCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyBugproneModule
|
||||
add_clang_library(clangTidyBugproneModule STATIC
|
||||
ArgumentCommentCheck.cpp
|
||||
AssertSideEffectCheck.cpp
|
||||
AssignmentInIfConditionCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
FrontendOpenMP
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyCERTModule
|
||||
add_clang_library(clangTidyCERTModule STATIC
|
||||
CERTTidyModule.cpp
|
||||
CommandProcessorCheck.cpp
|
||||
DefaultOperatorNewAlignmentCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyConcurrencyModule
|
||||
add_clang_library(clangTidyConcurrencyModule STATIC
|
||||
ConcurrencyTidyModule.cpp
|
||||
MtUnsafeCheck.cpp
|
||||
ThreadCanceltypeAsynchronousCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyCppCoreGuidelinesModule
|
||||
add_clang_library(clangTidyCppCoreGuidelinesModule STATIC
|
||||
AvoidCapturingLambdaCoroutinesCheck.cpp
|
||||
AvoidConstOrRefDataMembersCheck.cpp
|
||||
AvoidDoWhileCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyDarwinModule
|
||||
add_clang_library(clangTidyDarwinModule STATIC
|
||||
AvoidSpinlockCheck.cpp
|
||||
DarwinTidyModule.cpp
|
||||
DispatchOnceNonstaticCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyFuchsiaModule
|
||||
add_clang_library(clangTidyFuchsiaModule STATIC
|
||||
DefaultArgumentsCallsCheck.cpp
|
||||
DefaultArgumentsDeclarationsCheck.cpp
|
||||
FuchsiaTidyModule.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyGoogleModule
|
||||
add_clang_library(clangTidyGoogleModule STATIC
|
||||
AvoidCStyleCastsCheck.cpp
|
||||
AvoidNSObjectNewCheck.cpp
|
||||
AvoidThrowingObjCExceptionCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyHICPPModule
|
||||
add_clang_library(clangTidyHICPPModule STATIC
|
||||
ExceptionBaseclassCheck.cpp
|
||||
HICPPTidyModule.cpp
|
||||
IgnoredRemoveResultCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyLinuxKernelModule
|
||||
add_clang_library(clangTidyLinuxKernelModule STATIC
|
||||
LinuxKernelTidyModule.cpp
|
||||
MustCheckErrsCheck.cpp
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyLLVMModule
|
||||
add_clang_library(clangTidyLLVMModule STATIC
|
||||
HeaderGuardCheck.cpp
|
||||
IncludeOrderCheck.cpp
|
||||
LLVMTidyModule.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyLLVMLibcModule
|
||||
add_clang_library(clangTidyLLVMLibcModule STATIC
|
||||
CalleeNamespaceCheck.cpp
|
||||
ImplementationInNamespaceCheck.cpp
|
||||
InlineFunctionDeclCheck.cpp
|
||||
|
||||
@@ -17,7 +17,7 @@ add_custom_command(
|
||||
add_custom_target(genconfusable DEPENDS Confusables.inc)
|
||||
set_target_properties(genconfusable PROPERTIES FOLDER "Clang Tools Extra/Sourcegenning")
|
||||
|
||||
add_clang_library(clangTidyMiscModule
|
||||
add_clang_library(clangTidyMiscModule STATIC
|
||||
ConstCorrectnessCheck.cpp
|
||||
CoroutineHostileRAIICheck.cpp
|
||||
DefinitionsInHeadersCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyModernizeModule
|
||||
add_clang_library(clangTidyModernizeModule STATIC
|
||||
AvoidBindCheck.cpp
|
||||
AvoidCArraysCheck.cpp
|
||||
ConcatNestedNamespacesCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyMPIModule
|
||||
add_clang_library(clangTidyMPIModule STATIC
|
||||
BufferDerefCheck.cpp
|
||||
MPITidyModule.cpp
|
||||
TypeMismatchCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyObjCModule
|
||||
add_clang_library(clangTidyObjCModule STATIC
|
||||
AssertEquals.cpp
|
||||
AvoidNSErrorInitCheck.cpp
|
||||
DeallocInCategoryCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyOpenMPModule
|
||||
add_clang_library(clangTidyOpenMPModule STATIC
|
||||
ExceptionEscapeCheck.cpp
|
||||
OpenMPTidyModule.cpp
|
||||
UseDefaultNoneCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyPerformanceModule
|
||||
add_clang_library(clangTidyPerformanceModule STATIC
|
||||
AvoidEndlCheck.cpp
|
||||
EnumSizeCheck.cpp
|
||||
FasterStringFindCheck.cpp
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
add_clang_library(clangTidyPlugin
|
||||
add_clang_library(clangTidyPlugin STATIC
|
||||
ClangTidyPlugin.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
TargetParser
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyPortabilityModule
|
||||
add_clang_library(clangTidyPortabilityModule STATIC
|
||||
PortabilityTidyModule.cpp
|
||||
RestrictSystemIncludesCheck.cpp
|
||||
SIMDIntrinsicsCheck.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyReadabilityModule
|
||||
add_clang_library(clangTidyReadabilityModule STATIC
|
||||
AvoidConstParamsInDecls.cpp
|
||||
AvoidNestedConditionalOperatorCheck.cpp
|
||||
AvoidReturnWithVoidValueCheck.cpp
|
||||
|
||||
@@ -9,7 +9,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
# Needed by LLVM's CMake checks because this file defines multiple targets.
|
||||
set(LLVM_OPTIONAL_SOURCES ClangTidyMain.cpp ClangTidyToolMain.cpp)
|
||||
|
||||
add_clang_library(clangTidyMain
|
||||
add_clang_library(clangTidyMain STATIC
|
||||
ClangTidyMain.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyUtils
|
||||
add_clang_library(clangTidyUtils STATIC
|
||||
Aliasing.cpp
|
||||
ASTUtils.cpp
|
||||
BracesAroundStatement.cpp
|
||||
|
||||
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
||||
Support
|
||||
)
|
||||
|
||||
add_clang_library(clangTidyZirconModule
|
||||
add_clang_library(clangTidyZirconModule STATIC
|
||||
TemporaryObjectsCheck.cpp
|
||||
ZirconTidyModule.cpp
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ endif()
|
||||
include_directories(BEFORE "${CMAKE_CURRENT_BINARY_DIR}/../clang-tidy")
|
||||
include_directories(BEFORE "${CMAKE_CURRENT_SOURCE_DIR}/../include-cleaner/include")
|
||||
|
||||
add_clang_library(clangDaemon
|
||||
add_clang_library(clangDaemon STATIC
|
||||
AST.cpp
|
||||
ASTSignals.cpp
|
||||
ClangdLSPServer.cpp
|
||||
|
||||
@@ -19,7 +19,7 @@ if (CLANGD_ENABLE_REMOTE)
|
||||
# target-local?
|
||||
add_definitions(-DGOOGLE_PROTOBUF_NO_RTTI=1)
|
||||
|
||||
add_clang_library(clangdRemoteIndex
|
||||
add_clang_library(clangdRemoteIndex STATIC
|
||||
Client.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
add_clang_library(clangdRemoteMarshalling
|
||||
add_clang_library(clangdRemoteMarshalling STATIC
|
||||
Marshalling.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -2,7 +2,7 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../)
|
||||
# When compiled without Remote Index support, the real implementation index
|
||||
# client is not present. Users will get a notification about this when trying
|
||||
# to connect to remote index server instance.
|
||||
add_clang_library(clangdRemoteIndex
|
||||
add_clang_library(clangdRemoteIndex STATIC
|
||||
UnimplementedClient.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
||||
@@ -15,7 +15,7 @@ if(NOT HAVE_CXX_ATOMICS_WITHOUT_LIB OR NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB)
|
||||
list(APPEND CLANGD_ATOMIC_LIB "atomic")
|
||||
endif()
|
||||
|
||||
add_clang_library(clangdSupport
|
||||
add_clang_library(clangdSupport STATIC
|
||||
Bracket.cpp
|
||||
Cancellation.cpp
|
||||
Context.cpp
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Needed by LLVM's CMake checks because this file defines multiple targets.
|
||||
set(LLVM_OPTIONAL_SOURCES ClangdToolMain.cpp)
|
||||
|
||||
add_clang_library(clangdMain
|
||||
add_clang_library(clangdMain STATIC
|
||||
ClangdMain.cpp
|
||||
Check.cpp
|
||||
)
|
||||
|
||||
@@ -14,12 +14,12 @@ set(LLVM_LINK_COMPONENTS
|
||||
# Needed by LLVM's CMake checks because this file defines multiple targets.
|
||||
set(LLVM_OPTIONAL_SOURCES Conversion.cpp XPCTransport.cpp)
|
||||
|
||||
add_clang_library(clangdXpcJsonConversions
|
||||
add_clang_library(clangdXpcJsonConversions STATIC
|
||||
Conversion.cpp
|
||||
LINK_LIBS clangDaemon clangdSupport
|
||||
)
|
||||
|
||||
add_clang_library(clangdXpcTransport
|
||||
add_clang_library(clangdXpcTransport STATIC
|
||||
XPCTransport.cpp
|
||||
LINK_LIBS clangDaemon clangdSupport clangdXpcJsonConversions
|
||||
DEPENDS ClangDriverOptions
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
set(LLVM_LINK_COMPONENTS Support)
|
||||
|
||||
add_clang_library(clangIncludeCleaner
|
||||
add_clang_library(clangIncludeCleaner STATIC
|
||||
Analysis.cpp
|
||||
IncludeSpeller.cpp
|
||||
FindHeaders.cpp
|
||||
|
||||
Reference in New Issue
Block a user