]> granicus.if.org Git - clang/commitdiff
Remove a goofy CMake hack and use the standard CMake facilities to
authorChandler Carruth <chandlerc@gmail.com>
Thu, 21 Jun 2012 01:30:21 +0000 (01:30 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Thu, 21 Jun 2012 01:30:21 +0000 (01:30 +0000)
express library-level dependencies within Clang.

This is no more verbose really, and plays nicer with the rest of the
CMake facilities. It should also have no change in functionality.

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

30 files changed:
CMakeLists.txt
examples/PrintFunctionNames/CMakeLists.txt
examples/analyzer-plugin/CMakeLists.txt
examples/clang-interpreter/CMakeLists.txt
lib/ARCMigrate/CMakeLists.txt
lib/AST/CMakeLists.txt
lib/Analysis/CMakeLists.txt
lib/Basic/CMakeLists.txt
lib/CodeGen/CMakeLists.txt
lib/Driver/CMakeLists.txt
lib/Edit/CMakeLists.txt
lib/Frontend/CMakeLists.txt
lib/FrontendTool/CMakeLists.txt
lib/Lex/CMakeLists.txt
lib/Parse/CMakeLists.txt
lib/Rewrite/CMakeLists.txt
lib/Sema/CMakeLists.txt
lib/Serialization/CMakeLists.txt
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Core/CMakeLists.txt
lib/StaticAnalyzer/Frontend/CMakeLists.txt
lib/Tooling/CMakeLists.txt
tools/arcmt-test/CMakeLists.txt
tools/c-arcmt-test/CMakeLists.txt
tools/c-index-test/CMakeLists.txt
tools/clang-check/CMakeLists.txt
tools/diagtool/CMakeLists.txt
tools/driver/CMakeLists.txt
tools/libclang/CMakeLists.txt
unittests/CMakeLists.txt

index ebf5e418e3f90eab990c5990c3bbce22d970d83a..dae9895eb6861c8c731a020c97df68bde0edfc55 100644 (file)
@@ -192,7 +192,6 @@ macro(add_clang_library name)
     add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
   endif( LLVM_COMMON_DEPENDS )
 
-  target_link_libraries( ${name} ${LLVM_USED_LIBS} )
   llvm_config( ${name} ${LLVM_LINK_COMPONENTS} )
   target_link_libraries( ${name} ${LLVM_COMMON_LIBS} )
   link_system_libs( ${name} )
index 86793ce7e187ba805ef2d7a171efe0e596858613..a31a8f69e799623830c0781d9b4ec5364901c9cd 100644 (file)
@@ -1,14 +1,14 @@
 set(MODULE TRUE)
 
-set( LLVM_USED_LIBS
-  clangFrontend
-  clangAST
-  )
-
 set( LLVM_LINK_COMPONENTS support mc)
 
 add_clang_library(PrintFunctionNames PrintFunctionNames.cpp)
 
+target_link_libraries(PrintFunctionNames
+  clangFrontend
+  clangAST
+  )
+
 set_target_properties(PrintFunctionNames
   PROPERTIES
   LINKER_LANGUAGE CXX
index 2b9d82587fffb9fb0b1abb3e14876afc4105c660..9ad5cace80600c5bb78d88a865ca098fa17ace4d 100644 (file)
@@ -1,13 +1,13 @@
 set(MODULE TRUE)
 
-set( LLVM_USED_LIBS
-  clangStaticAnalyzerCore
-  )
-
 set( LLVM_LINK_COMPONENTS support mc)
 
 add_clang_library(SampleAnalyzerPlugin MainCallChecker.cpp)
 
+target_link_libraries(SampleAnalyzerPlugin
+  clangStaticAnalyzerCore
+  )
+
 set_target_properties(SampleAnalyzerPlugin
   PROPERTIES
   LINKER_LANGUAGE CXX
index 809e324dbe601fc4b6a279238adcc47c38a2f912..9abefc274b1edb2d5b4959397c8a4ecca095a61f 100644 (file)
@@ -1,34 +1,37 @@
-set(LLVM_USED_LIBS
-    clangFrontend
-    clangSerialization
-    clangDriver
-    clangCodeGen
-    clangSema
-    clangStaticAnalyzerFrontend
-    clangStaticAnalyzerCheckers
-    clangStaticAnalyzerCore
-    clangAnalysis
-    clangRewrite
-    clangAST
-    clangParse
-    clangLex
-    clangBasic
-    )
-
 set(LLVM_LINK_COMPONENTS
-    jit
-    interpreter
-    nativecodegen
-    asmparser
-    bitreader
-    bitwriter
-    codegen
-    ipo
-    linker
-    selectiondag
+  jit
+  interpreter
+  nativecodegen
+  asmparser
+  bitreader
+  bitwriter
+  codegen
+  ipo
+  linker
+  selectiondag
   )
 
 add_clang_executable(clang-interpreter
   main.cpp
   )
-add_dependencies(clang-interpreter clang-headers)
+
+add_dependencies(clang-interpreter
+  clang-headers
+  )
+
+target_link_libraries(clang-interpreter
+  clangFrontend
+  clangSerialization
+  clangDriver
+  clangCodeGen
+  clangSema
+  clangStaticAnalyzerFrontend
+  clangStaticAnalyzerCheckers
+  clangStaticAnalyzerCore
+  clangAnalysis
+  clangRewrite
+  clangAST
+  clangParse
+  clangLex
+  clangBasic
+  )
index fcb7f72ee21ddb0a9a269d8a52c1f773d760ce0d..6527e0fdfcfca13460237cbae637fe6f6112b7aa 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangBasic clangAST clangParse clangFrontend clangRewrite)
-
 add_clang_library(clangARCMigrate
   ARCMT.cpp
   ARCMTActions.cpp
@@ -27,3 +25,11 @@ add_dependencies(clangARCMigrate
   ClangAttrList
   ClangDeclNodes
   ClangStmtNodes)
+
+target_link_libraries(clangARCMigrate
+  clangBasic
+  clangAST
+  clangParse
+  clangFrontend
+  clangRewrite
+  )
index 67809446650eeb3ac87bff65c76a5e489b83a454..d8605367a7c21fcbd0d6f97f782118045e160b0f 100644 (file)
@@ -1,7 +1,5 @@
 set(LLVM_LINK_COMPONENTS support)
 
-set(LLVM_USED_LIBS clangBasic clangLex)
-
 add_clang_library(clangAST
   APValue.cpp
   ASTConsumer.cpp
@@ -54,5 +52,17 @@ add_clang_library(clangAST
   VTTBuilder.cpp
   )
 
-add_dependencies(clangAST ClangARMNeon ClangAttrClasses ClangAttrList 
-                 ClangAttrImpl ClangDiagnosticAST ClangDeclNodes ClangStmtNodes)
+add_dependencies(clangAST
+  ClangARMNeon
+  ClangAttrClasses
+  ClangAttrList
+  ClangAttrImpl
+  ClangDiagnosticAST
+  ClangDeclNodes
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangAST
+  clangBasic
+  clangLex
+  )
index ca2392b9158845af6f060c3d8b91442baa0c9cfb..0a22792bf92c852543f0426eba1fa4e32351028a 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangBasic clangAST)
-
 add_clang_library(clangAnalysis
   AnalysisDeclContext.cpp
   CallGraph.cpp
@@ -20,5 +18,15 @@ add_clang_library(clangAnalysis
   UninitializedValues.cpp
   )
 
-add_dependencies(clangAnalysis ClangAttrClasses ClangAttrList
-                 ClangDiagnosticAnalysis ClangDeclNodes ClangStmtNodes)
+add_dependencies(clangAnalysis
+  ClangAttrClasses
+  ClangAttrList
+  ClangDiagnosticAnalysis
+  ClangDeclNodes
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangAnalysis
+  clangBasic
+  clangAST
+  )
index ff661fd70bd552d725155495036ccf9809115bcb..016953973603bf8f197f1d1e93bc30c50f180207 100644 (file)
@@ -32,18 +32,18 @@ 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
-                 ClangDiagnosticSerialization
-                 ClangDiagnosticIndexName)
-                 
+add_dependencies(clangBasic
+  ClangARMNeon
+  ClangAttrList
+  ClangDiagnosticAnalysis
+  ClangDiagnosticAST
+  ClangDiagnosticCommon
+  ClangDiagnosticDriver
+  ClangDiagnosticFrontend
+  ClangDiagnosticGroups
+  ClangDiagnosticLex
+  ClangDiagnosticParse
+  ClangDiagnosticSema
+  ClangDiagnosticSerialization
+  ClangDiagnosticIndexName
+  )
index 7b1dbce1a85e8adae250575d073bfe538497df9e..b659436c43ebae108f7e45f7f5b96697fe69d082 100644 (file)
@@ -8,8 +8,6 @@ set(LLVM_LINK_COMPONENTS
   vectorize
   )
 
-set(LLVM_USED_LIBS clangBasic clangAST clangFrontend)
-
 add_clang_library(clangCodeGen
   BackendUtil.cpp
   CGBlocks.cpp
@@ -52,5 +50,15 @@ add_clang_library(clangCodeGen
   TargetInfo.cpp
   )
 
-add_dependencies(clangCodeGen ClangAttrClasses ClangAttrList ClangDeclNodes
-                 ClangStmtNodes)
+add_dependencies(clangCodeGen
+  ClangAttrClasses
+  ClangAttrList
+  ClangDeclNodes
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangCodeGen
+  clangBasic
+  clangAST
+  clangFrontend
+  )
index a16b2ce69f01425703ff956b1e739beebcb35d1a..d4d8848cde30d37e7d270e6bbdc805a1e829a74a 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangBasic)
-
 add_clang_library(clangDriver
   Action.cpp
   Arg.cpp
@@ -20,6 +18,13 @@ add_clang_library(clangDriver
   Types.cpp
   )
 
+add_dependencies(clangDriver
+  ClangAttrList
+  ClangDiagnosticDriver
+  ClangDriverOptions
+  ClangCC1AsOptions
+  )
 
-add_dependencies(clangDriver ClangAttrList ClangDiagnosticDriver
-                 ClangDriverOptions ClangCC1AsOptions)
+target_link_libraries(clangDriver
+  clangBasic
+  )
index c87478cf7d1d2000fb338085bf9f89384d975ced..2bb63a71e0fd953749b368a75deef23c3a1200e7 100644 (file)
@@ -1,7 +1,11 @@
-set(LLVM_USED_LIBS clangBasic clangAST clangLex)
-
 add_clang_library(clangEdit
   Commit.cpp
   EditedSource.cpp
   RewriteObjCFoundationAPI.cpp
   )
+
+target_link_libraries(clangEdit
+  clangBasic
+  clangAST
+  clangLex
+  )
index 6f61290c0538a91316a784b58372e31bebe0e46d..ff658e02481cdf01b5592e29470bc4035b4290b0 100644 (file)
@@ -1,14 +1,3 @@
-set( LLVM_USED_LIBS
-  clangAST
-  clangBasic
-  clangDriver
-  clangEdit
-  clangLex
-  clangParse
-  clangSema
-  clangSerialization
-  )
-
 add_clang_library(clangFrontend
   ASTConsumers.cpp
   ASTMerge.cpp
@@ -41,7 +30,6 @@ add_clang_library(clangFrontend
   Warnings.cpp
   )
 
-
 add_dependencies(clangFrontend
   ClangAttrClasses
   ClangAttrList
@@ -50,4 +38,16 @@ add_dependencies(clangFrontend
   ClangDiagnosticSema
   ClangDriverOptions
   ClangDeclNodes
-  ClangStmtNodes)
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangFrontend
+  clangAST
+  clangBasic
+  clangDriver
+  clangEdit
+  clangLex
+  clangParse
+  clangSema
+  clangSerialization
+  )
index b0060e925fada72c9347167f1c40c7aa256f2df1..47cdf17f4ab7a62d900534466dea021d6347afa3 100644 (file)
@@ -1,10 +1,18 @@
-set(LLVM_USED_LIBS clangDriver clangFrontend clangRewrite clangCodeGen
-    clangStaticAnalyzerFrontend clangStaticAnalyzerCheckers clangStaticAnalyzerCore
-    clangARCMigrate)
-
 add_clang_library(clangFrontendTool
   ExecuteCompilerInvocation.cpp
   )
 
 add_dependencies(clangFrontendTool
-  ClangDiagnosticFrontend)
+  ClangDiagnosticFrontend
+  )
+
+target_link_libraries(clangFrontendTool
+  clangDriver
+  clangFrontend
+  clangRewrite
+  clangCodeGen
+  clangStaticAnalyzerFrontend
+  clangStaticAnalyzerCheckers
+  clangStaticAnalyzerCore
+  clangARCMigrate
+  )
index 0a2ffdbf232d7f55b639dcd2133d37779775aa2d..7399de11cb6e578948fc8bc856f3fa80c969ecde 100644 (file)
@@ -2,8 +2,6 @@
 
 set(LLVM_LINK_COMPONENTS support)
 
-set(LLVM_USED_LIBS clangBasic)
-
 add_clang_library(clangLex
   HeaderMap.cpp
   HeaderSearch.cpp
@@ -28,4 +26,11 @@ add_clang_library(clangLex
   TokenLexer.cpp
   )
 
-add_dependencies(clangLex ClangDiagnosticLex ClangAttrSpellings)
+add_dependencies(clangLex
+  ClangDiagnosticLex
+  ClangAttrSpellings
+  )
+
+target_link_libraries(clangLex
+  clangBasic
+  )
index 6c980ced7ee418e57c2712b45ad5b8a574c2e962..0a69a7e1aa3e223007aa1f3a08eac837f44229b6 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangBasic clangAST clangLex clangSema)
-
 add_clang_library(clangParse
   ParseAST.cpp
   ParseCXXInlineMethods.cpp
@@ -16,4 +14,18 @@ add_clang_library(clangParse
   Parser.cpp
   )
 
-add_dependencies(clangParse ClangAttrClasses ClangAttrList ClangDeclNodes ClangDiagnosticParse ClangStmtNodes ClangAttrLateParsed)
+add_dependencies(clangParse
+  ClangAttrClasses
+  ClangAttrList
+  ClangDeclNodes
+  ClangDiagnosticParse
+  ClangStmtNodes
+  ClangAttrLateParsed
+  )
+
+target_link_libraries(clangParse
+  clangBasic
+  clangAST
+  clangLex
+  clangSema
+  )
index 091af9977f50d69643ec3c47038fb1d1ab5fa3bf..daf9605834b4cf57ff2ba426c064c27d2df65ece 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangBasic clangAST clangParse clangFrontend)
-
 add_clang_library(clangRewrite
   DeltaTree.cpp
   FixItRewriter.cpp
@@ -20,4 +18,12 @@ add_dependencies(clangRewrite
   ClangAttrClasses
   ClangAttrList
   ClangDeclNodes
-  ClangStmtNodes)
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangRewrite
+  clangBasic
+  clangAST
+  clangParse
+  clangFrontend
+  )
index 07734c7c7b571bb0202743d52af761177988a4f7..b3ecaef2e7f8ea4b87c35c1791aae06583c99db9 100644 (file)
@@ -1,11 +1,3 @@
-set(LLVM_USED_LIBS
-  clangAST
-  clangAnalysis
-  clangBasic
-  clangEdit
-  clangLex
-  )
-
 add_clang_library(clangSema
   AnalysisBasedWarnings.cpp
   AttributeList.cpp
@@ -50,9 +42,22 @@ add_clang_library(clangSema
   TargetAttributesSema.cpp
   )
 
-add_dependencies(clangSema ClangARMNeon ClangAttrClasses ClangAttrList 
-                 ClangDiagnosticSema ClangDeclNodes ClangStmtNodes 
-                 ClangAttrTemplateInstantiate ClangAttrParsedAttrList 
-                                ClangAttrParsedAttrKinds)
-
+add_dependencies(clangSema
+  ClangARMNeon
+  ClangAttrClasses
+  ClangAttrList
+  ClangDiagnosticSema
+  ClangDeclNodes
+  ClangStmtNodes
+  ClangAttrTemplateInstantiate
+  ClangAttrParsedAttrList
+  ClangAttrParsedAttrKinds
+  )
 
+target_link_libraries(clangSema
+  clangAST
+  clangAnalysis
+  clangBasic
+  clangEdit
+  clangLex
+  )
index 04c5382d86c46141d47b12bd0bb10483afa8b1dc..f5ade70024cf26f9382ed4a333c103e89db5b2e3 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS clangSema)
-
 add_clang_library(clangSerialization
   ASTCommon.h
   ASTReaderInternals.h
@@ -24,4 +22,9 @@ add_dependencies(clangSerialization
   ClangDiagnosticSema
   ClangDiagnosticSerialization
   ClangDeclNodes
-  ClangStmtNodes)
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangSerialization
+  clangSema
+  )
index 92e3278116ee928fd0660f2eb6197db6e0655b86..f121dd5705600bf05577f5d74063dbd8a1891219 100644 (file)
@@ -3,8 +3,6 @@ clang_tablegen(Checkers.inc -gen-clang-sa-checkers
   SOURCE Checkers.td
   TARGET ClangSACheckers)
 
-set(LLVM_USED_LIBS clangBasic clangAST clangStaticAnalyzerCore)
-
 add_clang_library(clangStaticAnalyzerCheckers
   AdjustedReturnValueChecker.cpp
   AnalyzerStatsChecker.cpp
@@ -79,3 +77,9 @@ add_dependencies(clangStaticAnalyzerCheckers
   ClangStmtNodes
   ClangSACheckers
   )
+
+target_link_libraries(clangStaticAnalyzerCheckers
+  clangBasic
+  clangAST
+  clangStaticAnalyzerCore
+  )
index 23d1dcc10b886343efefb8335afe8f67be2e08ed..3da91788c6468f5a23ac35e7d29c399ae6a55c60 100644 (file)
@@ -1,7 +1,5 @@
 set(LLVM_LINK_COMPONENTS support)
 
-set(LLVM_USED_LIBS clangBasic clangLex clangAST clangFrontend clangRewrite)
-
 add_clang_library(clangStaticAnalyzerCore
   AnalysisManager.cpp
   APSIntType.cpp
@@ -42,5 +40,17 @@ add_clang_library(clangStaticAnalyzerCore
   TextPathDiagnostics.cpp
   )
 
-add_dependencies(clangStaticAnalyzerCore ClangAttrClasses ClangAttrList ClangDeclNodes
-                 ClangStmtNodes)
+add_dependencies(clangStaticAnalyzerCore
+  ClangAttrClasses
+  ClangAttrList
+  ClangDeclNodes
+  ClangStmtNodes
+  )
+
+target_link_libraries(clangStaticAnalyzerCore
+  clangBasic
+  clangLex
+  clangAST
+  clangFrontend
+  clangRewrite
+  )
index bbcb085f84781897f92c1e8038ced1fbc19550bd..d1f12a621f6c95d52067646d2970301f436d1df8 100644 (file)
@@ -1,8 +1,5 @@
 set(LLVM_NO_RTTI 1)
 
-set(LLVM_USED_LIBS clangBasic clangLex clangAST clangFrontend clangRewrite
-                   clangStaticAnalyzerCheckers)
-
 include_directories( ${CMAKE_CURRENT_BINARY_DIR}/../Checkers )
 
 add_clang_library(clangStaticAnalyzerFrontend
@@ -19,3 +16,12 @@ add_dependencies(clangStaticAnalyzerFrontend
   ClangDeclNodes
   ClangStmtNodes
   )
+
+target_link_libraries(clangStaticAnalyzerFrontend
+  clangBasic
+  clangLex
+  clangAST
+  clangFrontend
+  clangRewrite
+  clangStaticAnalyzerCheckers
+  )
index aada61714dcb67d752a76d2c1a7afc935bb3d1c3..303013f860a014d844a1ad8db8b1f0fa6efb83aa 100644 (file)
@@ -1,5 +1,4 @@
 set(LLVM_LINK_COMPONENTS support)
-SET(LLVM_USED_LIBS clangBasic clangFrontend clangAST clangRewrite)
 
 add_clang_library(clangTooling
   CompilationDatabase.cpp
@@ -7,3 +6,10 @@ add_clang_library(clangTooling
   Tooling.cpp
   ArgumentsAdjusters.cpp
   )
+
+target_link_libraries(clangTooling
+  clangBasic
+  clangFrontend
+  clangAST
+  clangRewrite
+  )
index a0029b416f292b5f39519e47894a8ed7a066f811..3528495acf11836369ffeef0fda8d8dfa32ea63c 100644 (file)
@@ -1,9 +1,3 @@
-set(LLVM_USED_LIBS
-  clangARCMigrate
-  clangEdit
-  clangRewrite
-  )
-
 set( LLVM_LINK_COMPONENTS
   support
   mc
@@ -12,3 +6,9 @@ set( LLVM_LINK_COMPONENTS
 add_clang_executable(arcmt-test
   arcmt-test.cpp
   )
+
+target_link_libraries(arcmt-test
+  clangARCMigrate
+  clangEdit
+  clangRewrite
+  )
index 351f4adca10f7c9cb055dfb9dcf99fbecde10a61..1e72261b2192affdad8a200d281f839c904667f9 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS libclang)
-
 set( LLVM_LINK_COMPONENTS
   support
   mc
@@ -9,6 +7,10 @@ add_clang_executable(c-arcmt-test
   c-arcmt-test.c
   )
 
+target_link_libraries(c-arcmt-test
+  libclang
+  )
+
 set_target_properties(c-arcmt-test
   PROPERTIES
   LINKER_LANGUAGE CXX)
index c44b34b8205010401a65e479934919f3b71f4807..743268cb51a578acfad94c65eaec6557eaf9b694 100644 (file)
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS libclang)
-
 set( LLVM_LINK_COMPONENTS
   support
   mc
@@ -9,6 +7,10 @@ add_clang_executable(c-index-test
   c-index-test.c
   )
 
+target_link_libraries(c-index-test
+  libclang
+  )
+
 set_target_properties(c-index-test
   PROPERTIES
   LINKER_LANGUAGE CXX)
index 851d6cdd1615c62fe13bb2467aa055af95aaa1f5..9db8f1a55298a061dce0bf84148691bcd0143c24 100644 (file)
@@ -1,5 +1,8 @@
-set(LLVM_USED_LIBS clangTooling clangBasic)
-
 add_clang_executable(clang-check
   ClangCheck.cpp
   )
+
+target_link_libraries(clang-check
+  clangTooling
+  clangBasic
+  )
index d2ad73533735bb44094186e3dc916a96d5d96af0..6e2ae2d8cfa8a43859e9a5e8d4b2c76a5fbbad17 100644 (file)
@@ -2,13 +2,6 @@ set( LLVM_LINK_COMPONENTS
   support
   )
 
-set( LLVM_USED_LIBS
-  clangBasic
-  clangLex
-  clangSema
-  clangFrontend
-  )
-
 add_clang_executable(diagtool
   diagtool_main.cpp
   DiagTool.cpp
@@ -21,6 +14,13 @@ add_dependencies(diagtool
   ClangDiagnosticIndexName
   )
 
+target_link_libraries(diagtool
+  clangBasic
+  clangLex
+  clangSema
+  clangFrontend
+  )
+
 if(UNIX)
   set(CLANGXX_LINK_OR_COPY create_symlink)
 else()
index ae49ac1eeb6814d16871e3e0bd1346243ae66922..be4b909489f31962f3e321cc38024c21fcd02df6 100644 (file)
@@ -1,4 +1,22 @@
-set( LLVM_USED_LIBS
+set( LLVM_LINK_COMPONENTS
+  ${LLVM_TARGETS_TO_BUILD}
+  asmparser
+  bitreader
+  bitwriter
+  codegen
+  instrumentation
+  ipo
+  linker
+  selectiondag
+  )
+
+add_clang_executable(clang
+  driver.cpp
+  cc1_main.cpp
+  cc1as_main.cpp
+  )
+
+target_link_libraries(clang
   clangFrontendTool
   clangAST
   clangAnalysis
@@ -19,24 +37,6 @@ set( LLVM_USED_LIBS
   clangStaticAnalyzerCore
   )
 
-set( LLVM_LINK_COMPONENTS
-  ${LLVM_TARGETS_TO_BUILD}
-  asmparser
-  bitreader
-  bitwriter
-  codegen
-  instrumentation
-  ipo
-  linker
-  selectiondag
-  )
-
-add_clang_executable(clang
-  driver.cpp
-  cc1_main.cpp
-  cc1as_main.cpp
-  )
-
 set_target_properties(clang PROPERTIES VERSION ${CLANG_EXECUTABLE_VERSION})
 
 if(UNIX)
index 293dfa3ff94d675973b0c67111aabfb9d9a55eb9..a1090fb51f73fdf18a01e027eb4afc8cd4ffd25b 100644 (file)
@@ -1,15 +1,3 @@
-set(LLVM_USED_LIBS
-  clangARCMigrate
-  clangRewrite
-  clangFrontend
-  clangDriver
-  clangSerialization
-  clangSema
-  clangEdit
-  clangAST
-  clangLex
-  clangBasic)
-
 set( LLVM_LINK_COMPONENTS
   support
   mc
@@ -49,9 +37,23 @@ set(SOURCES
   ../../include/clang-c/Index.h
   )
 
+set(LIBRARIES
+  clangARCMigrate
+  clangRewrite
+  clangFrontend
+  clangDriver
+  clangSerialization
+  clangSema
+  clangEdit
+  clangAST
+  clangLex
+  clangBasic
+  )
+
 if( LLVM_ENABLE_PIC )
   set(SHARED_LIBRARY TRUE)
   add_clang_library(libclang ${SOURCES})
+  target_link_libraries(libclang ${LIBRARIES})
 
   if(WIN32)
     set_target_properties(libclang
@@ -84,6 +86,7 @@ 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})
 
   set_target_properties(${LIBCLANG_STATIC_TARGET_NAME}
     PROPERTIES
index ce66b21ab6bd0a5821eb901f917e26334aaf9793..ecd4ef69b4dfe2cdf84f3d29a1480fb82579440d 100644 (file)
@@ -8,7 +8,6 @@ include(LLVMParseArguments)
 # 'basename(test_dirname)Tests'.
 function(add_clang_unittest)
   parse_arguments(CLANG_UNITTEST "USED_LIBS" "" ${ARGN})
-  set(LLVM_USED_LIBS ${CLANG_UNITTEST_USED_LIBS})
   list(GET CLANG_UNITTEST_DEFAULT_ARGS 0 test_dirname)
   list(REMOVE_AT CLANG_UNITTEST_DEFAULT_ARGS 0)
 
@@ -24,6 +23,7 @@ function(add_clang_unittest)
     set(EXCLUDE_FROM_ALL ON)
   endif()
   add_clang_executable(${test_name}Tests ${CLANG_UNITTEST_DEFAULT_ARGS})
+  target_link_libraries(${test_name}Tests ${CLANG_UNITTEST_USED_LIBS})
   add_dependencies(ClangUnitTests ${test_name}Tests)
   set_target_properties(${test_name}Tests PROPERTIES FOLDER "Clang tests")
 endfunction()