fn main() {
println!("cargo:rerun-if-env-changed=QUAC100_LIB_DIR");
println!("cargo:rerun-if-env-changed=QUAC100_INCLUDE_DIR");
let lib_dir = std::env::var("QUAC100_LIB_DIR").ok();
let include_dir = std::env::var("QUAC100_INCLUDE_DIR").ok();
if let Some(dir) = lib_dir {
println!("cargo:rustc-link-search=native={}", dir);
} else {
println!("cargo:rustc-link-search=native=D:/quantacore-sdk/bindings/rust/lib");
#[cfg(target_os = "windows")]
{
println!("cargo:rustc-link-search=native=C:/Program Files/Dyber/QUAC100/lib");
println!("cargo:rustc-link-search=native=C:/Dyber/lib");
}
#[cfg(target_os = "linux")]
{
println!("cargo:rustc-link-search=native=/usr/local/lib");
println!("cargo:rustc-link-search=native=/usr/lib");
println!("cargo:rustc-link-search=native=/opt/dyber/lib");
}
#[cfg(target_os = "macos")]
{
println!("cargo:rustc-link-search=native=/usr/local/lib");
println!("cargo:rustc-link-search=native=/opt/homebrew/lib");
println!("cargo:rustc-link-search=native=/opt/dyber/lib");
}
}
if let Some(dir) = include_dir {
println!("cargo:include={}", dir);
}
#[cfg(target_os = "windows")]
println!("cargo:rustc-link-lib=dylib=quac100");
#[cfg(not(target_os = "windows"))]
println!("cargo:rustc-link-lib=dylib=quac100");
#[cfg(unix)]
{
if pkg_config::probe_library("quac100").is_ok() {
println!("cargo:rustc-cfg=has_pkgconfig");
}
}
}