mirror of
https://github.com/cccb/servicepoint.git
synced 2025-01-18 18:10:14 +01:00
29 lines
776 B
Rust
29 lines
776 B
Rust
extern crate cbindgen;
|
|
|
|
use std::env;
|
|
|
|
use cbindgen::Language;
|
|
|
|
fn main() {
|
|
let crate_dir = env::var("CARGO_MANIFEST_DIR").unwrap();
|
|
|
|
let out_dir = env::var("SP2_INCLUDE_DIR")
|
|
.or(env::var("OUT_DIR"))
|
|
.unwrap();
|
|
|
|
println!("cargo::warning={out_dir}");
|
|
|
|
println!("cargo::rerun-if-changed=src");
|
|
println!("cargo::rerun-if-env-changed=SP2_INCLUDE_DIR");
|
|
println!("cargo::rerun-if-env-changed=OUT_DIR");
|
|
|
|
cbindgen::Builder::new()
|
|
.with_crate(crate_dir)
|
|
.with_item_prefix("sp2_")
|
|
.with_language(Language::C)
|
|
.with_cpp_compat(true)
|
|
.with_parse_expand_all_features(true)
|
|
.generate()
|
|
.expect("Unable to generate bindings")
|
|
.write_to_file(format!("{out_dir}/sp2-bindings.h"));
|
|
} |