[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:
Thomas Fransham
2024-10-08 07:22:19 +01:00
committed by GitHub
parent e1a073c9d9
commit 1f2c08b33b
45 changed files with 46 additions and 46 deletions

View File

@@ -2,7 +2,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangApplyReplacements
add_clang_library(clangApplyReplacements STATIC
lib/Tooling/ApplyReplacements.cpp
DEPENDS

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangChangeNamespace
add_clang_library(clangChangeNamespace STATIC
ChangeNamespace.cpp
DEPENDS

View File

@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangDoc
add_clang_library(clangDoc STATIC
BitcodeReader.cpp
BitcodeWriter.cpp
ClangDoc.cpp

View File

@@ -2,7 +2,7 @@ set(LLVM_LINK_COMPONENTS
support
)
add_clang_library(clangIncludeFixer
add_clang_library(clangIncludeFixer STATIC
IncludeFixer.cpp
IncludeFixerContext.cpp
InMemorySymbolIndex.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(findAllSymbols
add_clang_library(findAllSymbols STATIC
FindAllSymbols.cpp
FindAllSymbolsAction.cpp
FindAllMacros.cpp

View File

@@ -1,4 +1,4 @@
add_clang_library(clangIncludeFixerPlugin
add_clang_library(clangIncludeFixerPlugin STATIC
IncludeFixerPlugin.cpp
LINK_LIBS

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangMove
add_clang_library(clangMove STATIC
Move.cpp
HelperDeclRefGraph.cpp

View File

@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangQuery
add_clang_library(clangQuery STATIC
Query.cpp
QueryParser.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
support
)
add_clang_library(clangReorderFields
add_clang_library(clangReorderFields STATIC
ReorderFieldsAction.cpp
DEPENDS

View File

@@ -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

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangTidyAbseilModule
add_clang_library(clangTidyAbseilModule STATIC
AbseilTidyModule.cpp
CleanupCtadCheck.cpp
DurationAdditionCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
support
)
add_clang_library(clangTidyAlteraModule
add_clang_library(clangTidyAlteraModule STATIC
AlteraTidyModule.cpp
IdDependentBackwardBranchCheck.cpp
KernelNameRestrictionCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangTidyAndroidModule
add_clang_library(clangTidyAndroidModule STATIC
AndroidTidyModule.cpp
CloexecAccept4Check.cpp
CloexecAcceptCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangTidyBoostModule
add_clang_library(clangTidyBoostModule STATIC
BoostTidyModule.cpp
UseRangesCheck.cpp
UseToStringCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangTidyBugproneModule
add_clang_library(clangTidyBugproneModule STATIC
ArgumentCommentCheck.cpp
AssertSideEffectCheck.cpp
AssignmentInIfConditionCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)
add_clang_library(clangTidyCERTModule
add_clang_library(clangTidyCERTModule STATIC
CERTTidyModule.cpp
CommandProcessorCheck.cpp
DefaultOperatorNewAlignmentCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyConcurrencyModule
add_clang_library(clangTidyConcurrencyModule STATIC
ConcurrencyTidyModule.cpp
MtUnsafeCheck.cpp
ThreadCanceltypeAsynchronousCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyCppCoreGuidelinesModule
add_clang_library(clangTidyCppCoreGuidelinesModule STATIC
AvoidCapturingLambdaCoroutinesCheck.cpp
AvoidConstOrRefDataMembersCheck.cpp
AvoidDoWhileCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyDarwinModule
add_clang_library(clangTidyDarwinModule STATIC
AvoidSpinlockCheck.cpp
DarwinTidyModule.cpp
DispatchOnceNonstaticCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyFuchsiaModule
add_clang_library(clangTidyFuchsiaModule STATIC
DefaultArgumentsCallsCheck.cpp
DefaultArgumentsDeclarationsCheck.cpp
FuchsiaTidyModule.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyGoogleModule
add_clang_library(clangTidyGoogleModule STATIC
AvoidCStyleCastsCheck.cpp
AvoidNSObjectNewCheck.cpp
AvoidThrowingObjCExceptionCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyHICPPModule
add_clang_library(clangTidyHICPPModule STATIC
ExceptionBaseclassCheck.cpp
HICPPTidyModule.cpp
IgnoredRemoveResultCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyLinuxKernelModule
add_clang_library(clangTidyLinuxKernelModule STATIC
LinuxKernelTidyModule.cpp
MustCheckErrsCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyLLVMModule
add_clang_library(clangTidyLLVMModule STATIC
HeaderGuardCheck.cpp
IncludeOrderCheck.cpp
LLVMTidyModule.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyLLVMLibcModule
add_clang_library(clangTidyLLVMLibcModule STATIC
CalleeNamespaceCheck.cpp
ImplementationInNamespaceCheck.cpp
InlineFunctionDeclCheck.cpp

View File

@@ -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

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyModernizeModule
add_clang_library(clangTidyModernizeModule STATIC
AvoidBindCheck.cpp
AvoidCArraysCheck.cpp
ConcatNestedNamespacesCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyMPIModule
add_clang_library(clangTidyMPIModule STATIC
BufferDerefCheck.cpp
MPITidyModule.cpp
TypeMismatchCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyObjCModule
add_clang_library(clangTidyObjCModule STATIC
AssertEquals.cpp
AvoidNSErrorInitCheck.cpp
DeallocInCategoryCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyOpenMPModule
add_clang_library(clangTidyOpenMPModule STATIC
ExceptionEscapeCheck.cpp
OpenMPTidyModule.cpp
UseDefaultNoneCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyPerformanceModule
add_clang_library(clangTidyPerformanceModule STATIC
AvoidEndlCheck.cpp
EnumSizeCheck.cpp
FasterStringFindCheck.cpp

View File

@@ -1,4 +1,4 @@
add_clang_library(clangTidyPlugin
add_clang_library(clangTidyPlugin STATIC
ClangTidyPlugin.cpp
LINK_LIBS

View File

@@ -4,7 +4,7 @@ set(LLVM_LINK_COMPONENTS
TargetParser
)
add_clang_library(clangTidyPortabilityModule
add_clang_library(clangTidyPortabilityModule STATIC
PortabilityTidyModule.cpp
RestrictSystemIncludesCheck.cpp
SIMDIntrinsicsCheck.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyReadabilityModule
add_clang_library(clangTidyReadabilityModule STATIC
AvoidConstParamsInDecls.cpp
AvoidNestedConditionalOperatorCheck.cpp
AvoidReturnWithVoidValueCheck.cpp

View File

@@ -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

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyUtils
add_clang_library(clangTidyUtils STATIC
Aliasing.cpp
ASTUtils.cpp
BracesAroundStatement.cpp

View File

@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
Support
)
add_clang_library(clangTidyZirconModule
add_clang_library(clangTidyZirconModule STATIC
TemporaryObjectsCheck.cpp
ZirconTidyModule.cpp

View File

@@ -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

View File

@@ -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

View File

@@ -1,4 +1,4 @@
add_clang_library(clangdRemoteMarshalling
add_clang_library(clangdRemoteMarshalling STATIC
Marshalling.cpp
LINK_LIBS

View File

@@ -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

View File

@@ -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

View File

@@ -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
)

View File

@@ -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

View File

@@ -1,6 +1,6 @@
set(LLVM_LINK_COMPONENTS Support)
add_clang_library(clangIncludeCleaner
add_clang_library(clangIncludeCleaner STATIC
Analysis.cpp
IncludeSpeller.cpp
FindHeaders.cpp