Index: libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake =================================================================== --- libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake +++ libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake @@ -111,14 +111,17 @@ # the configurator should write the script into. set(LLVM_LIT_OUTPUT_DIR "${libcxx_BINARY_DIR}/bin") - # Required LIT Configuration ------------------------------------------------ - # Define the default arguments to use with 'lit', and an option for the user - # to override. - set(LIT_ARGS_DEFAULT "-sv --show-xfail --show-unsupported") - if (MSVC OR XCODE) - set(LIT_ARGS_DEFAULT "${LIT_ARGS_DEFAULT} --no-progress-bar") + if (LLVM_INCLUDE_TESTS) + # Required LIT Configuration ------------------------------------------------ + # Define the default arguments to use with 'lit', and an option for the user + # to override. + set(LLVM_EXTERNAL_LIT "${LLVM_MAIN_SRC_DIR}/utils/lit/lit.py") + set(LIT_ARGS_DEFAULT "-sv --show-xfail --show-unsupported") + if (MSVC OR XCODE) + set(LIT_ARGS_DEFAULT "${LIT_ARGS_DEFAULT} --no-progress-bar") + endif() + set(LLVM_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "Default options for lit") endif() - set(LLVM_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "Default options for lit") # Required doc configuration if (LLVM_ENABLE_SPHINX) Index: llvm/cmake/modules/AddLLVM.cmake =================================================================== --- llvm/cmake/modules/AddLLVM.cmake +++ llvm/cmake/modules/AddLLVM.cmake @@ -1198,7 +1198,12 @@ cmake_parse_arguments(ARG "ALLOW_EXTERNAL" "" "" ${ARGN}) if (ARG_ALLOW_EXTERNAL) + set(LLVM_DEFAULT_EXTERNAL_LIT "${LLVM_EXTERNAL_LIT}") set (LLVM_EXTERNAL_LIT "" CACHE STRING "Command used to spawn lit") + if ("${LLVM_EXTERNAL_LIT}" STREQUAL "") + set(LLVM_EXTERNAL_LIT "${LLVM_DEFAULT_EXTERNAL_LIT}") + endif() + if (NOT "${LLVM_EXTERNAL_LIT}" STREQUAL "") if (EXISTS ${LLVM_EXTERNAL_LIT}) get_filename_component(LIT_FILE_NAME ${LLVM_EXTERNAL_LIT} NAME) @@ -1230,9 +1235,7 @@ elseif(NOT "${LLVM_RUNTIME_OUTPUT_INTDIR}" STREQUAL "") set(LLVM_LIT_BASE_DIR ${LLVM_RUNTIME_OUTPUT_INTDIR}) else() - message(WARNING "Could not find suitable output location for llvm-lit." - "Using default ${CMAKE_CURRENT_BINARY_DIR}/llvm-lit") - set(LLVM_LIT_BASE_DIR ${CMAKE_CURRENT_BINARY_DIR}/llvm-lit) + set(LLVM_LIT_BASE_DIR "") endif() # Cache this so we don't have to do it again and have subsequent calls