llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-libunwind Author: Louis Dionne (ldionne) <details> <summary>Changes</summary> This patch adds an installation step where we install libc++ in a fake installation tree before testing libunwind. This is necessary because some configurations (in particular "generic-merged") require libc++ to be installed, since the libunwind tests are actually linking libc++.so in which libc++abi.a and libunwind.a have been merged. --- Full diff: https://github.com/llvm/llvm-project/pull/171474.diff 2 Files Affected: - (modified) libunwind/CMakeLists.txt (+3) - (modified) libunwind/test/CMakeLists.txt (+22-1) ``````````diff diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt index 97edff0b87ea3..fbef71f3f7446 100644 --- a/libunwind/CMakeLists.txt +++ b/libunwind/CMakeLists.txt @@ -336,6 +336,9 @@ if (RUNTIMES_EXECUTE_ONLY_CODE) add_compile_definitions(_LIBUNWIND_EXECUTE_ONLY_CODE) endif() +add_custom_target(unwind-test-depends + COMMENT "Build dependencies required to run the libunwind test suite.") + #=============================================================================== # Setup Source Code #=============================================================================== diff --git a/libunwind/test/CMakeLists.txt b/libunwind/test/CMakeLists.txt index c222c0bdbf5af..815bc86692860 100644 --- a/libunwind/test/CMakeLists.txt +++ b/libunwind/test/CMakeLists.txt @@ -9,6 +9,26 @@ macro(pythonize_bool var) endmacro() set(LIBUNWIND_TESTING_INSTALL_PREFIX "${LIBUNWIND_BINARY_DIR}/test-suite-install") +add_custom_target(libunwind-install-cxx-for-testing + DEPENDS cxx-headers + cxx + cxx_experimental + cxx-modules + COMMAND ${CMAKE_COMMAND} -E make_directory "${LIBUNWIND_TESTING_INSTALL_PREFIX}" + COMMAND "${CMAKE_COMMAND}" + -DCMAKE_INSTALL_COMPONENT=cxx-headers + -DCMAKE_INSTALL_PREFIX="${LIBUNWIND_TESTING_INSTALL_PREFIX}" + -P "${CMAKE_BINARY_DIR}/cmake_install.cmake" + COMMAND "${CMAKE_COMMAND}" + -DCMAKE_INSTALL_COMPONENT=cxx-modules + -DCMAKE_INSTALL_PREFIX="${LIBUNWIND_TESTING_INSTALL_PREFIX}" + -P "${CMAKE_BINARY_DIR}/cmake_install.cmake" + COMMAND "${CMAKE_COMMAND}" + -DCMAKE_INSTALL_COMPONENT=cxx + -DCMAKE_INSTALL_PREFIX="${LIBUNWIND_TESTING_INSTALL_PREFIX}" + -P "${CMAKE_BINARY_DIR}/cmake_install.cmake") +add_dependencies(unwind-test-depends libunwind-install-cxx-for-testing) + add_custom_target(libunwind-install-unwind-for-testing DEPENDS unwind-headers unwind @@ -21,6 +41,7 @@ add_custom_target(libunwind-install-unwind-for-testing -DCMAKE_INSTALL_COMPONENT=unwind -DCMAKE_INSTALL_PREFIX="${LIBUNWIND_TESTING_INSTALL_PREFIX}" -P "${CMAKE_BINARY_DIR}/cmake_install.cmake") +add_dependencies(unwind-test-depends libunwind-install-unwind-for-testing) pythonize_bool(LIBUNWIND_ENABLE_CET) pythonize_bool(LIBUNWIND_ENABLE_GCS) @@ -62,4 +83,4 @@ configure_lit_site_cfg( add_lit_testsuite(check-unwind "Running libunwind tests" ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS libunwind-install-unwind-for-testing) + DEPENDS unwind-test-depends) `````````` </details> https://github.com/llvm/llvm-project/pull/171474 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
