1
1

build.rs 759 B

123456789101112131415161718192021
  1. fn main() {
  2. #[cfg(all(feature = "call", feature = "vdso"))]
  3. {
  4. const TARGET: &str = "../../../target/sysroot/usr/include/h2o.h";
  5. std::thread::spawn(|| {
  6. let config = cbindgen::Config::from_file("cbindgen.toml").unwrap();
  7. println!("cargo:rerun-if-changed=cbindgen.toml");
  8. println!("cargo:rerun-if-changed={TARGET}");
  9. let src_dir = std::path::PathBuf::from(env!("CARGO_MANIFEST_DIR"));
  10. let bindings = cbindgen::Builder::new()
  11. .with_config(config)
  12. .with_crate(".")
  13. .generate()
  14. .unwrap();
  15. let c_target_path = src_dir.join(TARGET);
  16. bindings.write_to_file(c_target_path);
  17. });
  18. }
  19. }