[package] name = "ruffle_desktop" authors.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true version.workspace = true [lints] workspace = true [dependencies] clap = { workspace = true } cpal = { workspace = true } egui = { workspace = true } egui_extras = { git = "https://github.com/emilk/egui.git", rev = "f4697bc007447c6c2674beb4e25f599fb7afa093", default-features = false, features = ["image"] } egui-wgpu = { git = "https://github.com/emilk/egui.git", rev = "f4697bc007447c6c2674beb4e25f599fb7afa093", features = ["winit"] } image = { workspace = true, features = ["png"] } egui-winit = { git = "https://github.com/emilk/egui.git", rev = "f4697bc007447c6c2674beb4e25f599fb7afa093" } fontdb = "0.22" ruffle_core = { path = "../core", features = ["audio", "clap", "mp3", "nellymoser", "default_compatibility_rules", "egui"] } ruffle_render = { path = "../render", features = ["clap"] } ruffle_render_wgpu = { path = "../render/wgpu", features = ["clap"] } ruffle_video_software = { path = "../video/software", optional = true } ruffle_video_external = { path = "../video/external", features = ["openh264"], optional = true } ruffle_frontend_utils = { path = "../frontend-utils", features = ["cpal"] } tracing = { workspace = true } tracing-subscriber = { workspace = true } tracing-appender = "0.2.3" winit = "0.30.5" webbrowser = "1.0.2" url = { workspace = true } dirs = "5.0" rfd = { workspace = true } anyhow = { workspace = true } bytemuck = { workspace = true } os_info = { version = "3", default-features = false } unic-langid = "0.9.5" sys-locale = "0.3.1" wgpu = { workspace = true } futures = { workspace = true } chrono = { workspace = true } fluent-templates = "0.10.1" toml_edit = { version = "0.22.20", features = ["parse"] } gilrs = "0.11" tokio = { workspace = true, features = ["rt-multi-thread", "macros"]} # Deliberately held back to match tracy client used by profiling crate tracing-tracy = { version = "=0.11.1", optional = true, features = ["demangle"] } rand = "0.8.5" thiserror.workspace = true [target.'cfg(target_os = "linux")'.dependencies] zbus = "4.4.0" [target.'cfg(windows)'.dependencies] winapi = "0.3.9" [build-dependencies] embed-resource = "2" vergen = { version = "8.3.2", features = ["build", "git", "gitcl", "cargo"] } [features] default = ["software_video", "external_video", "lzma"] jpegxr = ["ruffle_core/jpegxr"] # core features avm_debug = ["ruffle_core/avm_debug"] lzma = ["ruffle_core/lzma"] software_video = ["ruffle_video_software"] external_video = ["ruffle_video_external"] tracy = ["tracing-tracy", "ruffle_render_wgpu/profile-with-tracy"] # wgpu features render_debug_labels = ["ruffle_render_wgpu/render_debug_labels"] # sandboxing sandbox = []