From 3fbc9c7b51e427a549109f092d3a822b70e1e679 Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Wed, 15 Apr 2020 15:05:14 -0400 Subject: [PATCH] [libc++] Add a new target check-cxx-deps to build dependencies of the test suite When running the tests through `lit` directly instead of through `check-cxx`, it is required to manually build the `cxx` (and often `cxx_experimental`) targets. Instead of having to do that manually, this commit adds a new target `check-cxx-deps` that does that for you. --- libcxx/docs/TestingLibcxx.rst | 5 ++++- libcxx/test/CMakeLists.txt | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/libcxx/docs/TestingLibcxx.rst b/libcxx/docs/TestingLibcxx.rst index 683d5e0..b70cf2e 100644 --- a/libcxx/docs/TestingLibcxx.rst +++ b/libcxx/docs/TestingLibcxx.rst @@ -25,11 +25,14 @@ Usage ----- After building libc++, you can run parts of the libc++ test suite by simply -running ``llvm-lit`` on a specified test or directory. For example: +running ``llvm-lit`` on a specified test or directory. If you're unsure +whether the required libraries have been built, you can use the +`check-cxx-deps` target. For example: .. code-block:: bash $ cd + $ make -C check-cxx-deps # If you want to make sure the targets get rebuilt $ /bin/llvm-lit -sv libcxx/test/std/re # Run all of the std::regex tests $ /bin/llvm-lit -sv libcxx/test/std/depr/depr.c.headers/stdlib_h.pass.cpp # Run a single test $ /bin/llvm-lit -sv libcxx/test/std/atomics libcxx/test/std/threads # Test std::thread and std::atomic diff --git a/libcxx/test/CMakeLists.txt b/libcxx/test/CMakeLists.txt index 9b579f7..5068cbd 100644 --- a/libcxx/test/CMakeLists.txt +++ b/libcxx/test/CMakeLists.txt @@ -109,10 +109,14 @@ if (LIBCXX_INCLUDE_TESTS) ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg) + add_custom_target(check-cxx-deps + DEPENDS cxx ${LIBCXX_TEST_DEPS} + COMMENT "Builds dependencies required to run the test suite.") + add_lit_testsuite(check-cxx "Running libcxx tests" ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS cxx ${LIBCXX_TEST_DEPS}) + DEPENDS check-cxx-deps) endif() if (LIBCXX_GENERATE_COVERAGE) -- 2.7.4