Index: libcxx/trunk/CMakeLists.txt =================================================================== --- libcxx/trunk/CMakeLists.txt +++ libcxx/trunk/CMakeLists.txt @@ -22,7 +22,7 @@ # Find the LLVM sources and simulate LLVM CMake options. include(HandleOutOfTreeLLVM) -if (LIBCXX_BUILT_STANDALONE) +if (LIBCXX_STANDALONE_BUILD) project(libcxx CXX C) set(PACKAGE_NAME libcxx) @@ -31,7 +31,7 @@ set(PACKAGE_BUGREPORT "llvm-bugs@lists.llvm.org") endif() -if (LIBCXX_BUILT_STANDALONE AND NOT LLVM_FOUND) +if (LIBCXX_STANDALONE_BUILD AND NOT LLVM_FOUND) message(WARNING "UNSUPPORTED LIBCXX CONFIGURATION DETECTED: " "llvm-config not found and LLVM_PATH not defined.\n" "Reconfigure with -DLLVM_CONFIG=path/to/llvm-config " @@ -81,7 +81,7 @@ # Setup the default options if LIBCXX_CXX_ABI is not specified. if (NOT LIBCXX_CXX_ABI) - if (NOT DEFINED LIBCXX_BUILT_STANDALONE AND + if (NOT DEFINED LIBCXX_STANDALONE_BUILD AND IS_DIRECTORY "${CMAKE_SOURCE_DIR}/projects/libcxxabi") set(LIBCXX_CXX_ABI_LIBNAME "libcxxabi") set(LIBCXX_CXX_ABI_INCLUDE_PATHS "${CMAKE_SOURCE_DIR}/projects/libcxxabi/include") @@ -367,9 +367,9 @@ # Sanitizer flags ============================================================= -# Configure for sanitizers. If LIBCXX_BUILT_STANDALONE then we have to do +# Configure for sanitizers. If LIBCXX_STANDALONE_BUILD then we have to do # the flag translation ourselves. Othewise LLVM's CMakeList.txt will handle it. -if (LIBCXX_BUILT_STANDALONE) +if (LIBCXX_STANDALONE_BUILD) set(LLVM_USE_SANITIZER "" CACHE STRING "Define the sanitizer used to build the library and tests") # NOTE: LLVM_USE_SANITIZER checks for a UNIX like system instead of MSVC. Index: libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake =================================================================== --- libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake +++ libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake @@ -1,15 +1,17 @@ macro(find_llvm_parts) # Rely on llvm-config. set(CONFIG_OUTPUT) - find_program(LLVM_CONFIG "llvm-config") + if(NOT LLVM_CONFIG_PATH) + find_program(LLVM_CONFIG_PATH "llvm-config") + endif() if(DEFINED LLVM_PATH) set(LLVM_INCLUDE_DIR ${LLVM_INCLUDE_DIR} CACHE PATH "Path to llvm/include") set(LLVM_PATH ${LLVM_PATH} CACHE PATH "Path to LLVM source tree") set(LLVM_MAIN_SRC_DIR ${LLVM_PATH}) set(LLVM_CMAKE_PATH "${LLVM_PATH}/cmake/modules") - elseif(LLVM_CONFIG) - message(STATUS "Found LLVM_CONFIG as ${LLVM_CONFIG}") - set(CONFIG_COMMAND ${LLVM_CONFIG} + elseif(LLVM_CONFIG_PATH) + message(STATUS "Found LLVM_CONFIG_PATH as ${LLVM_CONFIG_PATH}") + set(CONFIG_COMMAND ${LLVM_CONFIG_PATH} "--includedir" "--prefix" "--src-root") @@ -60,8 +62,8 @@ endmacro(find_llvm_parts) -if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) - set(LIBCXX_BUILT_STANDALONE 1) +if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD) + set(LIBCXX_STANDALONE_BUILD 1) message(STATUS "Configuring for standalone build.") find_llvm_parts() Index: libcxx/trunk/test/CMakeLists.txt =================================================================== --- libcxx/trunk/test/CMakeLists.txt +++ libcxx/trunk/test/CMakeLists.txt @@ -1,3 +1,5 @@ +include(AddLLVM) # for add_lit_testsuite + macro(pythonize_bool var) if (${var}) set(${var} True)