From d771b447e2bf44830b6887b3c9a9ec433fa311c5 Mon Sep 17 00:00:00 2001 From: Jordan Rose Date: Wed, 3 Jul 2013 16:20:29 +0000 Subject: [PATCH] With CLANG_ENABLE_STATIC_ANALYZER=0, link clang properly and skip clang-check. Previously, the CMake build still tried to link clang against the static analyzer libraries, even if CLANG_ENABLE_STATIC_ANALYZER was off. Furthermore, clang-check depends on the analyzer, so it should be disabled (in both CMake and configure builds). In theory, clang-check could be made to conditionally include analyzer support (like clang itself), but for now this at least gets a CMake ALL_BUILD working. Patch by Stephen Kelly, modified by me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185548 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/FrontendTool/CMakeLists.txt | 11 ++++++++--- tools/CMakeLists.txt | 4 +++- tools/Makefile | 6 +++++- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/lib/FrontendTool/CMakeLists.txt b/lib/FrontendTool/CMakeLists.txt index 176511b0e4..3e6aba441e 100644 --- a/lib/FrontendTool/CMakeLists.txt +++ b/lib/FrontendTool/CMakeLists.txt @@ -14,8 +14,13 @@ target_link_libraries(clangFrontendTool clangRewriteCore clangRewriteFrontend clangCodeGen - clangStaticAnalyzerFrontend - clangStaticAnalyzerCheckers - clangStaticAnalyzerCore clangARCMigrate ) + +if(CLANG_ENABLE_STATIC_ANALYZER) + target_link_libraries(clangFrontendTool + clangStaticAnalyzerFrontend + clangStaticAnalyzerCheckers + clangStaticAnalyzerCore + ) +endif() diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index eb5e366cfd..13f4666297 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -4,7 +4,9 @@ add_subdirectory(arcmt-test) add_subdirectory(c-arcmt-test) add_subdirectory(diagtool) add_subdirectory(driver) -add_subdirectory(clang-check) +if(CLANG_ENABLE_STATIC_ANALYZER) + add_subdirectory(clang-check) +endif() add_subdirectory(clang-format) # We support checking out the clang-tools-extra repository into the 'extra' diff --git a/tools/Makefile b/tools/Makefile index c8bc583c2f..902e6736d7 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -12,7 +12,11 @@ CLANG_LEVEL := .. include $(CLANG_LEVEL)/../../Makefile.config DIRS := libclang c-index-test arcmt-test c-arcmt-test -PARALLEL_DIRS := driver diagtool clang-check clang-format +PARALLEL_DIRS := driver diagtool clang-format + +ifeq ($(ENABLE_CLANG_STATIC_ANALYZER),1) + PARALLEL_DIRS += clang-check +endif # Recurse into the extra repository of tools if present. OPTIONAL_PARALLEL_DIRS := extra -- 2.40.0