[PATCH] D96889: [gn build] make WindowsManifestMerger.cpp build fine with sysroot

Nico Weber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 17 12:03:57 PST 2021


This revision was automatically updated to reflect the committed changes.
Closed by commit rG0dd2ffb3921c: [gn build] make WindowsManifestMerger.cpp build fine with sysroot (authored by thakis).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D96889/new/

https://reviews.llvm.org/D96889

Files:
  llvm/utils/gn/build/BUILD.gn
  llvm/utils/gn/build/libs/xml/BUILD.gn
  llvm/utils/gn/build/sysroot.gni


Index: llvm/utils/gn/build/sysroot.gni
===================================================================
--- /dev/null
+++ llvm/utils/gn/build/sysroot.gni
@@ -0,0 +1,4 @@
+declare_args() {
+  # Path of sysroot to use.
+  sysroot = ""
+}
Index: llvm/utils/gn/build/libs/xml/BUILD.gn
===================================================================
--- llvm/utils/gn/build/libs/xml/BUILD.gn
+++ llvm/utils/gn/build/libs/xml/BUILD.gn
@@ -1,5 +1,6 @@
 import("//llvm/utils/gn/build/libs/xml/enable.gni")
 import("//llvm/utils/gn/build/mac_sdk.gni")
+import("//llvm/utils/gn/build/sysroot.gni")
 
 config("xml_config") {
   visibility = [ ":xml" ]
@@ -7,7 +8,7 @@
   if (host_os == "mac") {
     include_dirs = [ "$mac_sdk_path/usr/include/libxml2" ]
   } else {
-    include_dirs = [ "/usr/include/libxml2" ]
+    include_dirs = [ "$sysroot/usr/include/libxml2" ]
   }
 }
 
Index: llvm/utils/gn/build/BUILD.gn
===================================================================
--- llvm/utils/gn/build/BUILD.gn
+++ llvm/utils/gn/build/BUILD.gn
@@ -1,5 +1,6 @@
 import("//llvm/utils/gn/build/buildflags.gni")
 import("//llvm/utils/gn/build/mac_sdk.gni")
+import("//llvm/utils/gn/build/sysroot.gni")
 import("//llvm/utils/gn/build/toolchain/compiler.gni")
 import("//llvm/utils/gn/build/toolchain/target_flags.gni")
 
@@ -22,9 +23,6 @@
 
   # The version of host gcc. Ignored if is_clang is true.
   gcc_version = 9
-
-  # Path of sysroot to use.
-  sysroot = ""
 }
 
 assert(!llvm_build_instrumented_coverage || is_clang,
@@ -292,6 +290,9 @@
       cflags += [ "/winsysroot" + rebase_path(sysroot, root_build_dir) ]
     } else {
       cflags += [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ]
+      if (is_clang) {
+        cflags += [ "-Wpoison-system-directories"]
+      }
     }
   }
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D96889.324385.patch
Type: text/x-patch
Size: 1801 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210217/b7689d1f/attachment.bin>


More information about the llvm-commits mailing list