[llvm] 3a085e9 - [gn] use write_cmake_config() for __assertion_handler

Nico Weber via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 30 07:16:04 PST 2024


Author: Nico Weber
Date: 2024-01-30T10:11:50-05:00
New Revision: 3a085e98ac1277834d99f4f4ce0d5c95fccb9092

URL: https://github.com/llvm/llvm-project/commit/3a085e98ac1277834d99f4f4ce0d5c95fccb9092
DIFF: https://github.com/llvm/llvm-project/commit/3a085e98ac1277834d99f4f4ce0d5c95fccb9092.diff

LOG: [gn] use write_cmake_config() for __assertion_handler

Added: 
    

Modified: 
    llvm/utils/gn/secondary/libcxx/include/BUILD.gn

Removed: 
    


################################################################################
diff  --git a/llvm/utils/gn/secondary/libcxx/include/BUILD.gn b/llvm/utils/gn/secondary/libcxx/include/BUILD.gn
index a797593362cc..d516e6ac1ba5 100644
--- a/llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+++ b/llvm/utils/gn/secondary/libcxx/include/BUILD.gn
@@ -66,9 +66,13 @@ if (current_toolchain == default_toolchain) {
     values = []
   }
 
-  copy("write_assertion_handler") {
-    sources = [ "//libcxx/vendor/llvm/default_assertion_handler.in" ]
-    outputs = [ "$libcxx_generated_include_dir/__assertion_handler" ]
+  # This uses write_cmake_config() instead of a normal copy() rule because
+  # copy() uses `sources`, and if there's more than one `sources` in a file,
+  # sync_source_lists_from_cmake.py can't auto-sync changes.
+  write_cmake_config("write_assertion_handler") {
+    input = "//libcxx/vendor/llvm/default_assertion_handler.in"
+    output = "$libcxx_generated_include_dir/__assertion_handler"
+    values = []
   }
 
   copy("copy_headers") {


        


More information about the llvm-commits mailing list