]> granicus.if.org Git - clang/commitdiff
CMake build support for libCIndex and c-index-test. The indexing tests
authorDouglas Gregor <dgregor@apple.com>
Fri, 25 Sep 2009 06:35:15 +0000 (06:35 +0000)
committerDouglas Gregor <dgregor@apple.com>
Fri, 25 Sep 2009 06:35:15 +0000 (06:35 +0000)
are now running properly from within CMake.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82755 91177308-0d34-0410-b5e6-96231b3b80d8

CMakeLists.txt
tools/CIndex/CMakeLists.txt [new file with mode: 0644]
tools/CMakeLists.txt

index 9ce07692aa2d13e4192fd0d321714286d976a8f3..cdc2b9b8a4841ae257e83f948dfff7c0d2be03eb 100644 (file)
@@ -34,10 +34,23 @@ macro(add_clang_library name)
       ../../include/clang${dir}/*.def)
     set(srcs ${srcs} ${headers})
   endif(MSVC_IDE OR XCODE)
-  add_library( ${name} ${srcs} )
+  if (SHARED_LIBRARY)
+    set(libkind SHARED)
+  else()
+    set(libkind)
+  endif()
+  add_library( ${name} ${libkind} ${srcs} )
   if( LLVM_COMMON_DEPENDS )
     add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
   endif( LLVM_COMMON_DEPENDS )
+  if( LLVM_LINK_COMPONENTS )
+    llvm_config(${name} ${LLVM_LINK_COMPONENTS})
+  endif( LLVM_LINK_COMPONENTS )
+  if( LLVM_USED_LIBS )
+    foreach(lib ${LLVM_USED_LIBS})
+      target_link_libraries( ${name} ${lib} )
+    endforeach(lib)
+  endif( LLVM_USED_LIBS )
   add_dependencies(${name} ClangDiagnosticCommon)
   if(MSVC)
     get_target_property(cflag ${name} COMPILE_FLAGS)
diff --git a/tools/CIndex/CMakeLists.txt b/tools/CIndex/CMakeLists.txt
new file mode 100644 (file)
index 0000000..6f4122b
--- /dev/null
@@ -0,0 +1,23 @@
+set(SHARED_LIBRARY TRUE)
+
+set(LLVM_NO_RTTI 1)
+
+set(LLVM_USED_LIBS
+  clangFrontend clangIndex clangSema clangAST clangLex clangBasic)
+
+set( LLVM_LINK_COMPONENTS
+  MC
+  support
+  )
+
+add_clang_library(CIndex CIndex.cpp)
+
+if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+  # FIXME: Deal with LLVM_SUBMIT_VERSION?
+
+  set_target_properties(CIndex
+    PROPERTIES
+    LINK_FLAGS "-avoid-version -Wl,-exported_symbols_list -Wl,${CMAKE_CURRENT_SOURCE_DIR}/CIndex.exports -Wl,-dead_strip -Wl,-seg1addr -Wl,0xE0000000"
+    INSTALL_NAME_DIR "@executable_path/../lib"
+    )
+endif()
index 91039e05df58762bc96a0d163d1a6fe31e9478a4..222512af1546a69cdcb85d22be6a0a24a67f26a3 100644 (file)
@@ -5,3 +5,5 @@ option(CLANG_BUILD_EXPERIMENTAL "Build experimenal Clang tools" OFF)
 if (CLANG_BUILD_EXPERIMENTAL)
   add_subdirectory(wpa)
 endif ()
+add_subdirectory(CIndex)
+add_subdirectory(c-index-test)