Fix dependencies now that the ARC migrator depends on the static analyzer.

Thanks for pointing this out, Stephen. I think this is right now -- I
attempted to try all four valid combinations with both the autoconf and
CMake builds.

See also LLVM changes to the configure script.

llvm-svn: 189027
This commit is contained in:
Jordan Rose 2013-08-22 15:50:02 +00:00
parent 23fc6f34c3
commit a1e4b12223
7 changed files with 43 additions and 22 deletions

View File

@ -274,9 +274,9 @@ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
add_definitions( -D_GNU_SOURCE )
option(CLANG_ENABLE_ARCMT "Enable ARCMT by default." ON)
option(CLANG_ENABLE_REWRITER "Enable rewriter by default." ON)
option(CLANG_ENABLE_STATIC_ANALYZER "Enable static analyzer by default." ON)
option(CLANG_ENABLE_ARCMT "Build ARCMT." ON)
option(CLANG_ENABLE_REWRITER "Build rewriter." ON)
option(CLANG_ENABLE_STATIC_ANALYZER "Build static analyzer." ON)
if (NOT CLANG_ENABLE_REWRITER AND CLANG_ENABLE_ARCMT)
message(FATAL_ERROR "Cannot disable rewriter while enabling ARCMT")
@ -286,6 +286,10 @@ if (NOT CLANG_ENABLE_REWRITER AND CLANG_ENABLE_STATIC_ANALYZER)
message(FATAL_ERROR "Cannot disable rewriter while enabling static analyzer")
endif()
if (NOT CLANG_ENABLE_STATIC_ANALYZER AND CLANG_ENABLE_ARCMT)
message(FATAL_ERROR "Cannot disable static analyzer while enabling ARCMT")
endif()
if(CLANG_ENABLE_ARCMT)
add_definitions(-DCLANG_ENABLE_ARCMT)
endif()

View File

@ -11,7 +11,9 @@ add_subdirectory(CodeGen)
add_subdirectory(Analysis)
add_subdirectory(Edit)
add_subdirectory(Rewrite)
add_subdirectory(ARCMigrate)
if(CLANG_ENABLE_ARCMT)
add_subdirectory(ARCMigrate)
endif()
add_subdirectory(Driver)
add_subdirectory(Serialization)
add_subdirectory(Frontend)

View File

@ -14,9 +14,14 @@ target_link_libraries(clangFrontendTool
clangRewriteCore
clangRewriteFrontend
clangCodeGen
clangARCMigrate
)
if(CLANG_ENABLE_ARCMT)
target_link_libraries(clangFrontendTool
clangARCMigrate
)
endif()
if(CLANG_ENABLE_STATIC_ANALYZER)
target_link_libraries(clangFrontendTool
clangStaticAnalyzerFrontend

View File

@ -10,8 +10,8 @@ CLANG_LEVEL := ..
# ARCMigrate and Rewrite are always needed because of libclang.
PARALLEL_DIRS = Headers Basic Lex Parse AST Sema CodeGen Analysis Frontend \
FrontendTool Tooling Driver Format Edit ARCMigrate Rewrite \
Serialization Index
FrontendTool Tooling Driver Format Edit Rewrite Serialization \
Index
include $(CLANG_LEVEL)/../../Makefile.config
@ -23,4 +23,8 @@ ifeq ($(ENABLE_CLANG_STATIC_ANALYZER),1)
PARALLEL_DIRS += StaticAnalyzer
endif
ifeq ($(ENABLE_CLANG_ARCMT),1)
PARALLEL_DIRS += ARCMigrate
endif
include $(CLANG_LEVEL)/Makefile

View File

@ -1,13 +1,18 @@
add_subdirectory(libclang)
add_subdirectory(c-index-test)
add_subdirectory(arcmt-test)
add_subdirectory(c-arcmt-test)
add_subdirectory(diagtool)
add_subdirectory(driver)
if(CLANG_ENABLE_REWRITER)
add_subdirectory(clang-format)
endif()
if(CLANG_ENABLE_ARCMT)
add_subdirectory(libclang)
add_subdirectory(c-index-test)
add_subdirectory(arcmt-test)
add_subdirectory(c-arcmt-test)
endif()
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'
# subdirectory. It contains tools developed as part of the Clang/LLVM project

View File

@ -11,11 +11,16 @@ CLANG_LEVEL := ..
include $(CLANG_LEVEL)/../../Makefile.config
DIRS := libclang c-index-test arcmt-test c-arcmt-test
PARALLEL_DIRS := driver diagtool clang-format
DIRS :=
PARALLEL_DIRS := driver diagtool
ifeq ($(ENABLE_CLANG_STATIC_ANALYZER),1)
PARALLEL_DIRS += clang-check
ifeq ($(ENABLE_CLANG_REWRITER),1)
PARALLEL_DIRS += clang-format
endif
ifeq ($(ENABLE_CLANG_ARCMT), 1)
DIRS += libclang c-index-test c-arcmt-test
PARALLEL_DIRS += arcmt-test
endif
# Recurse into the extra repository of tools if present.

View File

@ -19,14 +19,10 @@ PARALLEL_DIRS = Basic Lex
include $(CLANG_LEVEL)/../..//Makefile.config
ifeq ($(ENABLE_CLANG_REWRITER),1)
PARALLEL_DIRS += Format
PARALLEL_DIRS += Format ASTMatchers AST Tooling Sema
endif
ifeq ($(ENABLE_CLANG_REWRITER),1)
PARALLEL_DIRS += ASTMatchers AST Tooling Sema
endif
ifeq ($(ENABLE_CLANG_STATIC_ANALYZER),1)
ifeq ($(ENABLE_CLANG_ARCMT),1)
PARALLEL_DIRS += Frontend
endif