https://github.com/localspook updated 
https://github.com/llvm/llvm-project/pull/173518

>From 17a0986783d5292df728674e3b0b844023b57d38 Mon Sep 17 00:00:00 2001
From: Victor Chernyakin <[email protected]>
Date: Wed, 24 Dec 2025 20:22:44 -0700
Subject: [PATCH 1/2] TMP

---
 clang-tools-extra/clang-tidy/CMakeLists.txt   | 52 ++++++-------------
 .../clang-tidy/abseil/CMakeLists.txt          | 27 +---------
 .../clang-tidy/altera/CMakeLists.txt          | 23 +-------
 .../clang-tidy/android/CMakeLists.txt         | 23 +-------
 .../clang-tidy/boost/CMakeLists.txt           | 23 +-------
 .../clang-tidy/bugprone/CMakeLists.txt        | 29 +----------
 .../clang-tidy/cert/CMakeLists.txt            | 30 +----------
 .../clang-tidy/concurrency/CMakeLists.txt     | 25 +--------
 .../cppcoreguidelines/CMakeLists.txt          | 31 +----------
 .../clang-tidy/custom/CMakeLists.txt          | 47 ++++-------------
 .../clang-tidy/darwin/CMakeLists.txt          | 24 +--------
 .../clang-tidy/fuchsia/CMakeLists.txt         | 25 +--------
 .../clang-tidy/google/CMakeLists.txt          | 25 +--------
 .../clang-tidy/hicpp/CMakeLists.txt           | 31 +----------
 .../clang-tidy/linuxkernel/CMakeLists.txt     | 23 +-------
 .../clang-tidy/llvm/CMakeLists.txt            | 26 +---------
 .../clang-tidy/llvmlibc/CMakeLists.txt        | 25 +--------
 .../clang-tidy/misc/CMakeLists.txt            | 35 ++-----------
 .../clang-tidy/modernize/CMakeLists.txt       | 25 +--------
 .../clang-tidy/mpi/CMakeLists.txt             | 26 +---------
 .../clang-tidy/objc/CMakeLists.txt            | 23 +-------
 .../clang-tidy/openmp/CMakeLists.txt          | 21 +-------
 .../clang-tidy/performance/CMakeLists.txt     | 24 +--------
 .../clang-tidy/plugin/CMakeLists.txt          | 20 +------
 .../clang-tidy/portability/CMakeLists.txt     | 25 +--------
 .../clang-tidy/readability/CMakeLists.txt     | 25 +--------
 .../clang-tidy/tool/CMakeLists.txt            |  2 -
 .../clang-tidy/utils/CMakeLists.txt           | 25 +--------
 .../clang-tidy/zircon/CMakeLists.txt          | 24 +--------
 clang-tools-extra/clangd/CMakeLists.txt       |  7 ++-
 clang-tools-extra/clangd/tool/CMakeLists.txt  |  1 -
 .../clangd/unittests/CMakeLists.txt           |  1 -
 .../unittests/clang-tidy/CMakeLists.txt       | 15 ------
 33 files changed, 57 insertions(+), 731 deletions(-)

diff --git a/clang-tools-extra/clang-tidy/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/CMakeLists.txt
index 153356245cfd1..23a0d72ae20d1 100644
--- a/clang-tools-extra/clang-tidy/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/CMakeLists.txt
@@ -1,12 +1,14 @@
 set(LLVM_LINK_COMPONENTS
   FrontendOpenMP
   Support
+  TargetParser
   )
 
 configure_file(
   ${CMAKE_CURRENT_SOURCE_DIR}/clang-tidy-config.h.cmake
   ${CMAKE_CURRENT_BINARY_DIR}/clang-tidy-config.h)
 include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
+include_directories(BEFORE 
"${CMAKE_CURRENT_SOURCE_DIR}/../include-cleaner/include")
 
 add_clang_library(clangTidy STATIC
   ClangTidy.cpp
@@ -19,6 +21,9 @@ add_clang_library(clangTidy STATIC
   GlobList.cpp
   NoLintDirectiveHandler.cpp
 
+  LINK_LIBS
+  clangQuery
+
   DEPENDS
   ClangSACheckers
   omp_gen
@@ -30,19 +35,26 @@ clang_target_link_libraries(clangTidy
   clangAST
   clangASTMatchers
   clangAnalysis
+  clangAnalysisFlowSensitive
+  clangAnalysisFlowSensitiveModels
   clangBasic
   clangFormat
   clangFrontend
   clangLex
   clangRewrite
+  clangSema
   clangSerialization
   clangTooling
   clangToolingCore
+  clangToolingInclusions
+  clangToolingInclusionsStdlib
+  clangTransformer
   )
 
 if(CLANG_TIDY_ENABLE_STATIC_ANALYZER)
   clang_target_link_libraries(clangTidy
     PRIVATE
+    clangStaticAnalyzerCheckers
     clangStaticAnalyzerCore
     clangStaticAnalyzerFrontend
   )
@@ -58,7 +70,9 @@ add_subdirectory(bugprone)
 add_subdirectory(cert)
 add_subdirectory(concurrency)
 add_subdirectory(cppcoreguidelines)
-add_subdirectory(custom)
+if(CLANG_TIDY_ENABLE_QUERY_BASED_CUSTOM_CHECKS)
+  add_subdirectory(custom)
+endif()
 add_subdirectory(darwin)
 add_subdirectory(fuchsia)
 add_subdirectory(google)
@@ -77,42 +91,8 @@ add_subdirectory(performance)
 add_subdirectory(portability)
 add_subdirectory(readability)
 add_subdirectory(zircon)
-set(ALL_CLANG_TIDY_CHECKS
-  clangTidyAndroidModule
-  clangTidyAbseilModule
-  clangTidyAlteraModule
-  clangTidyBoostModule
-  clangTidyBugproneModule
-  clangTidyCERTModule
-  clangTidyConcurrencyModule
-  clangTidyCppCoreGuidelinesModule
-  clangTidyDarwinModule
-  clangTidyFuchsiaModule
-  clangTidyGoogleModule
-  clangTidyHICPPModule
-  clangTidyLinuxKernelModule
-  clangTidyLLVMModule
-  clangTidyLLVMLibcModule
-  clangTidyMiscModule
-  clangTidyModernizeModule
-  clangTidyObjCModule
-  clangTidyOpenMPModule
-  clangTidyPerformanceModule
-  clangTidyPortabilityModule
-  clangTidyReadabilityModule
-  clangTidyZirconModule
-  )
-
-if(CLANG_TIDY_ENABLE_QUERY_BASED_CUSTOM_CHECKS)
-  list(APPEND ALL_CLANG_TIDY_CHECKS clangTidyCustomModule)
-endif()
-if(CLANG_TIDY_ENABLE_STATIC_ANALYZER)
-  list(APPEND ALL_CLANG_TIDY_CHECKS clangTidyMPIModule)
-endif()
-set(ALL_CLANG_TIDY_CHECKS ${ALL_CLANG_TIDY_CHECKS} PARENT_SCOPE)
 
-# Other subtargets. These may reference ALL_CLANG_TIDY_CHECKS
-# and must be below its definition.
+# Other directories (not checks).
 add_subdirectory(plugin)
 add_subdirectory(tool)
 add_subdirectory(utils)
diff --git a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
index 910e87615d017..c579d65c682bd 100644
--- a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  support
-  FrontendOpenMP
-  )
-
-add_clang_library(clangTidyAbseilModule STATIC
+target_sources(clangTidy PRIVATE
   AbseilTidyModule.cpp
   CleanupCtadCheck.cpp
   DurationAdditionCheck.cpp
@@ -26,24 +21,4 @@ add_clang_library(clangTidyAbseilModule STATIC
   TimeSubtractionCheck.cpp
   UpgradeDurationConversionsCheck.cpp
   UncheckedStatusOrAccessCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyAbseilModule
-  PRIVATE
-  clangAnalysisFlowSensitive
-  clangAnalysisFlowSensitiveModels
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
-  clangTransformer
   )
diff --git a/clang-tools-extra/clang-tidy/altera/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
index 5d9e7b3a023bb..0331ea3a14ee9 100644
--- a/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
@@ -1,29 +1,8 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  support
-  )
-
-add_clang_library(clangTidyAlteraModule STATIC
+target_sources(clangTidy PRIVATE
   AlteraTidyModule.cpp
   IdDependentBackwardBranchCheck.cpp
   KernelNameRestrictionCheck.cpp
   SingleWorkItemBarrierCheck.cpp
   StructPackAlignCheck.cpp
   UnrollLoopsCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyAlteraModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/android/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/android/CMakeLists.txt
index b461730ef1418..1feae2ed90a8f 100644
--- a/clang-tools-extra/clang-tidy/android/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/android/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  support
-  FrontendOpenMP
-  )
-
-add_clang_library(clangTidyAndroidModule STATIC
+target_sources(clangTidy PRIVATE
   AndroidTidyModule.cpp
   CloexecAccept4Check.cpp
   CloexecAcceptCheck.cpp
@@ -21,20 +16,4 @@ add_clang_library(clangTidyAndroidModule STATIC
   CloexecPipe2Check.cpp
   CloexecSocketCheck.cpp
   ComparisonInTempFailureRetryCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyAndroidModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
index 9032771ec2fdc..b5f93976f2739 100644
--- a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
@@ -1,26 +1,5 @@
-set(LLVM_LINK_COMPONENTS
-  support
-  FrontendOpenMP
-  )
-
-add_clang_library(clangTidyBoostModule STATIC
+target_sources(clangTidy PRIVATE
   BoostTidyModule.cpp
   UseRangesCheck.cpp
   UseToStringCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyBoostModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
index db1256d91d311..009583d3d10f4 100644
--- a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  support
-  FrontendOpenMP
-  )
-
-add_clang_library(clangTidyBugproneModule STATIC
+target_sources(clangTidy PRIVATE
   ArgumentCommentCheck.cpp
   AssertSideEffectCheck.cpp
   AssignmentInIfConditionCheck.cpp
@@ -113,26 +108,4 @@ add_clang_library(clangTidyBugproneModule STATIC
   UnusedReturnValueCheck.cpp
   UseAfterMoveCheck.cpp
   VirtualNearMissCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyBugproneModule
-  PRIVATE
-  clangAnalysis
-  clangAnalysisFlowSensitive
-  clangAnalysisFlowSensitiveModels
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangSema
-  clangTooling
-  clangTransformer
   )
diff --git a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
index 313790374788d..1bdacd73c7db4 100644
--- a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
@@ -1,31 +1,3 @@
-set(LLVM_LINK_COMPONENTS
-  support
-  FrontendOpenMP
-  )
-
-add_clang_library(clangTidyCERTModule STATIC
+target_sources(clangTidy PRIVATE
   CERTTidyModule.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyBugproneModule
-  clangTidyConcurrencyModule
-  clangTidyGoogleModule
-  clangTidyMiscModule
-  clangTidyModernizeModule
-  clangTidyPerformanceModule
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyCERTModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
index 91c6cedabcc80..9b8f87149e13e 100644
--- a/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
@@ -1,28 +1,5 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyConcurrencyModule STATIC
+target_sources(clangTidy PRIVATE
   ConcurrencyTidyModule.cpp
   MtUnsafeCheck.cpp
   ThreadCanceltypeAsynchronousCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyConcurrencyModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangSerialization
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
index 4b3330d7e14c1..1a521aee1abee 100644
--- a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyCppCoreGuidelinesModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidCapturingLambdaCoroutinesCheck.cpp
   AvoidConstOrRefDataMembersCheck.cpp
   AvoidDoWhileCheck.cpp
@@ -36,28 +31,4 @@ add_clang_library(clangTidyCppCoreGuidelinesModule STATIC
   SpecialMemberFunctionsCheck.cpp
   UseEnumClassCheck.cpp
   VirtualClassDestructorCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyBugproneModule
-  clangTidyMiscModule
-  clangTidyModernizeModule
-  clangTidyPerformanceModule
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyCppCoreGuidelinesModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangSerialization
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/custom/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
index 1af25a900113c..eba4eec00033c 100644
--- a/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
@@ -1,38 +1,9 @@
-if(CLANG_TIDY_ENABLE_QUERY_BASED_CUSTOM_CHECKS)
-  set(LLVM_LINK_COMPONENTS
-    FrontendOpenMP
-    support
-  )
-
-  add_clang_library(clangTidyCustomModule STATIC
-    CustomTidyModule.cpp
-    QueryCheck.cpp
-
-    LINK_LIBS
-    clangQuery
-    clangTidy
-    clangTidyBugproneModule
-    clangTidyMiscModule
-    clangTidyModernizeModule
-    clangTidyPerformanceModule
-    clangTidyReadabilityModule
-    clangTidyUtils
-
-    DEPENDS
-    omp_gen
-    ClangDriverOptions
-  )
-
-  clang_target_link_libraries(clangTidyCustomModule
-    PRIVATE
-    clangAnalysis
-    clangAST
-    clangASTMatchers
-    clangBasic
-    clangDynamicASTMatchers
-    clangFrontend
-    clangLex
-    clangSerialization
-    clangTooling
-  )
-endif()
+target_sources(clangTidy PRIVATE
+  CustomTidyModule.cpp
+  QueryCheck.cpp
+)
+
+clang_target_link_libraries(clangTidy
+  PRIVATE
+  clangDynamicASTMatchers
+)
diff --git a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
index d19e8144bcfa3..264a4a3cc4413 100644
--- a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
@@ -1,27 +1,5 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyDarwinModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidSpinlockCheck.cpp
   DarwinTidyModule.cpp
   DispatchOnceNonstaticCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyDarwinModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
index dfd23c3bb48b0..a087065638941 100644
--- a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyFuchsiaModule STATIC
+target_sources(clangTidy PRIVATE
   DefaultArgumentsCallsCheck.cpp
   DefaultArgumentsDeclarationsCheck.cpp
   FuchsiaTidyModule.cpp
@@ -12,22 +7,4 @@ add_clang_library(clangTidyFuchsiaModule STATIC
   TemporaryObjectsCheck.cpp
   TrailingReturnCheck.cpp
   VirtualInheritanceCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyGoogleModule
-  clangTidyMiscModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyFuchsiaModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/google/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/google/CMakeLists.txt
index 982a188e8e808..9d5eee8c1b191 100644
--- a/clang-tools-extra/clang-tidy/google/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/google/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyGoogleModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidNSObjectNewCheck.cpp
   AvoidThrowingObjCExceptionCheck.cpp
   AvoidUnderscoreInGoogletestNameCheck.cpp
@@ -21,22 +16,4 @@ add_clang_library(clangTidyGoogleModule STATIC
   UnnamedNamespaceInHeaderCheck.cpp
   UpgradeGoogletestCaseCheck.cpp
   UsingNamespaceDirectiveCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyModernizeModule
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyGoogleModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
index 2f31d168e65c0..1841aaa63e874 100644
--- a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
@@ -1,37 +1,8 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyHICPPModule STATIC
+target_sources(clangTidy PRIVATE
   ExceptionBaseclassCheck.cpp
   HICPPTidyModule.cpp
   IgnoredRemoveResultCheck.cpp
   MultiwayPathsCoveredCheck.cpp
   NoAssemblerCheck.cpp
   SignedBitwiseCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyBugproneModule
-  clangTidyCppCoreGuidelinesModule
-  clangTidyGoogleModule
-  clangTidyMiscModule
-  clangTidyModernizeModule
-  clangTidyPerformanceModule
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyHICPPModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangSerialization
   )
diff --git a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
index e7e2dcf9a82fe..d9e032d70a1dd 100644
--- a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
@@ -1,25 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyLinuxKernelModule STATIC
+target_sources(clangTidy PRIVATE
   LinuxKernelTidyModule.cpp
   MustCheckErrsCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyLinuxKernelModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
index 78ef0444305ff..00c9a8d357747 100644
--- a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyLLVMModule STATIC
+target_sources(clangTidy PRIVATE
   HeaderGuardCheck.cpp
   IncludeOrderCheck.cpp
   LLVMTidyModule.cpp
@@ -13,23 +8,4 @@ add_clang_library(clangTidyLLVMModule STATIC
   TwineLocalCheck.cpp
   UseNewMLIROpBuilderCheck.cpp
   UseRangesCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyLLVMModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
-  clangTransformer
   )
diff --git a/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
index eaeddf4f62857..48600c78935f0 100644
--- a/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
@@ -1,30 +1,7 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyLLVMLibcModule STATIC
+target_sources(clangTidy PRIVATE
   CalleeNamespaceCheck.cpp
   ImplementationInNamespaceCheck.cpp
   InlineFunctionDeclCheck.cpp
   LLVMLibcTidyModule.cpp
   RestrictSystemLibcHeadersCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyPortabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyLLVMLibcModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
index 86643eb28d65a..4e4d19354bb6e 100644
--- a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
@@ -1,14 +1,7 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
 setup_host_tool(clang-tidy-confusable-chars-gen 
CLANG_TIDY_CONFUSABLE_CHARS_GEN clang_tidy_confusable_chars_gen 
clang_tidy_confusable_chars_gen_target)
 
 add_subdirectory(ConfusableTable)
 
-include_directories(BEFORE 
"${CMAKE_CURRENT_SOURCE_DIR}/../../include-cleaner/include")
-
 add_custom_command(
     OUTPUT Confusables.inc
     COMMAND ${clang_tidy_confusable_chars_gen} 
${CMAKE_CURRENT_SOURCE_DIR}/ConfusableTable/confusables.txt 
${CMAKE_CURRENT_BINARY_DIR}/Confusables.inc
@@ -16,8 +9,10 @@ add_custom_command(
 
 add_custom_target(genconfusable DEPENDS Confusables.inc)
 set_target_properties(genconfusable PROPERTIES FOLDER "Clang Tools 
Extra/Sourcegenning")
+add_dependencies(clangTidy genconfusable)
+target_include_directories(clangTidy PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
 
-add_clang_library(clangTidyMiscModule STATIC
+target_sources(clangTidy PRIVATE
   ConstCorrectnessCheck.cpp
   CoroutineHostileRAIICheck.cpp
   DefinitionsInHeadersCheck.cpp
@@ -45,31 +40,9 @@ add_clang_library(clangTidyMiscModule STATIC
   UnusedUsingDeclsCheck.cpp
   UseAnonymousNamespaceCheck.cpp
   UseInternalLinkageCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  genconfusable
-  ClangDriverOptions
   )
 
-clang_target_link_libraries(clangTidyMiscModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangFormat
-  clangLex
-  clangSerialization
-  clangTooling
-  clangToolingInclusions
-  clangToolingInclusionsStdlib
-  )
-target_link_libraries(clangTidyMiscModule
+target_link_libraries(clangTidy
   PRIVATE
   clangIncludeCleaner
   )
diff --git a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
index 488c359661018..294e5e2fabd9d 100644
--- a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyModernizeModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidBindCheck.cpp
   AvoidCArraysCheck.cpp
   AvoidCStyleCastCheck.cpp
@@ -54,22 +49,4 @@ add_clang_library(clangTidyModernizeModule STATIC
   UseTransparentFunctorsCheck.cpp
   UseUncaughtExceptionsCheck.cpp
   UseUsingCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyReadabilityModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyModernizeModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
index 1232a28c7cf7b..5da8cb41bbdbe 100644
--- a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
@@ -1,29 +1,5 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyMPIModule STATIC
+target_sources(clangTidy PRIVATE
   BufferDerefCheck.cpp
   MPITidyModule.cpp
   TypeMismatchCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyMPIModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
-  clangStaticAnalyzerCheckers
   )
diff --git a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
index 2908d11e2a018..19b946120410f 100644
--- a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyObjCModule STATIC
+target_sources(clangTidy PRIVATE
   AssertEqualsCheck.cpp
   AvoidNSErrorInitCheck.cpp
   DeallocInCategoryCheck.cpp
@@ -14,20 +9,4 @@ add_clang_library(clangTidyObjCModule STATIC
   ObjCTidyModule.cpp
   PropertyDeclarationCheck.cpp
   SuperSelfCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyObjCModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
index acee08a48aeff..34f7bd972c1ed 100644
--- a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
@@ -1,24 +1,5 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyOpenMPModule STATIC
+target_sources(clangTidy PRIVATE
   ExceptionEscapeCheck.cpp
   OpenMPTidyModule.cpp
   UseDefaultNoneCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  )
-
-clang_target_link_libraries(clangTidyOpenMPModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
   )
diff --git a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
index 9a2f90069edbf..e3df7710cf8ff 100644
--- a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyPerformanceModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidEndlCheck.cpp
   EnumSizeCheck.cpp
   FasterStringFindCheck.cpp
@@ -25,21 +20,4 @@ add_clang_library(clangTidyPerformanceModule STATIC
   TypePromotionInMathFnCheck.cpp
   UnnecessaryCopyInitializationCheck.cpp
   UnnecessaryValueParamCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyPerformanceModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangAnalysis
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
index aff2018b693b1..7efa1e716343d 100644
--- a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
@@ -1,21 +1,3 @@
-add_clang_library(clangTidyPlugin STATIC
+target_sources(clangTidy PRIVATE
   ClangTidyPlugin.cpp
-
-  LINK_LIBS
-  clangTidy
-  ${ALL_CLANG_TIDY_CHECKS}
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyPlugin
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangFrontend
-  clangSema
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
index 73d74a550afc0..04f98c32deaec 100644
--- a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
@@ -1,31 +1,8 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  TargetParser
-  )
-
-add_clang_library(clangTidyPortabilityModule STATIC
+target_sources(clangTidy PRIVATE
   AvoidPragmaOnceCheck.cpp
   PortabilityTidyModule.cpp
   RestrictSystemIncludesCheck.cpp
   SIMDIntrinsicsCheck.cpp
   StdAllocatorConstCheck.cpp
   TemplateVirtualMemberFunctionCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyPortabilityModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
index 161a0d96caf41..b665a033cbfb9 100644
--- a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyReadabilityModule STATIC
+target_sources(clangTidy PRIVATE
   AmbiguousSmartptrResetCallCheck.cpp
   AvoidConstParamsInDeclsCheck.cpp
   AvoidNestedConditionalOperatorCheck.cpp
@@ -62,22 +57,4 @@ add_clang_library(clangTidyReadabilityModule STATIC
   UseAnyOfAllOfCheck.cpp
   UseConcisePreprocessorDirectivesCheck.cpp
   UseStdMinMaxCheck.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyReadabilityModule
-  PRIVATE
-  clangAnalysis
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangTooling
   )
diff --git a/clang-tools-extra/clang-tidy/tool/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/tool/CMakeLists.txt
index 0d4501d1eac06..9732531f1ef8c 100644
--- a/clang-tools-extra/clang-tidy/tool/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/tool/CMakeLists.txt
@@ -15,7 +15,6 @@ add_clang_library(clangTidyMain STATIC
 
   LINK_LIBS
   clangTidy
-  ${ALL_CLANG_TIDY_CHECKS}
 
   DEPENDS
   omp_gen
@@ -55,7 +54,6 @@ target_link_libraries(clang-tidy
   PRIVATE
   clangTidy
   clangTidyMain
-  ${ALL_CLANG_TIDY_CHECKS}
   )
 
 if(CLANG_PLUGIN_SUPPORT)
diff --git a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
index b83a1e9a77182..8b0e678c2428c 100644
--- a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
@@ -1,9 +1,4 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyUtils STATIC
+target_sources(clangTidy PRIVATE
   Aliasing.cpp
   ASTUtils.cpp
   BracesAroundStatement.cpp
@@ -27,22 +22,4 @@ add_clang_library(clangTidyUtils STATIC
   TypeTraits.cpp
   UseRangesCheck.cpp
   UsingInserter.cpp
-
-  LINK_LIBS
-  clangTidy
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyUtils
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
-  clangSema
-  clangTooling
-  clangTransformer
   )
diff --git a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
index bc4ab1f58c83d..fc5dde5ec1127 100644
--- a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
@@ -1,25 +1,3 @@
-set(LLVM_LINK_COMPONENTS
-  FrontendOpenMP
-  Support
-  )
-
-add_clang_library(clangTidyZirconModule STATIC
+target_sources(clangTidy PRIVATE
   ZirconTidyModule.cpp
-
-  LINK_LIBS
-  clangTidy
-  clangTidyFuchsiaModule
-  clangTidyUtils
-
-  DEPENDS
-  omp_gen
-  ClangDriverOptions
-  )
-
-clang_target_link_libraries(clangTidyZirconModule
-  PRIVATE
-  clangAST
-  clangASTMatchers
-  clangBasic
-  clangLex
   )
diff --git a/clang-tools-extra/clangd/CMakeLists.txt 
b/clang-tools-extra/clangd/CMakeLists.txt
index d7ec853af862f..726b22aea5470 100644
--- a/clang-tools-extra/clangd/CMakeLists.txt
+++ b/clang-tools-extra/clangd/CMakeLists.txt
@@ -185,13 +185,12 @@ target_link_libraries(clangDaemon
 
   clangIncludeCleaner
   clangTidy
-  clangTidyUtils
 
   clangdSupport
   )
-if(CLANGD_TIDY_CHECKS)
-  target_link_libraries(clangDaemon PRIVATE ${ALL_CLANG_TIDY_CHECKS})
-endif()
+#if(CLANGD_TIDY_CHECKS)
+#  target_link_libraries(clangDaemon PRIVATE ${ALL_CLANG_TIDY_CHECKS})
+#endif()
 
 add_subdirectory(refactor/tweaks)
 if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
diff --git a/clang-tools-extra/clangd/tool/CMakeLists.txt 
b/clang-tools-extra/clangd/tool/CMakeLists.txt
index 850a82833e444..c4b070b5ee3da 100644
--- a/clang-tools-extra/clangd/tool/CMakeLists.txt
+++ b/clang-tools-extra/clangd/tool/CMakeLists.txt
@@ -33,7 +33,6 @@ clang_target_link_libraries(clangdMain
 target_link_libraries(clangdMain
   PRIVATE
   clangTidy
-  clangTidyUtils
 
   clangDaemon
   clangdRemoteIndex
diff --git a/clang-tools-extra/clangd/unittests/CMakeLists.txt 
b/clang-tools-extra/clangd/unittests/CMakeLists.txt
index 2b1b6e079be38..49c2834af5d31 100644
--- a/clang-tools-extra/clangd/unittests/CMakeLists.txt
+++ b/clang-tools-extra/clangd/unittests/CMakeLists.txt
@@ -182,7 +182,6 @@ target_link_libraries(ClangdTests
   clangIncludeCleaner
   clangTesting
   clangTidy
-  clangTidyUtils
   clangdSupport
   )
 
diff --git a/clang-tools-extra/unittests/clang-tidy/CMakeLists.txt 
b/clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
index 64bf47e61736c..dd4e04f50d7ef 100644
--- a/clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
+++ b/clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
@@ -53,21 +53,6 @@ clang_target_link_libraries(ClangTidyTests
 target_link_libraries(ClangTidyTests
   PRIVATE
   clangTidy
-  clangTidyAndroidModule
-  clangTidyGoogleModule
-  clangTidyMiscModule
-  clangTidyLLVMModule
-  clangTidyModernizeModule
-  clangTidyObjCModule
-  clangTidyReadabilityModule
-  clangTidyUtils
   LLVMTestingAnnotations
   LLVMTestingSupport
   )
-
-if(CLANG_TIDY_ENABLE_QUERY_BASED_CUSTOM_CHECKS)
-  target_link_libraries(ClangTidyTests
-    PRIVATE
-    clangTidyCustomModule
-    )
-endif()

>From 8e54396bbbfe9268383c63c0a49ef87fa9308bd1 Mon Sep 17 00:00:00 2001
From: Victor Chernyakin <[email protected]>
Date: Wed, 24 Dec 2025 22:08:27 -0700
Subject: [PATCH 2/2] TMP 2

---
 clang-tools-extra/clang-tidy/CMakeLists.txt   | 21 ++++++++++++++++++-
 .../clang-tidy/abseil/CMakeLists.txt          |  2 +-
 .../clang-tidy/altera/CMakeLists.txt          |  2 +-
 .../clang-tidy/android/CMakeLists.txt         |  2 +-
 .../clang-tidy/boost/CMakeLists.txt           |  2 +-
 .../clang-tidy/bugprone/CMakeLists.txt        |  2 +-
 .../clang-tidy/cert/CMakeLists.txt            |  2 +-
 .../clang-tidy/concurrency/CMakeLists.txt     |  2 +-
 .../cppcoreguidelines/CMakeLists.txt          |  2 +-
 .../clang-tidy/custom/CMakeLists.txt          |  7 +------
 .../clang-tidy/darwin/CMakeLists.txt          |  2 +-
 .../clang-tidy/fuchsia/CMakeLists.txt         |  2 +-
 .../clang-tidy/google/CMakeLists.txt          |  2 +-
 .../clang-tidy/hicpp/CMakeLists.txt           |  2 +-
 .../clang-tidy/linuxkernel/CMakeLists.txt     |  2 +-
 .../clang-tidy/llvm/CMakeLists.txt            |  2 +-
 .../clang-tidy/llvmlibc/CMakeLists.txt        |  2 +-
 .../clang-tidy/misc/CMakeLists.txt            | 17 +--------------
 .../clang-tidy/modernize/CMakeLists.txt       |  2 +-
 .../clang-tidy/mpi/CMakeLists.txt             |  2 +-
 .../clang-tidy/objc/CMakeLists.txt            |  2 +-
 .../clang-tidy/openmp/CMakeLists.txt          |  2 +-
 .../clang-tidy/performance/CMakeLists.txt     |  2 +-
 .../clang-tidy/plugin/CMakeLists.txt          |  2 +-
 .../clang-tidy/portability/CMakeLists.txt     |  2 +-
 .../clang-tidy/readability/CMakeLists.txt     |  2 +-
 .../clang-tidy/utils/CMakeLists.txt           |  2 +-
 .../clang-tidy/zircon/CMakeLists.txt          |  2 +-
 28 files changed, 47 insertions(+), 48 deletions(-)

diff --git a/clang-tools-extra/clang-tidy/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/CMakeLists.txt
index 23a0d72ae20d1..0603d7f01fab9 100644
--- a/clang-tools-extra/clang-tidy/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/CMakeLists.txt
@@ -10,7 +10,7 @@ configure_file(
 include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
 include_directories(BEFORE 
"${CMAKE_CURRENT_SOURCE_DIR}/../include-cleaner/include")
 
-add_clang_library(clangTidy STATIC
+set(CLANG_TIDY_SOURCES
   ClangTidy.cpp
   ClangTidyCheck.cpp
   ClangTidyModule.cpp
@@ -20,6 +20,10 @@ add_clang_library(clangTidy STATIC
   ExpandModularHeadersPPCallbacks.cpp
   GlobList.cpp
   NoLintDirectiveHandler.cpp
+  )
+
+add_clang_library(clangTidy STATIC
+  ${CLANG_TIDY_SOURCES}
 
   LINK_LIBS
   clangQuery
@@ -38,6 +42,7 @@ clang_target_link_libraries(clangTidy
   clangAnalysisFlowSensitive
   clangAnalysisFlowSensitiveModels
   clangBasic
+  clangDynamicASTMatchers
   clangFormat
   clangFrontend
   clangLex
@@ -51,6 +56,11 @@ clang_target_link_libraries(clangTidy
   clangTransformer
   )
 
+target_link_libraries(clangTidy
+  PRIVATE
+  clangIncludeCleaner
+  )
+
 if(CLANG_TIDY_ENABLE_STATIC_ANALYZER)
   clang_target_link_libraries(clangTidy
     PRIVATE
@@ -97,6 +107,15 @@ add_subdirectory(plugin)
 add_subdirectory(tool)
 add_subdirectory(utils)
 
+add_custom_command(
+    OUTPUT Confusables.inc
+    COMMAND ${clang_tidy_confusable_chars_gen} 
${CMAKE_CURRENT_SOURCE_DIR}/ConfusableTable/confusables.txt 
${CMAKE_CURRENT_BINARY_DIR}/Confusables.inc
+    DEPENDS ${clang_tidy_confusable_chars_gen_target} 
ConfusableTable/confusables.txt)
+
+add_custom_target(genconfusable DEPENDS Confusables.inc)
+set_target_properties(genconfusable PROPERTIES FOLDER "Clang Tools 
Extra/Sourcegenning")
+add_dependencies(clangTidy genconfusable)
+
 if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
   install(DIRECTORY .
     DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/clang-tidy"
diff --git a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
index c579d65c682bd..1d34b3dd34596 100644
--- a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AbseilTidyModule.cpp
   CleanupCtadCheck.cpp
   DurationAdditionCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/altera/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
index 0331ea3a14ee9..8313cff73ee95 100644
--- a/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/altera/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AlteraTidyModule.cpp
   IdDependentBackwardBranchCheck.cpp
   KernelNameRestrictionCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/android/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/android/CMakeLists.txt
index 1feae2ed90a8f..8dcbeac7cf48e 100644
--- a/clang-tools-extra/clang-tidy/android/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/android/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AndroidTidyModule.cpp
   CloexecAccept4Check.cpp
   CloexecAcceptCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
index b5f93976f2739..f854a8835889f 100644
--- a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   BoostTidyModule.cpp
   UseRangesCheck.cpp
   UseToStringCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
index 009583d3d10f4..e166c8003d002 100644
--- a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ArgumentCommentCheck.cpp
   AssertSideEffectCheck.cpp
   AssignmentInIfConditionCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
index 1bdacd73c7db4..79233a8a6818e 100644
--- a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt
@@ -1,3 +1,3 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   CERTTidyModule.cpp
   )
diff --git a/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
index 9b8f87149e13e..4c12268e70fe1 100644
--- a/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ConcurrencyTidyModule.cpp
   MtUnsafeCheck.cpp
   ThreadCanceltypeAsynchronousCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
index 1a521aee1abee..0661422808f65 100644
--- a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidCapturingLambdaCoroutinesCheck.cpp
   AvoidConstOrRefDataMembersCheck.cpp
   AvoidDoWhileCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/custom/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
index eba4eec00033c..33fed31a87128 100644
--- a/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/custom/CMakeLists.txt
@@ -1,9 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   CustomTidyModule.cpp
   QueryCheck.cpp
 )
-
-clang_target_link_libraries(clangTidy
-  PRIVATE
-  clangDynamicASTMatchers
-)
diff --git a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
index 264a4a3cc4413..9781b282b3b5d 100644
--- a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidSpinlockCheck.cpp
   DarwinTidyModule.cpp
   DispatchOnceNonstaticCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
index a087065638941..e2b745c726748 100644
--- a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   DefaultArgumentsCallsCheck.cpp
   DefaultArgumentsDeclarationsCheck.cpp
   FuchsiaTidyModule.cpp
diff --git a/clang-tools-extra/clang-tidy/google/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/google/CMakeLists.txt
index 9d5eee8c1b191..5aac369e027a7 100644
--- a/clang-tools-extra/clang-tidy/google/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/google/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidNSObjectNewCheck.cpp
   AvoidThrowingObjCExceptionCheck.cpp
   AvoidUnderscoreInGoogletestNameCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
index 1841aaa63e874..037ffc69ee6dc 100644
--- a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ExceptionBaseclassCheck.cpp
   HICPPTidyModule.cpp
   IgnoredRemoveResultCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
index d9e032d70a1dd..259d5936f7cff 100644
--- a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   LinuxKernelTidyModule.cpp
   MustCheckErrsCheck.cpp
   )
diff --git a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
index 00c9a8d357747..2da3d809e87d1 100644
--- a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   HeaderGuardCheck.cpp
   IncludeOrderCheck.cpp
   LLVMTidyModule.cpp
diff --git a/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
index 48600c78935f0..6609a611f4e10 100644
--- a/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   CalleeNamespaceCheck.cpp
   ImplementationInNamespaceCheck.cpp
   InlineFunctionDeclCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
index 4e4d19354bb6e..2d25729d5b645 100644
--- a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt
@@ -2,17 +2,7 @@ setup_host_tool(clang-tidy-confusable-chars-gen 
CLANG_TIDY_CONFUSABLE_CHARS_GEN
 
 add_subdirectory(ConfusableTable)
 
-add_custom_command(
-    OUTPUT Confusables.inc
-    COMMAND ${clang_tidy_confusable_chars_gen} 
${CMAKE_CURRENT_SOURCE_DIR}/ConfusableTable/confusables.txt 
${CMAKE_CURRENT_BINARY_DIR}/Confusables.inc
-    DEPENDS ${clang_tidy_confusable_chars_gen_target} 
ConfusableTable/confusables.txt)
-
-add_custom_target(genconfusable DEPENDS Confusables.inc)
-set_target_properties(genconfusable PROPERTIES FOLDER "Clang Tools 
Extra/Sourcegenning")
-add_dependencies(clangTidy genconfusable)
-target_include_directories(clangTidy PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
-
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ConstCorrectnessCheck.cpp
   CoroutineHostileRAIICheck.cpp
   DefinitionsInHeadersCheck.cpp
@@ -41,8 +31,3 @@ target_sources(clangTidy PRIVATE
   UseAnonymousNamespaceCheck.cpp
   UseInternalLinkageCheck.cpp
   )
-
-target_link_libraries(clangTidy
-  PRIVATE
-  clangIncludeCleaner
-  )
diff --git a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
index 294e5e2fabd9d..3de94c8b5b1d6 100644
--- a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidBindCheck.cpp
   AvoidCArraysCheck.cpp
   AvoidCStyleCastCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
index 5da8cb41bbdbe..3a843cd787889 100644
--- a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   BufferDerefCheck.cpp
   MPITidyModule.cpp
   TypeMismatchCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
index 19b946120410f..0e908e08e5eb7 100644
--- a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AssertEqualsCheck.cpp
   AvoidNSErrorInitCheck.cpp
   DeallocInCategoryCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
index 34f7bd972c1ed..152566ebafe0d 100644
--- a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ExceptionEscapeCheck.cpp
   OpenMPTidyModule.cpp
   UseDefaultNoneCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
index e3df7710cf8ff..96181ded3061f 100644
--- a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidEndlCheck.cpp
   EnumSizeCheck.cpp
   FasterStringFindCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
index 7efa1e716343d..575a4c4f0eb26 100644
--- a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
@@ -1,3 +1,3 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ClangTidyPlugin.cpp
   )
diff --git a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
index 04f98c32deaec..d218b1599547b 100644
--- a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AvoidPragmaOnceCheck.cpp
   PortabilityTidyModule.cpp
   RestrictSystemIncludesCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
index b665a033cbfb9..2fbb2e88666e2 100644
--- a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   AmbiguousSmartptrResetCallCheck.cpp
   AvoidConstParamsInDeclsCheck.cpp
   AvoidNestedConditionalOperatorCheck.cpp
diff --git a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
index 8b0e678c2428c..8071ac883af8a 100644
--- a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt
@@ -1,4 +1,4 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   Aliasing.cpp
   ASTUtils.cpp
   BracesAroundStatement.cpp
diff --git a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt 
b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
index fc5dde5ec1127..d20ea6c112a6e 100644
--- a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
+++ b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
@@ -1,3 +1,3 @@
-target_sources(clangTidy PRIVATE
+list(APPEND CLANG_TIDY_SOURCES
   ZirconTidyModule.cpp
   )

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to