summaryrefslogtreecommitdiffstats
path: root/tools/libclang/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tools/libclang/CMakeLists.txt')
-rw-r--r--tools/libclang/CMakeLists.txt22
1 files changed, 16 insertions, 6 deletions
diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
index c5a975b..b7bde69 100644
--- a/tools/libclang/CMakeLists.txt
+++ b/tools/libclang/CMakeLists.txt
@@ -39,11 +39,11 @@ set(SOURCES
Indexing.cpp
IndexingContext.cpp
IndexingContext.h
- SimpleFormatContext.h
../../include/clang-c/Index.h
)
set(LIBRARIES
+ clangIndex
clangARCMigrate
clangRewriteCore
clangRewriteFrontend
@@ -56,7 +56,6 @@ set(LIBRARIES
clangLex
clangTooling
clangBasic
- clangFormat
)
set(GENERATED_HEADERS
@@ -70,6 +69,8 @@ set(GENERATED_HEADERS
ClangStmtNodes
)
+set(EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/libclang.exports)
+
if( LLVM_ENABLE_PIC )
set(SHARED_LIBRARY TRUE)
add_clang_library(libclang ${SOURCES})
@@ -92,11 +93,17 @@ if( LLVM_ENABLE_PIC )
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(LIBCLANG_LINK_FLAGS
- "-Wl,-compatibility_version -Wl,1 -Wl,-dead_strip")
+ " -Wl,-compatibility_version -Wl,1 -Wl,-dead_strip")
+ if (DEFINED ${LLVM_SUBMIT_VERSION})
+ set(LIBCLANG_LINK_FLAGS
+ "${LIBCLANG_LINK_FLAGS} -Wl,-current_version -Wl,${LLVM_SUBMIT_VERSION}.${LLVM_SUBMIT_SUBVERSION}")
+ endif()
+
+ set_property(TARGET libclang APPEND_STRING PROPERTY
+ LINK_FLAGS ${LIBCLANG_LINK_FLAGS})
set_target_properties(libclang
PROPERTIES
- LINK_FLAGS "${LIBCLANG_LINK_FLAGS}"
- INSTALL_NAME_DIR "@executable_path/../lib")
+ INSTALL_NAME_DIR "@rpath")
endif()
@@ -105,7 +112,10 @@ else()
set(LIBCLANG_STATIC_TARGET_NAME libclang)
endif()
-if( NOT BUILD_SHARED_LIBS AND NOT WIN32 )
+option(LIBCLANG_BUILD_STATIC
+ "Build libclang as a static library (in addition to a shared one)" OFF)
+
+if( (NOT LLVM_ENABLE_PIC OR LIBCLANG_BUILD_STATIC) 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} clang-headers)
OpenPOWER on IntegriCloud