diff options
author | Petr Hosek <phosek@google.com> | 2022-05-14 02:23:52 +0000 |
---|---|---|
committer | Petr Hosek <phosek@google.com> | 2022-05-14 03:49:09 +0000 |
commit | 6f5f847a36af2f2e9dfce4ed99f1a243161c7d5d (patch) | |
tree | 910757c0918d41d30dce46ef00da3ceee6a3ea85 /libcxxabi/include | |
parent | acbad5086af3ab94a59d1428c4116a192c10fb49 (diff) | |
download | llvm-6f5f847a36af2f2e9dfce4ed99f1a243161c7d5d.tar.gz |
[libcxxabi] Copy headers into build location
Prior to D120727, the libcxx build was responsible for copying libcxxabi
headers into the right location, both in the build and install trees,
but now it's the responsibility of the libcxxabi build. While the build
already did the right thing for the install tree, it wouldn't copy
headers into the build tree, resulting in errors when trying to use the
just built toolchain as is the case in the runtimes build when building
compiler-rt runtimes.
Differential Revision: https://reviews.llvm.org/D125597
Diffstat (limited to 'libcxxabi/include')
-rw-r--r-- | libcxxabi/include/CMakeLists.txt | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libcxxabi/include/CMakeLists.txt b/libcxxabi/include/CMakeLists.txt index 0deb7b1eb9e7..5b1cc2545016 100644 --- a/libcxxabi/include/CMakeLists.txt +++ b/libcxxabi/include/CMakeLists.txt @@ -3,7 +3,20 @@ set(files cxxabi.h ) +foreach(f ${files}) + set(src "${CMAKE_CURRENT_SOURCE_DIR}/${f}") + set(dst "${LIBCXXABI_GENERATED_INCLUDE_DIR}/${f}") + add_custom_command(OUTPUT ${dst} + DEPENDS ${src} + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst} + COMMENT "Copying CXXABI header ${f}") + list(APPEND _all_includes "${dst}") +endforeach() + +add_custom_target(generate-cxxabi-headers ALL DEPENDS ${_all_includes}) + add_library(cxxabi-headers INTERFACE) +add_dependencies(cxxabi-headers generate-cxxabi-headers) target_include_directories(cxxabi-headers INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}") if (LIBCXXABI_INSTALL_HEADERS) |