summaryrefslogtreecommitdiffstats
path: root/lld/CMakeLists.txt
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2013-08-23 18:18:13 +0000
committerHans Wennborg <hans@hanshq.net>2013-08-23 18:18:13 +0000
commit306db8f3fa48419df8f740b2cf73e7cc9a489298 (patch)
tree198d93b816be85b9d8f155d084d9526eff500391 /lld/CMakeLists.txt
parentf135e3534cdfa1191bb424ef6c4b625aa8a42066 (diff)
downloadbcm5719-llvm-306db8f3fa48419df8f740b2cf73e7cc9a489298.tar.gz
bcm5719-llvm-306db8f3fa48419df8f740b2cf73e7cc9a489298.zip
CMake: Don't look for llvm-tblgen when building outside LLVM tree
Previously, the CMake build would look for llvm-tblgen to determine if a directory is an LLVM build or install directory. Since we don't want to include llvm-tblgen in the install, look for llvm-config instead, and use that to find llvm-tblgen. (This is the lld equivalent of Clang r189127.) llvm-svn: 189128
Diffstat (limited to 'lld/CMakeLists.txt')
-rw-r--r--lld/CMakeLists.txt13
1 files changed, 9 insertions, 4 deletions
diff --git a/lld/CMakeLists.txt b/lld/CMakeLists.txt
index 3a5622e2873..a5647cb3a95 100644
--- a/lld/CMakeLists.txt
+++ b/lld/CMakeLists.txt
@@ -43,13 +43,18 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
"${LLVM_MAIN_INCLUDE_DIR}")
link_directories("${PATH_TO_LLVM_BUILD}/lib")
- if( EXISTS "${LLD_PATH_TO_LLVM_BUILD}/bin/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}" )
- set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}")
- else()
+ if (EXISTS "${LLD_PATH_TO_LLVM_BUILD}/bin/llvm-config${CMAKE_EXECUTABLE_SUFFIX}")
+ set (PATH_TO_LLVM_CONFIG "${LLD_PATH_TO_LLVM_BUILD}/bin/llvm-config${CMAKE_EXECUTABLE_SUFFIX}")
+ elseif (EXISTS "${LLD_PATH_TO_LLVM_BUILD}/bin/Debug/llvm-config${CMAKE_EXECUTABLE_SUFFIX}")
# FIXME: This is an utter hack.
- set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/Debug/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}")
+ set (PATH_TO_LLVM_CONFIG "${LLD_PATH_TO_LLVM_BUILD}/bin/Debug/llvm-config${CMAKE_EXECUTABLE_SUFFIX}")
+ else()
+ message(FATAL_ERROR "Please set LLD_PATH_TO_LLVM_BUILD to a directory containing a LLVM build.")
endif()
+ exec_program("${PATH_TO_LLVM_CONFIG} --bindir" OUTPUT_VARIABLE LLVM_BINARY_DIR)
+ set(LLVM_TABLEGEN_EXE "${LLVM_BINARY_DIR}/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}")
+
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
OpenPOWER on IntegriCloud