diff options
author | Petr Hosek <phosek@google.com> | 2022-08-18 08:25:13 +0000 |
---|---|---|
committer | Petr Hosek <phosek@google.com> | 2022-08-24 08:01:58 +0000 |
commit | 992e10a3fce41255e4b11782f51d0f4b26dca14d (patch) | |
tree | 0b198b76109035a0ea0eb31e7f878d8dd6e5c992 /runtimes | |
parent | b52820edec6f3d95edef7859a56ef30878b08382 (diff) | |
download | llvm-992e10a3fce41255e4b11782f51d0f4b26dca14d.zip llvm-992e10a3fce41255e4b11782f51d0f4b26dca14d.tar.gz llvm-992e10a3fce41255e4b11782f51d0f4b26dca14d.tar.bz2 |
[runtimes] Use a response file for runtimes test suites
We don't know which test suites are going to be included by runtimes
builds so we cannot include those before running the sub-build, but
that's not possible during the LLVM build configuration. We instead use
a response file that's populated by the runtimes build as a level of
indirection.
This addresses the issue described in:
https://discourse.llvm.org/t/cmake-regeneration-is-broken/62788
Differential Revision: https://reviews.llvm.org/D132438
Diffstat (limited to 'runtimes')
-rw-r--r-- | runtimes/CMakeLists.txt | 10 | ||||
-rw-r--r-- | runtimes/Tests.cmake.in | 3 |
2 files changed, 4 insertions, 9 deletions
diff --git a/runtimes/CMakeLists.txt b/runtimes/CMakeLists.txt index cea287f..8bc3163 100644 --- a/runtimes/CMakeLists.txt +++ b/runtimes/CMakeLists.txt @@ -244,14 +244,12 @@ if(LLVM_INCLUDE_TESTS) ${CMAKE_CURRENT_BINARY_DIR}/llvm-lit) endif() + get_property(LLVM_RUNTIMES_LIT_TESTSUITES GLOBAL PROPERTY LLVM_RUNTIMES_LIT_TESTSUITES) + string(REPLACE ";" "\n" LLVM_RUNTIMES_LIT_TESTSUITES "${LLVM_RUNTIMES_LIT_TESTSUITES}") if(LLVM_RUNTIMES_TARGET) - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/Tests.cmake.in - ${LLVM_BINARY_DIR}/runtimes/${LLVM_RUNTIMES_TARGET}/Tests.cmake) + file(WRITE ${LLVM_BINARY_DIR}/runtimes/${LLVM_RUNTIMES_TARGET}/Tests.rsp ${LLVM_RUNTIMES_LIT_TESTSUITES}) else() - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/Tests.cmake.in - ${LLVM_BINARY_DIR}/runtimes/Tests.cmake) + file(WRITE ${LLVM_BINARY_DIR}/runtimes/Tests.rsp ${LLVM_RUNTIMES_LIT_TESTSUITES}) endif() endif() diff --git a/runtimes/Tests.cmake.in b/runtimes/Tests.cmake.in deleted file mode 100644 index 8108349..0000000 --- a/runtimes/Tests.cmake.in +++ /dev/null @@ -1,3 +0,0 @@ -set(SUB_LIT_TESTSUITES @LLVM_RUNTIMES_LIT_TESTSUITES@) -set(SUB_LIT_PARAMS @LLVM_RUNTIMES_LIT_PARAMS@) -set(SUB_LIT_EXTRA_ARGS @LLVM_RUNTIMES_LIT_EXTRA_ARGS@) |