diff --git a/libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake b/libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake --- a/libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake +++ b/libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake @@ -124,7 +124,12 @@ 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") + if (DEFINED LIBCXX_LIT_ARGS) + # libc++-specific LIT args always win over generic LIT args + set(LLVM_LIT_ARGS "${LIBCXX_LIT_ARGS}") + endif() + set(LIBCXX_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "libc++-specific options for lit") + set(LLVM_LIT_ARGS "${LIBCXX_LIT_ARGS}" CACHE STRING "Default options for lit") endif() # Required doc configuration diff --git a/libcxxabi/cmake/Modules/HandleOutOfTreeLLVM.cmake b/libcxxabi/cmake/Modules/HandleOutOfTreeLLVM.cmake --- a/libcxxabi/cmake/Modules/HandleOutOfTreeLLVM.cmake +++ b/libcxxabi/cmake/Modules/HandleOutOfTreeLLVM.cmake @@ -124,7 +124,13 @@ 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") + + if (DEFINED LIBCXXABI_LIT_ARGS) + # libc++abi-specific LIT args always win over generic LIT args + set(LLVM_LIT_ARGS "${LIBCXXABI_LIT_ARGS}") + endif() + set(LIBCXXABI_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "libc++abi-specific options for lit") + set(LLVM_LIT_ARGS "${LIBCXXABI_LIT_ARGS}" CACHE STRING "Default options for lit") endif() # Required doc configuration diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt --- a/libunwind/CMakeLists.txt +++ b/libunwind/CMakeLists.txt @@ -102,7 +102,13 @@ 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") + + if (DEFINED LIBUNWIND_LIT_ARGS) + # libunwind-specific LIT args always win over generic LIT args + set(LLVM_LIT_ARGS "${LIBUNWIND_LIT_ARGS}") + endif() + set(LIBUNWIND_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "libunwind-specific options for lit") + set(LLVM_LIT_ARGS "${LIBUNWIND_LIT_ARGS}" CACHE STRING "Default options for lit") # On Win32 hosts, provide an option to specify the path to the GnuWin32 tools. if (WIN32 AND NOT CYGWIN)