nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1diff --git a/crates/simd/build.rs b/crates/simd/build.rs
2index 12ce198..aed5588 100644
3--- a/crates/simd/build.rs
4+++ b/crates/simd/build.rs
5@@ -17,17 +17,24 @@ use std::error::Error;
6
7 fn main() -> Result<(), Box<dyn Error>> {
8 println!("cargo::rerun-if-changed=cshim");
9+ println!("cargo:rerun-if-env-changed=BINDGEN_EXTRA_CLANG_ARGS");
10 let target_arch = var("CARGO_CFG_TARGET_ARCH")?;
11 match target_arch.as_str() {
12 "aarch64" => {
13 let mut build = cc::Build::new();
14 build.file("./cshim/aarch64.c");
15+ build.compiler("@clang@");
16+ // read env var set by rustPlatform.bindgenHook
17+ build.try_flags_from_environment("BINDGEN_EXTRA_CLANG_ARGS").expect("the BINDGEN_EXTRA_CLANG_ARGS environment variable must be specified and UTF-8");
18 build.opt_level(3);
19 build.compile("simd_cshim");
20 }
21 "x86_64" => {
22 let mut build = cc::Build::new();
23 build.file("./cshim/x86_64.c");
24+ build.compiler("@clang@");
25+ // read env var set by rustPlatform.bindgenHook
26+ build.try_flags_from_environment("BINDGEN_EXTRA_CLANG_ARGS").expect("the BINDGEN_EXTRA_CLANG_ARGS environment variable must be specified and UTF-8");
27 build.opt_level(3);
28 build.compile("simd_cshim");
29 }