[package] name = "libremetaverse-imaging-skia" version.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true repository.workspace = true description = "Optional Skia image decoder for the MetaCrate LibreMetaverse rewrite" [features] default = ["rust-skia"] skia = ["dep:skia-safe"] rust-skia = ["dep:image-webp", "dep:skia-rs-codec", "skia-rs-codec/gif", "skia-rs-codec/jpeg", "skia-rs-codec/png"] [dependencies] libremetaverse-imaging = { version = "0.0.1", path = "../libremetaverse-imaging", default-features = false } libremetaverse-types = { version = "0.0.1", path = "../libremetaverse-types" } image-webp = { version = "=0.2.4", optional = true } skia-rs-codec = { version = "=0.3.0", default-features = false, optional = true } # rust-skia publishes WebP-capable binary caches with Vulkan on Linux/Windows # and without Vulkan on macOS. Matching those sets avoids an hours-long Skia # source build on every supported desktop target. [target.'cfg(any(target_os = "linux", target_os = "windows"))'.dependencies] skia-safe = { version = "0.99.0", default-features = false, features = ["binary-cache", "jpeg", "no-compile", "pdf", "svg", "textlayout", "vulkan", "webp"], optional = true } [target.'cfg(target_os = "macos")'.dependencies] skia-safe = { version = "0.99.0", default-features = false, features = ["binary-cache", "jpeg", "no-compile", "pdf", "svg", "textlayout", "webp"], optional = true } [target.'cfg(not(any(target_os = "linux", target_os = "macos", target_os = "windows")))'.dependencies] skia-safe = { version = "0.99.0", default-features = false, features = ["binary-cache", "jpeg", "no-compile", "pdf", "webp"], optional = true } [lints] workspace = true