[PATCH] D43797: [CMake] Copy the generated __config header into build directory
Petr Hosek via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 9 17:22:42 PST 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rL327194: [CMake] Copy the generated __config header into build directory (authored by phosek, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
https://reviews.llvm.org/D43797?vs=136015&id=137880#toc
Repository:
rL LLVM
https://reviews.llvm.org/D43797
Files:
libcxx/trunk/include/CMakeLists.txt
libcxx/trunk/lib/CMakeLists.txt
Index: libcxx/trunk/include/CMakeLists.txt
===================================================================
--- libcxx/trunk/include/CMakeLists.txt
+++ libcxx/trunk/include/CMakeLists.txt
@@ -2,6 +2,23 @@
set(LIBCXX_SUPPORT_HEADER_PATTERN PATTERN "support" EXCLUDE)
endif()
+if (LIBCXX_NEEDS_SITE_CONFIG)
+ # Generate a custom __config header. The new header is created
+ # by prepending __config_site to the current __config header.
+ add_custom_command(OUTPUT ${LIBCXX_BINARY_DIR}/__generated_config
+ COMMAND ${PYTHON_EXECUTABLE} ${LIBCXX_SOURCE_DIR}/utils/cat_files.py
+ ${LIBCXX_BINARY_DIR}/__config_site
+ ${LIBCXX_SOURCE_DIR}/include/__config
+ -o ${LIBCXX_BINARY_DIR}/__generated_config
+ DEPENDS ${LIBCXX_SOURCE_DIR}/include/__config
+ ${LIBCXX_BINARY_DIR}/__config_site
+ )
+ # Add a target that executes the generation commands.
+ add_custom_target(generate_config_header ALL
+ DEPENDS ${LIBCXX_BINARY_DIR}/__generated_config)
+ set(generated_config_deps generate_config_header)
+endif()
+
set(LIBCXX_HEADER_PATTERN
PATTERN "*"
PATTERN "CMakeLists.txt" EXCLUDE
@@ -16,6 +33,15 @@
FILES_MATCHING
${LIBCXX_HEADER_PATTERN}
)
+
+ if (LIBCXX_NEEDS_SITE_CONFIG)
+ # Copy the generated header as __config into build directory.
+ add_custom_command(
+ TARGET generate_config_header POST_BUILD
+ COMMAND ${CMAKE_COMMAND} -E copy
+ ${LIBCXX_BINARY_DIR}/__generated_config
+ ${LLVM_BINARY_DIR}/include/c++/v1/__config)
+ endif()
endif()
if (LIBCXX_INSTALL_HEADERS)
@@ -28,20 +54,6 @@
)
if (LIBCXX_NEEDS_SITE_CONFIG)
- # Generate and install a custom __config header. The new header is created
- # by prepending __config_site to the current __config header.
- add_custom_command(OUTPUT ${LIBCXX_BINARY_DIR}/__generated_config
- COMMAND ${PYTHON_EXECUTABLE} ${LIBCXX_SOURCE_DIR}/utils/cat_files.py
- ${LIBCXX_BINARY_DIR}/__config_site
- ${LIBCXX_SOURCE_DIR}/include/__config
- -o ${LIBCXX_BINARY_DIR}/__generated_config
- DEPENDS ${LIBCXX_SOURCE_DIR}/include/__config
- ${LIBCXX_BINARY_DIR}/__config_site
- )
- # Add a target that executes the generation commands.
- add_custom_target(generate_config_header ALL
- DEPENDS ${LIBCXX_BINARY_DIR}/__generated_config)
- set(generated_config_deps generate_config_header)
# Install the generated header as __config.
install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1
Index: libcxx/trunk/lib/CMakeLists.txt
===================================================================
--- libcxx/trunk/lib/CMakeLists.txt
+++ libcxx/trunk/lib/CMakeLists.txt
@@ -283,7 +283,7 @@
endif()
# Add a meta-target for both libraries.
-add_custom_target(cxx DEPENDS ${LIBCXX_TARGETS})
+add_custom_target(cxx DEPENDS ${LIBCXX_TARGETS} ${generated_config_deps})
if (LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY)
file(GLOB LIBCXX_EXPERIMENTAL_SOURCES ../src/experimental/*.cpp)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43797.137880.patch
Type: text/x-patch
Size: 3074 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180310/0a10267f/attachment.bin>
More information about the cfe-commits
mailing list