Ignore system include dirs for bindgen rust_bindgen reaches out to system local include dirs such as /usr/include with high priority. This causes build failures when system has broken/missing headers. The solution is to always add `-nostdinc` to ignore them. Change-Id: I81370f072013518722d9213ad148d6b78eccffd6
diff --git a/gbl/libavb/BUILD.avb.bazel b/gbl/libavb/BUILD.avb.bazel index 0e8117b..bc709a6 100644 --- a/gbl/libavb/BUILD.avb.bazel +++ b/gbl/libavb/BUILD.avb.bazel
@@ -60,6 +60,7 @@ ".", "libavb/sha/", ], + deps = ["@gbl//libavb:gbl_deps"], ) cc_library( @@ -158,7 +159,10 @@ clang_flags = select({ "@gbl//toolchain:gbl_rust_uefi_x86_32": ["-m32"], "//conditions:default": ["-m64"], - }) + ["-I{}".format(LLVM_PREBUILTS_C_INCLUDE)], + }) + [ + "-I{}".format(LLVM_PREBUILTS_C_INCLUDE), + "-nostdinc", + ], header = "libavb/libavb.h", )
diff --git a/gbl/libbootimg/BUILD b/gbl/libbootimg/BUILD index 2a6dc85..7299022 100644 --- a/gbl/libbootimg/BUILD +++ b/gbl/libbootimg/BUILD
@@ -71,6 +71,7 @@ }) + [ "-x", "c++", + "-nostdinc", ], header = "@mkbootimg//:include/bootimg/bootimg.h", )
diff --git a/gbl/libefi/BUILD b/gbl/libefi/BUILD index ee4ae1e..0c75174 100644 --- a/gbl/libefi/BUILD +++ b/gbl/libefi/BUILD
@@ -76,7 +76,10 @@ clang_flags = select({ "@gbl//toolchain:gbl_rust_uefi_x86_32": ["-m32"], "//conditions:default": ["-m64"], - }) + ["-I{}".format(LLVM_PREBUILTS_C_INCLUDE)], + }) + [ + "-I{}".format(LLVM_PREBUILTS_C_INCLUDE), + "-nostdinc", + ], header = "defs/efi.h", )
diff --git a/gbl/libfdt/BUILD b/gbl/libfdt/BUILD index e5de3cb..a2b1814 100644 --- a/gbl/libfdt/BUILD +++ b/gbl/libfdt/BUILD
@@ -48,7 +48,10 @@ clang_flags = select({ "@gbl//toolchain:gbl_rust_uefi_x86_32": ["-m32"], "//conditions:default": ["-m64"], - }) + ["-I{}".format(LLVM_PREBUILTS_C_INCLUDE)], + }) + [ + "-I{}".format(LLVM_PREBUILTS_C_INCLUDE), + "-nostdinc", + ], header = "@libfdt_c//:libfdt.h", )