vfs_shadow_copy2: Use VFS interface to derive mount point
[samba4-gss.git] / rust / idmap / build.rs
blobc1a9f35e31a30f32f6147c30c8f231cc3d6ad160
1 use std::env;
2 use std::path::Path;
3 use std::path::PathBuf;
5 fn main() {
6     cc::Build::new()
7         .file("src/sss_idmap.c")
8         .file("src/sss_idmap_conv.c")
9         .file("src/murmurhash3.c")
10         .include(Path::new("../../bin/default/include"))
11         .warnings(false)
12         .compile("sss_idmap");
14     let bindings = bindgen::Builder::default()
15         .blocklist_function("qgcvt")
16         .blocklist_function("qgcvt_r")
17         .blocklist_function("qfcvt")
18         .blocklist_function("qfcvt_r")
19         .blocklist_function("qecvt")
20         .blocklist_function("qecvt_r")
21         .blocklist_function("strtold")
22         .header("src/sss_idmap.h")
23         .parse_callbacks(Box::new(bindgen::CargoCallbacks::new()))
24         .generate()
25         .expect("Unable to generate bindings");
27     let out_path = PathBuf::from(env::var("OUT_DIR").unwrap());
28     bindings
29         .write_to_file(out_path.join("bindings.rs"))
30         .expect("Couldn't write bindings!");
31     println!("cargo:rustc-link-lib=utf8proc");
32     println!("cargo:rustc-env=LD_LIBRARY_PATH=../../bin/shared/private/");