diff --git a/boring-sys/build/config.rs b/boring-sys/build/config.rs index d05396ae..68129854 100644 --- a/boring-sys/build/config.rs +++ b/boring-sys/build/config.rs @@ -24,6 +24,7 @@ pub(crate) struct Features { pub(crate) struct Env { pub(crate) path: Option, pub(crate) include_path: Option, + pub(crate) additional_include_path: Option, pub(crate) source_path: Option, pub(crate) precompiled_bcm_o: Option, pub(crate) assume_patched: bool, @@ -146,6 +147,8 @@ impl Env { Self { path: boringssl_var("BORING_BSSL_PATH").map(PathBuf::from), include_path: boringssl_var("BORING_BSSL_INCLUDE_PATH").map(PathBuf::from), + additional_include_path: boringssl_var("BORING_ADDITIONAL_INCLUDE_PATH") + .map(PathBuf::from), source_path: boringssl_var("BORING_BSSL_SOURCE_PATH").map(PathBuf::from), precompiled_bcm_o: boringssl_var("BORING_BSSL_PRECOMPILED_BCM_O").map(PathBuf::from), assume_patched: boringssl_var("BORING_BSSL_ASSUME_PATCHED") diff --git a/boring-sys/build/main.rs b/boring-sys/build/main.rs index 46ee2d0d..79cd8e5d 100644 --- a/boring-sys/build/main.rs +++ b/boring-sys/build/main.rs @@ -690,6 +690,12 @@ fn main() { .clang_arg("-I") .clang_arg(include_path.display().to_string()); + if let Some(additional_include_path) = config.env.additional_include_path { + builder = builder + .clang_arg("-I") + .clang_arg(additional_include_path.display().to_string()); + } + if let Some(sysroot) = &config.env.sysroot { builder = builder .clang_arg("--sysroot")