Remove a goofy CMake hack and use the standard CMake facilities to
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.
llvm-svn: 158888
diff --git a/clang/tools/arcmt-test/CMakeLists.txt b/clang/tools/arcmt-test/CMakeLists.txt
index a0029b4..3528495 100644
--- a/clang/tools/arcmt-test/CMakeLists.txt
+++ b/clang/tools/arcmt-test/CMakeLists.txt
@@ -1,9 +1,3 @@
-set(LLVM_USED_LIBS
- clangARCMigrate
- clangEdit
- clangRewrite
- )
-
set( LLVM_LINK_COMPONENTS
support
mc
@@ -12,3 +6,9 @@
add_clang_executable(arcmt-test
arcmt-test.cpp
)
+
+target_link_libraries(arcmt-test
+ clangARCMigrate
+ clangEdit
+ clangRewrite
+ )
diff --git a/clang/tools/c-arcmt-test/CMakeLists.txt b/clang/tools/c-arcmt-test/CMakeLists.txt
index 351f4ad..1e72261 100644
--- a/clang/tools/c-arcmt-test/CMakeLists.txt
+++ b/clang/tools/c-arcmt-test/CMakeLists.txt
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS libclang)
-
set( LLVM_LINK_COMPONENTS
support
mc
@@ -9,6 +7,10 @@
c-arcmt-test.c
)
+target_link_libraries(c-arcmt-test
+ libclang
+ )
+
set_target_properties(c-arcmt-test
PROPERTIES
LINKER_LANGUAGE CXX)
diff --git a/clang/tools/c-index-test/CMakeLists.txt b/clang/tools/c-index-test/CMakeLists.txt
index c44b34b..743268c 100644
--- a/clang/tools/c-index-test/CMakeLists.txt
+++ b/clang/tools/c-index-test/CMakeLists.txt
@@ -1,5 +1,3 @@
-set(LLVM_USED_LIBS libclang)
-
set( LLVM_LINK_COMPONENTS
support
mc
@@ -9,6 +7,10 @@
c-index-test.c
)
+target_link_libraries(c-index-test
+ libclang
+ )
+
set_target_properties(c-index-test
PROPERTIES
LINKER_LANGUAGE CXX)
diff --git a/clang/tools/clang-check/CMakeLists.txt b/clang/tools/clang-check/CMakeLists.txt
index 851d6cd..9db8f1a 100644
--- a/clang/tools/clang-check/CMakeLists.txt
+++ b/clang/tools/clang-check/CMakeLists.txt
@@ -1,5 +1,8 @@
-set(LLVM_USED_LIBS clangTooling clangBasic)
-
add_clang_executable(clang-check
ClangCheck.cpp
)
+
+target_link_libraries(clang-check
+ clangTooling
+ clangBasic
+ )
diff --git a/clang/tools/diagtool/CMakeLists.txt b/clang/tools/diagtool/CMakeLists.txt
index d2ad735..6e2ae2d 100644
--- a/clang/tools/diagtool/CMakeLists.txt
+++ b/clang/tools/diagtool/CMakeLists.txt
@@ -2,13 +2,6 @@
support
)
-set( LLVM_USED_LIBS
- clangBasic
- clangLex
- clangSema
- clangFrontend
- )
-
add_clang_executable(diagtool
diagtool_main.cpp
DiagTool.cpp
@@ -21,6 +14,13 @@
ClangDiagnosticIndexName
)
+target_link_libraries(diagtool
+ clangBasic
+ clangLex
+ clangSema
+ clangFrontend
+ )
+
if(UNIX)
set(CLANGXX_LINK_OR_COPY create_symlink)
else()
diff --git a/clang/tools/driver/CMakeLists.txt b/clang/tools/driver/CMakeLists.txt
index ae49ac1..be4b909 100644
--- a/clang/tools/driver/CMakeLists.txt
+++ b/clang/tools/driver/CMakeLists.txt
@@ -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 @@
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)
diff --git a/clang/tools/libclang/CMakeLists.txt b/clang/tools/libclang/CMakeLists.txt
index 293dfa3..a1090fb 100644
--- a/clang/tools/libclang/CMakeLists.txt
+++ b/clang/tools/libclang/CMakeLists.txt
@@ -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 @@
../../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 @@
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