[clang] 4cec789 - [Testing] Drop clangTesting from clang's public library interface

Sam McCall via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 20 04:28:59 PDT 2022


Author: Sam McCall
Date: 2022-04-20T13:28:44+02:00
New Revision: 4cec789c177d4d69d9e313db1369a0df097362c8

URL: https://github.com/llvm/llvm-project/commit/4cec789c177d4d69d9e313db1369a0df097362c8
DIFF: https://github.com/llvm/llvm-project/commit/4cec789c177d4d69d9e313db1369a0df097362c8.diff

LOG: [Testing] Drop clangTesting from clang's public library interface

This was probably not particularly intended to be public, and disallows deps
on gtest which are useful in test helpers.

https://discourse.llvm.org/t/stop-exporting-clangtesting-library/61672

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

Added: 
    

Modified: 
    clang/lib/CMakeLists.txt
    clang/lib/Testing/CMakeLists.txt
    clang/unittests/AST/CMakeLists.txt
    clang/unittests/ASTMatchers/CMakeLists.txt
    clang/unittests/ASTMatchers/Dynamic/CMakeLists.txt
    clang/unittests/Analysis/CMakeLists.txt
    clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
    clang/unittests/Sema/CMakeLists.txt
    clang/unittests/StaticAnalyzer/CMakeLists.txt
    clang/unittests/Tooling/Syntax/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/clang/lib/CMakeLists.txt b/clang/lib/CMakeLists.txt
index cc98efcf433a3..50bd0cb55059e 100644
--- a/clang/lib/CMakeLists.txt
+++ b/clang/lib/CMakeLists.txt
@@ -25,5 +25,7 @@ add_subdirectory(Index)
 add_subdirectory(IndexSerialization)
 add_subdirectory(StaticAnalyzer)
 add_subdirectory(Format)
-add_subdirectory(Testing)
+if(CLANG_INCLUDE_TESTS)
+  add_subdirectory(Testing)
+endif()
 add_subdirectory(Interpreter)

diff  --git a/clang/lib/Testing/CMakeLists.txt b/clang/lib/Testing/CMakeLists.txt
index 4a8d436aab664..dbaba54bb8cab 100644
--- a/clang/lib/Testing/CMakeLists.txt
+++ b/clang/lib/Testing/CMakeLists.txt
@@ -2,6 +2,13 @@ set(LLVM_LINK_COMPONENTS
   Support
   )
 
-add_clang_library(clangTesting
+# Not add_clang_library: this is not part of clang's public library interface.
+# Unit tests should depend on this with target_link_libraries(), rather
+# than with clang_target_link_libraries().
+add_llvm_library(clangTesting
   CommandLineArgs.cpp
+  BUILDTREE_ONLY
+
+  LINK_COMPONENTS
+  Support
   )

diff  --git a/clang/unittests/AST/CMakeLists.txt b/clang/unittests/AST/CMakeLists.txt
index 48a610c98138a..ef0207c382dfb 100644
--- a/clang/unittests/AST/CMakeLists.txt
+++ b/clang/unittests/AST/CMakeLists.txt
@@ -43,11 +43,11 @@ clang_target_link_libraries(ASTTests
   clangFrontend
   clangLex
   clangSerialization
-  clangTesting
   clangTooling
   )
 
 target_link_libraries(ASTTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
 )

diff  --git a/clang/unittests/ASTMatchers/CMakeLists.txt b/clang/unittests/ASTMatchers/CMakeLists.txt
index b40b3886dcd2b..38f7178954b41 100644
--- a/clang/unittests/ASTMatchers/CMakeLists.txt
+++ b/clang/unittests/ASTMatchers/CMakeLists.txt
@@ -18,12 +18,12 @@ clang_target_link_libraries(ASTMatchersTests
   clangBasic
   clangFrontend
   clangSerialization
-  clangTesting
   clangTooling
   )
 
 target_link_libraries(ASTMatchersTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
 )
 

diff  --git a/clang/unittests/ASTMatchers/Dynamic/CMakeLists.txt b/clang/unittests/ASTMatchers/Dynamic/CMakeLists.txt
index 7a0ba01f838b7..6d0e12bcb0759 100644
--- a/clang/unittests/ASTMatchers/Dynamic/CMakeLists.txt
+++ b/clang/unittests/ASTMatchers/Dynamic/CMakeLists.txt
@@ -17,6 +17,10 @@ clang_target_link_libraries(DynamicASTMatchersTests
   clangDynamicASTMatchers
   clangFrontend
   clangSerialization
-  clangTesting
   clangTooling
   )
+
+target_link_libraries(DynamicASTMatchersTests
+  PRIVATE
+  clangTesting
+  )

diff  --git a/clang/unittests/Analysis/CMakeLists.txt b/clang/unittests/Analysis/CMakeLists.txt
index 7e2a00b96057a..619f2fc8b8581 100644
--- a/clang/unittests/Analysis/CMakeLists.txt
+++ b/clang/unittests/Analysis/CMakeLists.txt
@@ -20,12 +20,12 @@ clang_target_link_libraries(ClangAnalysisTests
   clangFrontend
   clangLex
   clangSerialization
-  clangTesting
   clangTooling
   )
 
 target_link_libraries(ClangAnalysisTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
   )
 

diff  --git a/clang/unittests/Analysis/FlowSensitive/CMakeLists.txt b/clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
index c299e039ff822..e908c7d2747c7 100644
--- a/clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
+++ b/clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
@@ -31,11 +31,11 @@ clang_target_link_libraries(ClangAnalysisFlowSensitiveTests
   clangFrontend
   clangLex
   clangSerialization
-  clangTesting
   clangTooling
   )
 
 target_link_libraries(ClangAnalysisFlowSensitiveTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
   )

diff  --git a/clang/unittests/Sema/CMakeLists.txt b/clang/unittests/Sema/CMakeLists.txt
index 455c321d541b2..0ba2e1c314551 100644
--- a/clang/unittests/Sema/CMakeLists.txt
+++ b/clang/unittests/Sema/CMakeLists.txt
@@ -19,11 +19,11 @@ clang_target_link_libraries(SemaTests
   clangParse
   clangSema
   clangSerialization
-  clangTesting
   clangTooling
   )
 
 target_link_libraries(SemaTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
 )

diff  --git a/clang/unittests/StaticAnalyzer/CMakeLists.txt b/clang/unittests/StaticAnalyzer/CMakeLists.txt
index ddfbea90aa561..b72b035780a1d 100644
--- a/clang/unittests/StaticAnalyzer/CMakeLists.txt
+++ b/clang/unittests/StaticAnalyzer/CMakeLists.txt
@@ -31,6 +31,10 @@ clang_target_link_libraries(StaticAnalysisTests
   clangSerialization
   clangStaticAnalyzerCore
   clangStaticAnalyzerFrontend
-  clangTesting
   clangTooling
   )
+
+target_link_libraries(StaticAnalysisTests
+  PRIVATE
+  clangTesting
+  )

diff  --git a/clang/unittests/Tooling/Syntax/CMakeLists.txt b/clang/unittests/Tooling/Syntax/CMakeLists.txt
index 174f3e7bf5732..33b06a05891cb 100644
--- a/clang/unittests/Tooling/Syntax/CMakeLists.txt
+++ b/clang/unittests/Tooling/Syntax/CMakeLists.txt
@@ -18,7 +18,6 @@ clang_target_link_libraries(SyntaxTests
   clangFrontend
   clangLex
   clangSerialization
-  clangTesting
   clangTooling
   clangToolingCore
   clangToolingSyntax
@@ -26,5 +25,6 @@ clang_target_link_libraries(SyntaxTests
 
 target_link_libraries(SyntaxTests
   PRIVATE
+  clangTesting
   LLVMTestingSupport
 )


        


More information about the cfe-commits mailing list