32 lines
978 B
Rust
32 lines
978 B
Rust
use std::path::Path;
|
|
|
|
fn main() {
|
|
let out_dir = std::env::var("OUT_DIR").unwrap();
|
|
let lib_dir = Path::new(&out_dir).join("libmpv_link");
|
|
let _ = std::fs::create_dir_all(&lib_dir);
|
|
|
|
let candidates = [
|
|
"/lib/x86_64-linux-gnu/libmpv.so.2",
|
|
"/usr/lib/x86_64-linux-gnu/libmpv.so.2",
|
|
"/usr/lib64/libmpv.so.2",
|
|
"/lib/x86_64-linux-gnu/libmpv.so.1",
|
|
"/usr/lib/x86_64-linux-gnu/libmpv.so.1",
|
|
"/usr/lib/libmpv.so.2",
|
|
"/usr/lib/libmpv.so.1",
|
|
];
|
|
|
|
let dest = lib_dir.join("libmpv.so");
|
|
for candidate in &candidates {
|
|
if Path::new(candidate).exists() {
|
|
let _ = std::fs::remove_file(&dest);
|
|
#[cfg(unix)]
|
|
let _ = std::os::unix::fs::symlink(candidate, &dest);
|
|
println!("cargo:rustc-link-search=native={}", lib_dir.display());
|
|
break;
|
|
}
|
|
}
|
|
|
|
println!("cargo:rustc-link-lib=mpv");
|
|
println!("cargo:rerun-if-changed=build.rs");
|
|
}
|