From: Ruben Beltran del Rio Date: Fri, 15 Mar 2024 21:17:41 +0000 (+0100) Subject: Conditional build + better error X-Git-Tag: 3.0.0~20 X-Git-Url: https://git.r.bdr.sh/rbdr/lyricli/commitdiff_plain/6b935f8206c0c303a172284ff580cacf46e706f8?ds=sidebyside;hp=44e7b4de4073e6dc25681bb2fa6977bf5869689a Conditional build + better error --- diff --git a/build.rs b/build.rs new file mode 100644 index 0000000..85b3d43 --- /dev/null +++ b/build.rs @@ -0,0 +1,6 @@ +fn main() { + let target_os = std::env::var("CARGO_CFG_TARGET_OS").unwrap_or_default(); + if target_os == "macos" { + println!("cargo:rustc-link-lib=framework=ScriptingBridge"); + } +} diff --git a/src/main.rs b/src/main.rs index a611926..d3b3334 100644 --- a/src/main.rs +++ b/src/main.rs @@ -46,6 +46,22 @@ pub struct Track { #[tokio::main] async fn main() -> Result<()> { + let result = run().await; + + if cfg!(debug_assertions) { + result + } else { + match result { + Ok(_) => Ok(()), + Err(e) => { + eprintln!("Error: {}", e); + std::process::exit(1); + } + } + } +} + +async fn run() -> Result<()> { let mut configuration = Configuration::new(); let arguments = Arguments::parse();