[cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available
Use the new --cmakedir option to obtain LLVM_CMAKE_PATH straight from llvm-config. Fallback to local reconstruction if llvm-config does not support this option. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@291508 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -38,7 +38,18 @@ macro(find_llvm_parts)
|
|||||||
set(LLVM_INCLUDE_DIR ${INCLUDE_DIR} CACHE PATH "Path to llvm/include")
|
set(LLVM_INCLUDE_DIR ${INCLUDE_DIR} CACHE PATH "Path to llvm/include")
|
||||||
set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree")
|
set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree")
|
||||||
set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree")
|
set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree")
|
||||||
set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm")
|
|
||||||
|
# --cmakedir is supported since llvm r291218 (4.0 release)
|
||||||
|
execute_process(
|
||||||
|
COMMAND ${LLVM_CONFIG_PATH} --cmakedir
|
||||||
|
RESULT_VARIABLE HAD_ERROR
|
||||||
|
OUTPUT_VARIABLE CONFIG_OUTPUT)
|
||||||
|
if(NOT HAD_ERROR)
|
||||||
|
string(STRIP "${CONFIG_OUTPUT}" LLVM_CMAKE_PATH)
|
||||||
|
else()
|
||||||
|
set(LLVM_CMAKE_PATH
|
||||||
|
"${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm")
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
set(LLVM_FOUND OFF)
|
set(LLVM_FOUND OFF)
|
||||||
message(WARNING "UNSUPPORTED LIBCXX CONFIGURATION DETECTED: "
|
message(WARNING "UNSUPPORTED LIBCXX CONFIGURATION DETECTED: "
|
||||||
|
|||||||
Reference in New Issue
Block a user