use std::env; fn main() { let target = env::var("TARGET").unwrap(); // Cross-compiling for Kobo. if target == "arm-unknown-linux-gnueabihf" { println!("cargo:rustc-env=PKG_CONFIG_ALLOW_CROSS=1"); println!("cargo:rustc-link-search=src/mupdf_wrapper/Kobo"); println!("cargo:rustc-link-search=libs"); println!("cargo:rustc-link-lib=dylib=stdc++"); // Handle the Linux and macOS platforms. } else { let target_os = env::var("CARGO_CFG_TARGET_OS").unwrap(); match target_os.as_ref() { "linux" => { println!("cargo:rustc-link-search=src/mupdf_wrapper/Linux"); println!("cargo:rustc-link-lib=dylib=stdc++"); }, "macos" => { println!("cargo:rustc-link-search=src/mupdf_wrapper/Darwin"); println!("cargo:rustc-link-lib=dylib=c++"); }, _ => panic!("Unsupported platform: {}.", target_os), } println!("cargo:rustc-link-lib=mupdf-third"); } // Needed in all cases. println!("cargo:rustc-link-lib=z"); println!("cargo:rustc-link-lib=bz2"); println!("cargo:rustc-link-lib=jpeg"); println!("cargo:rustc-link-lib=png16"); println!("cargo:rustc-link-lib=gumbo"); println!("cargo:rustc-link-lib=openjp2"); println!("cargo:rustc-link-lib=jbig2dec"); }