summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael J. Spencer <bigcheesegs@gmail.com>2010-09-13 23:54:41 +0000
committerMichael J. Spencer <bigcheesegs@gmail.com>2010-09-13 23:54:41 +0000
commit09476212de019cfdd224563aaf596fa27e16e05c (patch)
tree79f45394b0cd30c47740e1f7868412c8243288f9
parent614e13936a4dcfe3e4d7a11da0b71292753acde5 (diff)
downloadbcm5719-llvm-09476212de019cfdd224563aaf596fa27e16e05c.tar.gz
bcm5719-llvm-09476212de019cfdd224563aaf596fa27e16e05c.zip
Revert "CMake: Update to use standard CMake dependency tracking facilities instead"
This reverts commit r113631 Conflicts: CMakeLists.txt lib/CodeGen/CMakeLists.txt llvm-svn: 113817
-rw-r--r--clang/CMakeLists.txt1
-rw-r--r--clang/examples/PrintFunctionNames/CMakeLists.txt11
-rw-r--r--clang/examples/clang-interpreter/CMakeLists.txt46
-rw-r--r--clang/examples/wpa/CMakeLists.txt18
-rw-r--r--clang/lib/AST/CMakeLists.txt17
-rw-r--r--clang/lib/Analysis/CMakeLists.txt17
-rw-r--r--clang/lib/Basic/CMakeLists.txt31
-rw-r--r--clang/lib/Checker/CMakeLists.txt18
-rw-r--r--clang/lib/CodeGen/CMakeLists.txt20
-rw-r--r--clang/lib/Driver/CMakeLists.txt17
-rw-r--r--clang/lib/Frontend/CMakeLists.txt27
-rw-r--r--clang/lib/FrontendTool/CMakeLists.txt11
-rw-r--r--clang/lib/Index/CMakeLists.txt36
-rw-r--r--clang/lib/Lex/CMakeLists.txt10
-rw-r--r--clang/lib/Parse/CMakeLists.txt17
-rw-r--r--clang/lib/Rewrite/CMakeLists.txt12
-rw-r--r--clang/lib/Sema/CMakeLists.txt16
-rw-r--r--clang/lib/Serialization/CMakeLists.txt9
-rw-r--r--clang/tools/c-index-test/CMakeLists.txt12
-rw-r--r--clang/tools/driver/CMakeLists.txt32
-rw-r--r--clang/tools/libclang/CMakeLists.txt39
21 files changed, 165 insertions, 252 deletions
diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt
index 5577e318c2f..854174cd2b1 100644
--- a/clang/CMakeLists.txt
+++ b/clang/CMakeLists.txt
@@ -107,7 +107,6 @@ macro(add_clang_library name)
set_target_properties(${name} PROPERTIES COMPILE_FLAGS ${cflag})
endif(MSVC)
install(TARGETS ${name}
- EXPORT LLVM
LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
endmacro(add_clang_library)
diff --git a/clang/examples/PrintFunctionNames/CMakeLists.txt b/clang/examples/PrintFunctionNames/CMakeLists.txt
index cea15bf934c..5ea75db42e0 100644
--- a/clang/examples/PrintFunctionNames/CMakeLists.txt
+++ b/clang/examples/PrintFunctionNames/CMakeLists.txt
@@ -2,16 +2,7 @@ set(MODULE TRUE)
set(LLVM_NO_RTTI 1)
-add_clang_library(PrintFunctionNames
- PrintFunctionNames.cpp
- )
-
-target_link_libraries(PrintFunctionNames
- clangAST
- clangFrontend
- clangBasic
- )
-
+add_clang_library(PrintFunctionNames PrintFunctionNames.cpp)
set_target_properties(PrintFunctionNames
PROPERTIES
diff --git a/clang/examples/clang-interpreter/CMakeLists.txt b/clang/examples/clang-interpreter/CMakeLists.txt
index c00874322ed..73f28bb7a2e 100644
--- a/clang/examples/clang-interpreter/CMakeLists.txt
+++ b/clang/examples/clang-interpreter/CMakeLists.txt
@@ -1,24 +1,34 @@
set(LLVM_NO_RTTI 1)
-add_clang_executable(clang-interpreter
- main.cpp
- )
+set(LLVM_USED_LIBS
+ clangFrontend
+ clangSerialization
+ clangDriver
+ clangCodeGen
+ clangSema
+ clangChecker
+ clangIndex
+ clangAnalysis
+ clangRewrite
+ clangAST
+ clangParse
+ clangLex
+ clangBasic
+ )
-add_llvm_link_components(clang-interpreter jit interpreter nativecodegen)
-target_link_libraries(clang-interpreter
- clangFrontend
- clangSerialization
- clangDriver
- clangCodeGen
- clangSema
- clangChecker
- clangIndex
- clangAnalysis
- clangRewrite
- clangAST
- clangParse
- clangLex
- clangBasic
+set(LLVM_LINK_COMPONENTS
+ jit
+ interpreter
+ nativecodegen
+ asmparser
+ bitreader
+ bitwriter
+ codegen
+ ipo
+ selectiondag
)
+add_clang_executable(clang-interpreter
+ main.cpp
+ )
add_dependencies(clang-interpreter clang-headers)
diff --git a/clang/examples/wpa/CMakeLists.txt b/clang/examples/wpa/CMakeLists.txt
index b7d85cbbfdc..13e4298c1f2 100644
--- a/clang/examples/wpa/CMakeLists.txt
+++ b/clang/examples/wpa/CMakeLists.txt
@@ -1,10 +1,6 @@
set(LLVM_NO_RTTI 1)
-add_clang_executable(clang-wpa
- clang-wpa.cpp
- )
-
-target_link_libraries(clang-wpa
+set(LLVM_USED_LIBS
clangIndex
clangFrontend
clangDriver
@@ -16,9 +12,15 @@ target_link_libraries(clang-wpa
clangAST
clangParse
clangLex
- clangBasic
+ clangBasic)
+
+set( LLVM_LINK_COMPONENTS
+ bitreader
+ mc
+ core
)
-add_dependencies(clang-wpa
- clang-headers
+add_clang_executable(clang-wpa
+ clang-wpa.cpp
)
+add_dependencies(clang-wpa clang-headers)
diff --git a/clang/lib/AST/CMakeLists.txt b/clang/lib/AST/CMakeLists.txt
index 9d2ee4fe721..f56e6c41b09 100644
--- a/clang/lib/AST/CMakeLists.txt
+++ b/clang/lib/AST/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic)
+
add_clang_library(clangAST
APValue.cpp
ASTConsumer.cpp
@@ -42,16 +44,5 @@ add_clang_library(clangAST
TypePrinter.cpp
)
-target_link_libraries(clangAST
- clangBasic
- )
-
-add_dependencies(clangAST
- ClangARMNeon
- ClangAttrClasses
- ClangAttrList
- ClangAttrImpl
- ClangDiagnosticAST
- ClangDeclNodes
- ClangStmtNodes
- )
+add_dependencies(clangAST ClangARMNeon ClangAttrClasses ClangAttrList
+ ClangAttrImpl ClangDiagnosticAST ClangDeclNodes ClangStmtNodes)
diff --git a/clang/lib/Analysis/CMakeLists.txt b/clang/lib/Analysis/CMakeLists.txt
index f05bbedf0df..a2cfcfc4fa1 100644
--- a/clang/lib/Analysis/CMakeLists.txt
+++ b/clang/lib/Analysis/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangIndex)
+
add_clang_library(clangAnalysis
AnalysisContext.cpp
CFG.cpp
@@ -13,16 +15,5 @@ add_clang_library(clangAnalysis
UninitializedValues.cpp
)
-target_link_libraries(clangAnalysis
- clangBasic
- clangAST
- clangIndex
- )
-
-add_dependencies(clangAnalysis
- ClangAttrClasses
- ClangAttrList
- ClangDiagnosticAnalysis
- ClangDeclNodes
- ClangStmtNodes
- )
+add_dependencies(clangAnalysis ClangAttrClasses ClangAttrList
+ ClangDiagnosticAnalysis ClangDeclNodes ClangStmtNodes)
diff --git a/clang/lib/Basic/CMakeLists.txt b/clang/lib/Basic/CMakeLists.txt
index d0ee682dc8a..87bf834c275 100644
--- a/clang/lib/Basic/CMakeLists.txt
+++ b/clang/lib/Basic/CMakeLists.txt
@@ -14,10 +14,6 @@ add_clang_library(clangBasic
Version.cpp
)
-target_link_libraries(clangBasic
- LLVMMC
- )
-
# Determine Subversion revision.
# FIXME: This only gets updated when CMake is run, so this revision number
# may be out-of-date!
@@ -28,17 +24,16 @@ if (Subversion_FOUND AND EXISTS "${CLANG_SOURCE_DIR}/.svn")
PROPERTIES COMPILE_DEFINITIONS "SVN_REVISION=\"${CLANG_WC_REVISION}\"")
endif()
-add_dependencies(clangBasic
- ClangARMNeon
- ClangAttrList
- ClangDiagnosticAnalysis
- ClangDiagnosticAST
- ClangDiagnosticCommon
- ClangDiagnosticDriver
- ClangDiagnosticFrontend
- ClangDiagnosticGroups
- ClangDiagnosticLex
- ClangDiagnosticParse
- ClangDiagnosticSema
- )
-
+add_dependencies(clangBasic
+ ClangARMNeon
+ ClangAttrList
+ ClangDiagnosticAnalysis
+ ClangDiagnosticAST
+ ClangDiagnosticCommon
+ ClangDiagnosticDriver
+ ClangDiagnosticFrontend
+ ClangDiagnosticGroups
+ ClangDiagnosticLex
+ ClangDiagnosticParse
+ ClangDiagnosticSema)
+
diff --git a/clang/lib/Checker/CMakeLists.txt b/clang/lib/Checker/CMakeLists.txt
index e4c9a809cc1..e69808e48e6 100644
--- a/clang/lib/Checker/CMakeLists.txt
+++ b/clang/lib/Checker/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangLex clangAST clangFrontend clangRewrite)
+
add_clang_library(clangChecker
AdjustedReturnValueChecker.cpp
AggExprVisitor.cpp
@@ -82,17 +84,5 @@ add_clang_library(clangChecker
ValueManager.cpp
)
-target_link_libraries(clangChecker
- clangBasic
- clangLex
- clangAST
- clangFrontend
- clangRewrite
- )
-
-add_dependencies(clangChecker
- ClangAttrClasses
- ClangAttrList
- ClangDeclNodes
- ClangStmtNodes
- )
+add_dependencies(clangChecker ClangAttrClasses ClangAttrList ClangDeclNodes
+ ClangStmtNodes)
diff --git a/clang/lib/CodeGen/CMakeLists.txt b/clang/lib/CodeGen/CMakeLists.txt
index 3729c6a5771..1767a7d47be 100644
--- a/clang/lib/CodeGen/CMakeLists.txt
+++ b/clang/lib/CodeGen/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangFrontend)
+
add_clang_library(clangCodeGen
BackendUtil.cpp
CGBlocks.cpp
@@ -37,19 +39,5 @@ add_clang_library(clangCodeGen
TargetInfo.cpp
)
-target_link_libraries(clangCodeGen
- LLVMCore
- LLVMAsmParser
- LLVMBitReader
- LLVMBitWriter
- LLVMipo
- )
-
-add_dependencies(clangCodeGen
- ClangARMNeon
- ClangAttrClasses
- ClangAttrList
- ClangDeclNodes
- ClangStmtNodes
- ClangDiagnosticFrontend
- )
+add_dependencies(clangCodeGen ClangAttrClasses ClangAttrList ClangDeclNodes
+ ClangStmtNodes)
diff --git a/clang/lib/Driver/CMakeLists.txt b/clang/lib/Driver/CMakeLists.txt
index 9558c911b02..9d41b55981b 100644
--- a/clang/lib/Driver/CMakeLists.txt
+++ b/clang/lib/Driver/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangParse)
+
add_clang_library(clangDriver
Action.cpp
Arg.cpp
@@ -21,16 +23,5 @@ add_clang_library(clangDriver
Types.cpp
)
-target_link_libraries(clangDriver
- clangBasic
- clangAST
- clangParse
- )
-
-add_dependencies(clangDriver
- ClangAttrList
- ClangDiagnosticDriver
- ClangDriverOptions
- ClangCC1Options
- ClangCC1AsOptions
- )
+add_dependencies(clangDriver ClangAttrList ClangDiagnosticDriver
+ ClangDriverOptions ClangCC1Options ClangCC1AsOptions)
diff --git a/clang/lib/Frontend/CMakeLists.txt b/clang/lib/Frontend/CMakeLists.txt
index 6d7d7280014..ca8fbcf5f90 100644
--- a/clang/lib/Frontend/CMakeLists.txt
+++ b/clang/lib/Frontend/CMakeLists.txt
@@ -1,5 +1,14 @@
set(LLVM_NO_RTTI 1)
+set( LLVM_USED_LIBS
+ clangDriver
+ clangParse
+ clangSema
+ clangAST
+ clangLex
+ clangBasic
+ )
+
add_clang_library(clangFrontend
ASTConsumers.cpp
ASTMerge.cpp
@@ -27,17 +36,6 @@ add_clang_library(clangFrontend
Warnings.cpp
)
-target_link_libraries(clangFrontend
- LLVMCore
-
- clangDriver
- clangParse
- clangSema
- clangAST
- clangLex
- clangBasic
- )
-
IF(MSVC)
get_target_property(NON_ANSI_COMPILE_FLAGS clangFrontend COMPILE_FLAGS)
string(REPLACE /Za
@@ -46,13 +44,12 @@ IF(MSVC)
set_target_properties(clangFrontend PROPERTIES COMPILE_FLAGS ${NON_ANSI_COMPILE_FLAGS})
ENDIF(MSVC)
-add_dependencies(clangFrontend
+add_dependencies(clangFrontend
ClangAttrClasses
ClangAttrList
ClangCC1Options
- ClangDiagnosticFrontend
+ ClangDiagnosticFrontend
ClangDiagnosticLex
ClangDiagnosticSema
ClangDeclNodes
- ClangStmtNodes
- )
+ ClangStmtNodes)
diff --git a/clang/lib/FrontendTool/CMakeLists.txt b/clang/lib/FrontendTool/CMakeLists.txt
index 3790ba734b3..09d9e3419dc 100644
--- a/clang/lib/FrontendTool/CMakeLists.txt
+++ b/clang/lib/FrontendTool/CMakeLists.txt
@@ -1,13 +1,8 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangDriver clangFrontend clangRewrite clangCodeGen
+ clangChecker)
+
add_clang_library(clangFrontendTool
ExecuteCompilerInvocation.cpp
)
-
-target_link_libraries(clangFrontendTool
- clangDriver
- clangFrontend
- clangRewrite
- clangCodeGen
- clangChecker
- )
diff --git a/clang/lib/Index/CMakeLists.txt b/clang/lib/Index/CMakeLists.txt
index 7ad106e5d22..bbe9b567acf 100644
--- a/clang/lib/Index/CMakeLists.txt
+++ b/clang/lib/Index/CMakeLists.txt
@@ -1,20 +1,8 @@
set(LLVM_NO_RTTI 1)
-add_clang_library(clangIndex
- ASTLocation.cpp
- Analyzer.cpp
- CallGraph.cpp
- DeclReferenceMap.cpp
- Entity.cpp
- GlobalSelector.cpp
- Handlers.cpp
- IndexProvider.cpp
- Indexer.cpp
- Program.cpp
- SelectorMap.cpp
- )
+set(LLVM_USED_LIBS clangBasic clangLex clangAST)
-target_link_libraries(clangIndex
+set( LLVM_USED_LIBS
clangSerialization
clangFrontend
clangParse
@@ -28,9 +16,19 @@ target_link_libraries(clangIndex
clangBasic
)
-add_dependencies(clangIndex
- ClangAttrClasses
- ClangAttrList
- ClangDeclNodes
- ClangStmtNodes
+add_clang_library(clangIndex
+ ASTLocation.cpp
+ Analyzer.cpp
+ CallGraph.cpp
+ DeclReferenceMap.cpp
+ Entity.cpp
+ GlobalSelector.cpp
+ Handlers.cpp
+ IndexProvider.cpp
+ Indexer.cpp
+ Program.cpp
+ SelectorMap.cpp
)
+
+add_dependencies(clangIndex ClangAttrClasses ClangAttrList
+ ClangDeclNodes ClangStmtNodes)
diff --git a/clang/lib/Lex/CMakeLists.txt b/clang/lib/Lex/CMakeLists.txt
index 3c236441492..0476384eff3 100644
--- a/clang/lib/Lex/CMakeLists.txt
+++ b/clang/lib/Lex/CMakeLists.txt
@@ -2,6 +2,8 @@ set(LLVM_NO_RTTI 1)
# TODO: Add -maltivec when ARCH is PowerPC.
+set(LLVM_USED_LIBS clangBasic)
+
add_clang_library(clangLex
HeaderMap.cpp
HeaderSearch.cpp
@@ -24,10 +26,4 @@ add_clang_library(clangLex
TokenLexer.cpp
)
-target_link_libraries(clangLex
- clangBasic
- )
-
-add_dependencies(clangLex
- ClangDiagnosticLex
- )
+add_dependencies(clangLex ClangDiagnosticLex)
diff --git a/clang/lib/Parse/CMakeLists.txt b/clang/lib/Parse/CMakeLists.txt
index a84cf51f7ba..5b75a668a4c 100644
--- a/clang/lib/Parse/CMakeLists.txt
+++ b/clang/lib/Parse/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangLex clangSema)
+
add_clang_library(clangParse
ParseAST.cpp
ParseCXXInlineMethods.cpp
@@ -16,17 +18,4 @@ add_clang_library(clangParse
Parser.cpp
)
-target_link_libraries(clangParse
- clangBasic
- clangAST
- clangLex
- clangSema
- )
-
-add_dependencies(clangParse
- ClangAttrClasses
- ClangAttrList
- ClangDeclNodes
- ClangDiagnosticParse
- ClangStmtNodes
- )
+add_dependencies(clangParse ClangAttrClasses ClangAttrList ClangDeclNodes ClangDiagnosticParse ClangStmtNodes)
diff --git a/clang/lib/Rewrite/CMakeLists.txt b/clang/lib/Rewrite/CMakeLists.txt
index 0f2c6f219b5..853a9c0b122 100644
--- a/clang/lib/Rewrite/CMakeLists.txt
+++ b/clang/lib/Rewrite/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangParse clangFrontend)
+
add_clang_library(clangRewrite
DeltaTree.cpp
FixItRewriter.cpp
@@ -14,16 +16,8 @@ add_clang_library(clangRewrite
TokenRewriter.cpp
)
-target_link_libraries(clangRewrite
- clangBasic
- clangAST
- clangParse
- clangFrontend
- )
-
add_dependencies(clangRewrite
ClangAttrClasses
ClangAttrList
ClangDeclNodes
- ClangStmtNodes
- )
+ ClangStmtNodes)
diff --git a/clang/lib/Sema/CMakeLists.txt b/clang/lib/Sema/CMakeLists.txt
index d3a52613b6c..c220e90c129 100644
--- a/clang/lib/Sema/CMakeLists.txt
+++ b/clang/lib/Sema/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangBasic clangAST clangLex clangAnalysis)
+
add_clang_library(clangSema
AnalysisBasedWarnings.cpp
AttributeList.cpp
@@ -35,15 +37,5 @@ add_clang_library(clangSema
TargetAttributesSema.cpp
)
-target_link_libraries(clangSema
- clangAnalysis
- )
-
-add_dependencies(clangSema
- ClangARMNeon
- ClangAttrClasses
- ClangAttrList
- ClangDiagnosticSema
- ClangDeclNodes
- ClangStmtNodes
- )
+add_dependencies(clangSema ClangARMNeon ClangAttrClasses ClangAttrList
+ ClangDiagnosticSema ClangDeclNodes ClangStmtNodes)
diff --git a/clang/lib/Serialization/CMakeLists.txt b/clang/lib/Serialization/CMakeLists.txt
index f1bf1f90a1a..a3782180b32 100644
--- a/clang/lib/Serialization/CMakeLists.txt
+++ b/clang/lib/Serialization/CMakeLists.txt
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS clangFrontend)
+
add_clang_library(clangSerialization
GeneratePCH.cpp
ASTCommon.cpp
@@ -11,10 +13,6 @@ add_clang_library(clangSerialization
ASTWriterStmt.cpp
)
-target_link_libraries(clangSerialization
- clangFrontend
- )
-
add_dependencies(clangSerialization
ClangAttrClasses
ClangAttrList
@@ -24,5 +22,4 @@ add_dependencies(clangSerialization
ClangDiagnosticLex
ClangDiagnosticSema
ClangDeclNodes
- ClangStmtNodes
- )
+ ClangStmtNodes)
diff --git a/clang/tools/c-index-test/CMakeLists.txt b/clang/tools/c-index-test/CMakeLists.txt
index 149b70ae43a..0cda6c4a31b 100644
--- a/clang/tools/c-index-test/CMakeLists.txt
+++ b/clang/tools/c-index-test/CMakeLists.txt
@@ -1,11 +1,15 @@
set(LLVM_NO_RTTI 1)
-add_clang_executable(c-index-test
- c-index-test.c
+set(LLVM_USED_LIBS libclang)
+
+set( LLVM_LINK_COMPONENTS
+ bitreader
+ mc
+ core
)
-target_link_libraries(c-index-test
- libclang
+add_clang_executable(c-index-test
+ c-index-test.c
)
set_target_properties(c-index-test
diff --git a/clang/tools/driver/CMakeLists.txt b/clang/tools/driver/CMakeLists.txt
index 8529700a8a9..ec6e9c6e802 100644
--- a/clang/tools/driver/CMakeLists.txt
+++ b/clang/tools/driver/CMakeLists.txt
@@ -1,20 +1,6 @@
set(LLVM_NO_RTTI 1)
-add_clang_executable(clang
- driver.cpp
- cc1_main.cpp
- cc1as_main.cpp
- )
-
-add_llvm_link_components(clang all)
-target_link_libraries(clang
- LLVMAsmParser
- LLVMBitReader
- LLVMBitWriter
- LLVMCodeGen
- LLVMipo
- LLVMSelectionDAG
-
+set( LLVM_USED_LIBS
clangFrontendTool
clangFrontend
clangDriver
@@ -31,6 +17,22 @@ target_link_libraries(clang
clangBasic
)
+set( LLVM_LINK_COMPONENTS
+ ${LLVM_TARGETS_TO_BUILD}
+ asmparser
+ bitreader
+ bitwriter
+ codegen
+ ipo
+ selectiondag
+ )
+
+add_clang_executable(clang
+ driver.cpp
+ cc1_main.cpp
+ cc1as_main.cpp
+ )
+
if(UNIX)
set(CLANGXX_LINK_OR_COPY create_symlink)
set(CLANGXX_DESTDIR $ENV{DESTDIR}/)
diff --git a/clang/tools/libclang/CMakeLists.txt b/clang/tools/libclang/CMakeLists.txt
index fc7f41aeaa9..9a2a2a63cfd 100644
--- a/clang/tools/libclang/CMakeLists.txt
+++ b/clang/tools/libclang/CMakeLists.txt
@@ -2,6 +2,22 @@ set(SHARED_LIBRARY TRUE)
set(LLVM_NO_RTTI 1)
+set(LLVM_USED_LIBS
+ clangFrontend
+ clangDriver
+ clangSerialization
+ clangIndex
+ clangSema
+ clangAST
+ clangLex
+ clangBasic)
+
+set( LLVM_LINK_COMPONENTS
+ bitreader
+ mc
+ core
+ )
+
add_clang_library(libclang
CIndex.cpp
CIndexCXX.cpp
@@ -13,34 +29,19 @@ add_clang_library(libclang
CXCursor.cpp
CXType.cpp
../../include/clang-c/Index.h
- )
-
-target_link_libraries(libclang
- LLVMBitReader
- LLVMMC
- LLVMCore
-
- clangFrontend
- clangDriver
- clangSerialization
- clangIndex
- clangSema
- clangAST
- clangLex
- clangBasic
- )
+)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# dylib versioning information
# FIXME: Is there a more CMake-ish way to handle this?
- set(LIBCLANG_VERSION 1
+ set(LIBCLANG_VERSION 1
CACHE STRING "Version number of the libclang library")
set(LIBCLANG_SUBVERSION 0
CACHE STRING "Minor version number of the libclang library")
- set(LIBCLANG_LINK_FLAGS
+ set(LIBCLANG_LINK_FLAGS
"-Wl,-current_version -Wl,${LIBCLANG_VERSION}.${LIBCLANG_SUBVERSION} -Wl,-compatibility_version -Wl,1")
- set(LIBCLANG_LINK_FLAGS
+ set(LIBCLANG_LINK_FLAGS
"${LIBCLANG_LINK_FLAGS} -Wl,-dead_strip -Wl,-seg1addr -Wl,0xE0000000")
set_target_properties(libclang
OpenPOWER on IntegriCloud