[llvm] [gn] put hlsl generated headers in hlsl/ subdirectory (PR #191513)

Nico Weber via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 10 13:21:30 PDT 2026


https://github.com/nico created https://github.com/llvm/llvm-project/pull/191513

Needed after 88af28072637, which populated the previously-empty hlsl_inline_intrinsics_gen.inc. (See also 627f6aa1cd930e6a8.)

>From 1ced7c0ad84bc77d469af3c3cfcde899769c400c Mon Sep 17 00:00:00 2001
From: Nico Weber <thakis at chromium.org>
Date: Fri, 10 Apr 2026 16:18:52 -0400
Subject: [PATCH] [gn] put hlsl generated headers in hlsl/ subdirectory

Needed after 88af28072637, which populated the previously-empty
hlsl_inline_intrinsics_gen.inc. (See also 627f6aa1cd930e6a8.)
---
 .../gn/secondary/clang/lib/Headers/BUILD.gn   | 22 ++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn b/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
index 462df075d1ee0..660af3befcff3 100644
--- a/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
+++ b/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
@@ -87,8 +87,6 @@ copy("tablegen_headers") {
     ":arm_sme",
     ":arm_sve",
     ":arm_vector_types",
-    ":hlsl_alias_intrinsics_gen",
-    ":hlsl_inline_intrinsics_gen",
     ":riscv_vector",
   ]
   sources = []
@@ -98,8 +96,26 @@ copy("tablegen_headers") {
   outputs = [ "$clang_resource_dir/include/{{source_file_part}}" ]
 }
 
+# These need a separate copy target since {{source_file_part}} would strip
+# the hlsl/ directory prefix.
+copy("hlsl_tablegen_headers") {
+  visibility = [ ":Headers" ]
+  deps = [
+    ":hlsl_alias_intrinsics_gen",
+    ":hlsl_inline_intrinsics_gen",
+  ]
+  sources = []
+  foreach(dep, deps) {
+    sources += get_target_outputs(dep)
+  }
+  outputs = [ "$clang_resource_dir/include/hlsl/{{source_file_part}}" ]
+}
+
 copy("Headers") {
-  deps = [ ":tablegen_headers" ]
+  deps = [
+    ":hlsl_tablegen_headers",
+    ":tablegen_headers",
+  ]
 
   sources = [
     "__clang_cuda_builtin_vars.h",



More information about the llvm-commits mailing list