[package] name = "li-wgpu-core" version = "0.18.1" authors = ["wgpu developers"] edition = "2021" description = "WebGPU core logic on wgpu-hal" homepage = "https://wgpu.rs/" repository = "https://github.com/gfx-rs/wgpu" keywords = ["graphics"] license = "MIT OR Apache-2.0" # Override the workspace's `rust-version` key. Firefox uses `cargo vendor` to # copy the crates it actually uses out of the workspace, so it's meaningful for # them to have less restrictive MSRVs individually than the workspace as a # whole, if their code permits. See `../README.md` for details. rust-version = "1.65" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] targets = [ "x86_64-unknown-linux-gnu", "x86_64-apple-darwin", "x86_64-pc-windows-msvc", "wasm32-unknown-unknown", ] [lib] [features] default = ["link"] # Backends, passed through to wgpu-hal metal = ["hal/metal"] vulkan = ["hal/vulkan"] gles = ["hal/gles"] dx11 = ["hal/dx11"] dx12 = ["hal/dx12"] # Use static linking for libraries. Disale to manually link. Enabled by default. link = ["hal/link"] # Support the Renderdoc graphics debugger: # https://renderdoc.org/ renderdoc = ["hal/renderdoc"] # Apply run-time checks, even in release builds. These are in addition # to the validation carried out at public APIs in all builds. strict_asserts = ["wgt/strict_asserts"] # Enable API tracing trace = ["ron", "serde", "wgt/trace", "arrayvec/serde", "naga/serialize"] # Enable API replaying replay = ["serde", "wgt/replay", "arrayvec/serde", "naga/deserialize"] # Enable serializable compute/render passes, and bundle encoders. serial-pass = ["serde", "wgt/serde", "arrayvec/serde"] id32 = [] # Enable `ShaderModuleSource::Wgsl` wgsl = ["naga/wgsl-in"] # Implement `Send` and `Sync` on Wasm. fragile-send-sync-non-atomic-wasm = [ "hal/fragile-send-sync-non-atomic-wasm", "wgt/fragile-send-sync-non-atomic-wasm", ] [dependencies] arrayvec = "0.7" bitflags = "2" bit-vec = "0.6" codespan-reporting = "0.11" rustc-hash = "1.1" log = "0.4" # parking_lot 0.12 switches from `winapi` to `windows`; permit either parking_lot = ">=0.11,<0.13" profiling = { version = "1", default-features = false } raw-window-handle = { version = "0.5", optional = true } ron = { version = "0.8", optional = true } serde = { version = "1", features = ["serde_derive"], optional = true } smallvec = "1" thiserror = "1" [dependencies.naga] path = "../naga" version = "0.14.0" features = ["clone", "span", "validate"] [dependencies.wgt] package = "wgpu-types" path = "../wgpu-types" version = "0.18.0" [dependencies.hal] package = "li-wgpu-hal" path = "../wgpu-hal" version = "0.18.0" default_features = false [target.'cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))'.dependencies] web-sys = { version = "0.3.65", features = [ "HtmlCanvasElement", "OffscreenCanvas", ] }