diff options
Diffstat (limited to 'tools/libclang/CMakeLists.txt')
-rw-r--r-- | tools/libclang/CMakeLists.txt | 76 |
1 files changed, 49 insertions, 27 deletions
diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt index fb0b91f..283276f 100644 --- a/tools/libclang/CMakeLists.txt +++ b/tools/libclang/CMakeLists.txt @@ -1,16 +1,6 @@ -set(LLVM_USED_LIBS - clangARCMigrate - clangRewrite - clangFrontend - clangDriver - clangSerialization - clangSema - clangEdit - clangAST - clangLex - clangBasic) - -set( LLVM_LINK_COMPONENTS +set(LLVM_LINK_COMPONENTS + ${LLVM_TARGETS_TO_BUILD} + asmparser support mc ) @@ -27,8 +17,10 @@ set(SOURCES CIndexUSRs.cpp CIndexer.cpp CIndexer.h + CXComment.cpp CXCursor.cpp CXCursor.h + CXCompilationDatabase.cpp CXLoadedDiagnostic.cpp CXLoadedDiagnostic.h CXSourceLocation.cpp @@ -49,32 +41,60 @@ set(SOURCES ../../include/clang-c/Index.h ) +set(LIBRARIES + clangARCMigrate + clangRewrite + clangFrontend + clangDriver + clangSerialization + clangSema + clangEdit + clangAST + clangLex + clangTooling + clangBasic + ) + +set(GENERATED_HEADERS + ClangAttrClasses + ClangAttrList + ClangAttrParsedAttrList + ClangCommentNodes + ClangDiagnosticCommon + ClangDiagnosticFrontend + ClangDeclNodes + ClangStmtNodes + ) + if( LLVM_ENABLE_PIC ) set(SHARED_LIBRARY TRUE) add_clang_library(libclang ${SOURCES}) + target_link_libraries(libclang ${LIBRARIES}) + add_dependencies(libclang ${GENERATED_HEADERS}) - set_target_properties(libclang - PROPERTIES - OUTPUT_NAME "libclang" - VERSION ${LIBCLANG_LIBRARY_VERSION} - DEFINE_SYMBOL _CINDEX_LIB_) + if(WIN32) + set_target_properties(libclang + PROPERTIES + OUTPUT_NAME "libclang" + VERSION ${LIBCLANG_LIBRARY_VERSION} + DEFINE_SYMBOL _CINDEX_LIB_) + else() + set_target_properties(libclang + PROPERTIES + OUTPUT_NAME "clang" + VERSION ${LIBCLANG_LIBRARY_VERSION} + DEFINE_SYMBOL _CINDEX_LIB_) + endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") set(LIBCLANG_LINK_FLAGS - "-Wl,-compatibility_version -Wl,1 -Wl,-dead_strip -Wl,-seg1addr -Wl,0xE0000000") + "-Wl,-compatibility_version -Wl,1 -Wl,-dead_strip") set_target_properties(libclang PROPERTIES LINK_FLAGS "${LIBCLANG_LINK_FLAGS}" INSTALL_NAME_DIR "@executable_path/../lib") endif() - if(MSVC) - # windows.h doesn't compile with /Za - get_target_property(NON_ANSI_COMPILE_FLAGS libclang COMPILE_FLAGS) - string(REPLACE "/Za" "" NON_ANSI_COMPILE_FLAGS ${NON_ANSI_COMPILE_FLAGS}) - set_target_properties(libclang PROPERTIES - COMPILE_FLAGS ${NON_ANSI_COMPILE_FLAGS}) - endif() set(LIBCLANG_STATIC_TARGET_NAME libclang_static) else() @@ -83,8 +103,10 @@ endif() if( NOT BUILD_SHARED_LIBS AND NOT WIN32 ) add_clang_library(${LIBCLANG_STATIC_TARGET_NAME} STATIC ${SOURCES}) + target_link_libraries(${LIBCLANG_STATIC_TARGET_NAME} ${LIBRARIES}) + add_dependencies(${LIBCLANG_STATIC_TARGET_NAME} ${GENERATED_HEADERS}) set_target_properties(${LIBCLANG_STATIC_TARGET_NAME} PROPERTIES - OUTPUT_NAME "libclang") + OUTPUT_NAME "clang") endif() |