aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2009-08-14 01:55:05 +0000
committerOscar Fuentes <ofv@wanadoo.es>2009-08-14 01:55:05 +0000
commit8ef01dc319e7fded113f9e2748ca0e5c2bb602d4 (patch)
tree5e0cc18ec37648db8f28cf6b1a42890cf61e4de8
parenta1efbbdbf3217598f334a6f39dab84ca06f5de41 (diff)
CMake: build llvm-config before the other tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78975 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--tools/CMakeLists.txt7
-rw-r--r--tools/llvm-config/CMakeLists.txt6
2 files changed, 12 insertions, 1 deletions
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 5dcfebaa72..40bf692439 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -3,7 +3,12 @@
# in parallel builds. Please retain this ordering.
if( NOT MSVC )
- add_subdirectory(llvm-config)
+ # It is useful to build llvm-config before the other tools, so we
+ # have a fresh LibDeps.txt for regenerating the hard-coded library
+ # dependencies. llvm-config/CMakeLists.txt takes care of this but we
+ # must keep llvm-config as the first entry on the list of tools to
+ # be built.
+ add_subdirectory(llvm-config)
endif()
add_subdirectory(opt)
diff --git a/tools/llvm-config/CMakeLists.txt b/tools/llvm-config/CMakeLists.txt
index 08074be8dc..03fe66b668 100644
--- a/tools/llvm-config/CMakeLists.txt
+++ b/tools/llvm-config/CMakeLists.txt
@@ -113,6 +113,12 @@ add_custom_target(llvm-config.target ALL
add_dependencies(llvm-config.target ${llvm_lib_targets})
+# Make sure that llvm-config builds before the llvm tools, so we have
+# LibDeps.txt and can use it for updating the hard-coded library
+# dependencies on cmake/modules/LLVMLibDeps.cmake when the tools'
+# build fail due to outdated dependencies:
+set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} llvm-config.target)
+
install(FILES ${LLVM_CONFIG}
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE
WORLD_READ WORLD_EXECUTE