cad-editor/build.rs

25 lines
988 B
Rust
Raw Normal View History

// build.rs — Windows executable icon embedding.
2026-03-22 14:56:27 +03:00
//
// The core ribbon module registry used to be generated here; it is now a
// hand-written static list in src/modules/registry.rs.
2026-03-22 14:56:27 +03:00
#[cfg(windows)]
2026-03-22 14:56:27 +03:00
use std::path::Path;
fn main() {
// Windows: embed AppIcon.ico into the .exe so the executable carries its
// own icon (Explorer, taskbar, Start-menu tile, file associations). The
// .ico is produced from assets/logo.svg by the release workflow before the
// build; when it is absent (local/dev builds) this is skipped. See #107.
#[cfg(windows)]
{
println!("cargo:rerun-if-changed=packaging/windows/AppIcon.ico");
if Path::new("packaging/windows/AppIcon.ico").exists() {
let mut res = winresource::WindowsResource::new();
res.set_icon("packaging/windows/AppIcon.ico");
if let Err(e) = res.compile() {
println!("cargo:warning=failed to embed Windows icon: {e}");
}
}
}
2026-03-22 14:56:27 +03:00
}