mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-24 14:20:17 +00:00
Turn CLANG_ENABLE_{ARCMT,REWRITER,STATIC_ANALYZER} into proper options so that
users can disable those. Just like in autoconf generated makefiles. llvm-svn: 182881
This commit is contained in:
parent
1bd1927a14
commit
95ad7794a9
@ -264,8 +264,27 @@ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
|
||||
|
||||
add_definitions( -D_GNU_SOURCE )
|
||||
|
||||
# FIXME: They should be options.
|
||||
add_definitions(-DCLANG_ENABLE_ARCMT -DCLANG_ENABLE_REWRITER -DCLANG_ENABLE_STATIC_ANALYZER)
|
||||
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)
|
||||
|
||||
if (NOT CLANG_ENABLE_REWRITER AND CLANG_ENABLE_ARCMT)
|
||||
message(FATAL_ERROR "Cannot disable rewriter while enabling ARCMT")
|
||||
endif()
|
||||
|
||||
if (NOT CLANG_ENABLE_REWRITER AND CLANG_ENABLE_STATIC_ANALYZER)
|
||||
message(FATAL_ERROR "Cannot disable rewriter while enabling static analyzer")
|
||||
endif()
|
||||
|
||||
if(CLANG_ENABLE_ARCMT)
|
||||
add_definitions(-DCLANG_ENABLE_ARCMT)
|
||||
endif()
|
||||
if(CLANG_ENABLE_REWRITER)
|
||||
add_definitions(-DCLANG_ENABLE_REWRITER)
|
||||
endif()
|
||||
if(CLANG_ENABLE_STATIC_ANALYZER)
|
||||
add_definitions(-DCLANG_ENABLE_STATIC_ANALYZER)
|
||||
endif()
|
||||
|
||||
# Clang version information
|
||||
set(CLANG_EXECUTABLE_VERSION
|
||||
|
@ -3,7 +3,9 @@ add_subdirectory(Basic)
|
||||
add_subdirectory(Lex)
|
||||
add_subdirectory(Parse)
|
||||
add_subdirectory(AST)
|
||||
add_subdirectory(ASTMatchers)
|
||||
if(CLANG_ENABLE_REWRITER)
|
||||
add_subdirectory(ASTMatchers)
|
||||
endif()
|
||||
add_subdirectory(Sema)
|
||||
add_subdirectory(CodeGen)
|
||||
add_subdirectory(Analysis)
|
||||
@ -15,5 +17,7 @@ add_subdirectory(Serialization)
|
||||
add_subdirectory(Frontend)
|
||||
add_subdirectory(FrontendTool)
|
||||
add_subdirectory(Tooling)
|
||||
add_subdirectory(StaticAnalyzer)
|
||||
if(CLANG_ENABLE_STATIC_ANALYZER)
|
||||
add_subdirectory(StaticAnalyzer)
|
||||
endif()
|
||||
add_subdirectory(Format)
|
||||
|
@ -29,16 +29,31 @@ target_link_libraries(clang
|
||||
clangLex
|
||||
clangParse
|
||||
clangEdit
|
||||
clangARCMigrate
|
||||
clangRewriteCore
|
||||
clangRewriteFrontend
|
||||
clangSema
|
||||
clangSerialization
|
||||
clangStaticAnalyzerFrontend
|
||||
clangStaticAnalyzerCheckers
|
||||
clangStaticAnalyzerCore
|
||||
)
|
||||
|
||||
if(CLANG_ENABLE_STATIC_ANALYZER)
|
||||
target_link_libraries(clang
|
||||
clangStaticAnalyzerFrontend
|
||||
clangStaticAnalyzerCheckers
|
||||
clangStaticAnalyzerCore
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CLANG_ENABLE_ARCMT)
|
||||
target_link_libraries(clang
|
||||
clangARCMigrate
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CLANG_ENABLE_REWRITER)
|
||||
target_link_libraries(clang
|
||||
clangRewriteCore
|
||||
clangRewriteFrontend
|
||||
)
|
||||
endif()
|
||||
|
||||
set_target_properties(clang PROPERTIES VERSION ${CLANG_EXECUTABLE_VERSION})
|
||||
set_target_properties(clang PROPERTIES ENABLE_EXPORTS 1)
|
||||
|
||||
|
@ -9,10 +9,14 @@ function(add_clang_unittest test_dirname)
|
||||
add_unittest(ClangUnitTests ${test_dirname} ${ARGN})
|
||||
endfunction()
|
||||
|
||||
add_subdirectory(ASTMatchers)
|
||||
add_subdirectory(AST)
|
||||
add_subdirectory(Basic)
|
||||
add_subdirectory(Lex)
|
||||
add_subdirectory(Frontend)
|
||||
add_subdirectory(Tooling)
|
||||
add_subdirectory(Format)
|
||||
if(CLANG_ENABLE_STATIC_ANALYZER)
|
||||
add_subdirectory(Frontend)
|
||||
endif()
|
||||
if(CLANG_ENABLE_REWRITER)
|
||||
add_subdirectory(ASTMatchers)
|
||||
add_subdirectory(AST)
|
||||
add_subdirectory(Tooling)
|
||||
add_subdirectory(Format)
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user