mirror of
https://github.com/gfx-rs/wgpu.git
synced 2025-12-08 21:26:17 +00:00
272 lines
7.9 KiB
TOML
272 lines
7.9 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"cts_runner",
|
|
"deno_webgpu",
|
|
|
|
# default members
|
|
"benches",
|
|
"examples/features",
|
|
"examples/standalone/*",
|
|
"lock-analyzer",
|
|
"naga-cli",
|
|
"naga-test",
|
|
"naga",
|
|
"naga/fuzz",
|
|
"naga/hlsl-snapshots",
|
|
"naga/xtask",
|
|
"player",
|
|
"tests",
|
|
"wgpu-core",
|
|
"wgpu-core/platform-deps/*",
|
|
"wgpu-hal",
|
|
"wgpu-info",
|
|
"wgpu-macros",
|
|
"wgpu-types",
|
|
"wgpu",
|
|
"xtask",
|
|
]
|
|
exclude = []
|
|
default-members = [
|
|
"benches",
|
|
"examples/features",
|
|
"examples/standalone/*",
|
|
"lock-analyzer",
|
|
"naga-cli",
|
|
"naga-test",
|
|
"naga",
|
|
"naga/fuzz",
|
|
"naga/hlsl-snapshots",
|
|
"naga/xtask",
|
|
"player",
|
|
"tests",
|
|
"wgpu-core",
|
|
"wgpu-core/platform-deps/*",
|
|
"wgpu-hal",
|
|
"wgpu-info",
|
|
"wgpu-macros",
|
|
"wgpu-types",
|
|
"wgpu",
|
|
"xtask",
|
|
]
|
|
|
|
[workspace.lints.clippy]
|
|
ref_as_ptr = "warn"
|
|
# NOTE: disallowed-types is configured in other file: clippy.toml
|
|
|
|
[workspace.package]
|
|
edition = "2021"
|
|
rust-version = "1.88"
|
|
keywords = ["graphics"]
|
|
license = "MIT OR Apache-2.0"
|
|
homepage = "https://wgpu.rs/"
|
|
repository = "https://github.com/gfx-rs/wgpu"
|
|
version = "27.0.0"
|
|
authors = ["gfx-rs developers"]
|
|
|
|
[workspace.dependencies]
|
|
naga = { version = "27.0.0", path = "./naga" }
|
|
naga-test = { path = "./naga-test" }
|
|
wgpu = { version = "27.0.0", path = "./wgpu", default-features = false, features = [
|
|
"std",
|
|
"serde",
|
|
"wgsl",
|
|
"vulkan",
|
|
"gles",
|
|
"dx12",
|
|
"metal",
|
|
"static-dxc",
|
|
"noop", # This should be removed if we ever have non-test crates that depend on wgpu
|
|
] }
|
|
wgpu-core = { version = "27.0.0", path = "./wgpu-core" }
|
|
wgpu-hal = { version = "27.0.0", path = "./wgpu-hal" }
|
|
wgpu-macros = { version = "27.0.0", path = "./wgpu-macros" }
|
|
wgpu-test = { version = "27.0.0", path = "./tests" }
|
|
wgpu-types = { version = "27.0.0", path = "./wgpu-types", default-features = false }
|
|
|
|
# These _cannot_ have a version specified. If it does, crates.io will look
|
|
# for a version of the package on crates when we publish naga. Path dependencies
|
|
# are allowed through though.
|
|
hlsl-snapshots = { path = "naga/hlsl-snapshots" }
|
|
|
|
wgpu-core-deps-windows-linux-android = { version = "27.0.0", path = "./wgpu-core/platform-deps/windows-linux-android" }
|
|
wgpu-core-deps-apple = { version = "27.0.0", path = "./wgpu-core/platform-deps/apple" }
|
|
wgpu-core-deps-wasm = { version = "27.0.0", path = "./wgpu-core/platform-deps/wasm" }
|
|
wgpu-core-deps-emscripten = { version = "27.0.0", path = "./wgpu-core/platform-deps/emscripten" }
|
|
|
|
anyhow = { version = "1.0.87", default-features = false }
|
|
approx = "0.5"
|
|
arbitrary = "1.4.2"
|
|
argh = "0.1.13"
|
|
arrayvec = { version = "0.7.1", default-features = false }
|
|
bincode = "2"
|
|
bit-set = { version = "0.8", default-features = false }
|
|
bit-vec = { version = "0.8", default-features = false }
|
|
bitflags = "2.9"
|
|
bytemuck = { version = "1.22", features = [
|
|
"extern_crate_alloc",
|
|
"min_const_generics",
|
|
] }
|
|
cargo_metadata = "0.23"
|
|
cfg_aliases = "0.2.1"
|
|
cfg-if = "1"
|
|
codespan-reporting = { version = "0.12", default-features = false }
|
|
ctor = "0.6"
|
|
diff = "0.1"
|
|
document-features = "0.2.10"
|
|
encase = "0.12"
|
|
env_logger = { version = "0.11", default-features = false }
|
|
fern = "0.7"
|
|
flume = "0.11"
|
|
futures-lite = "2"
|
|
getrandom = "0.3"
|
|
glam = "0.30.7"
|
|
glob = "0.3"
|
|
half = { version = "2.5", default-features = false } # We require 2.5 to have `Arbitrary` support.
|
|
hashbrown = { version = "0.16", default-features = false, features = [
|
|
"default-hasher",
|
|
"inline-more",
|
|
] }
|
|
heck = "0.5"
|
|
hexf-parse = "0.2"
|
|
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
indexmap = { version = "2.8", default-features = false }
|
|
indicatif = "0.18"
|
|
itertools = { version = "0.14" }
|
|
jobserver = "0.1"
|
|
ktx2 = "0.4"
|
|
libc = { version = "0.2.172", default-features = false }
|
|
# See https://github.com/rust-fuzz/libfuzzer/issues/126
|
|
libfuzzer-sys = ">0.4.0,<=0.4.7"
|
|
libloading = "0.8"
|
|
libm = { version = "0.2.6", default-features = false }
|
|
libtest-mimic = "0.8"
|
|
log = "0.4.21"
|
|
macro_rules_attribute = "0.2"
|
|
nanoserde = "0.2"
|
|
nanorand = { version = "0.8", default-features = false, features = ["wyrand"] }
|
|
noise = "0.9"
|
|
num_cpus = "1"
|
|
# `half` requires 0.2.16 for `FromBytes` and `ToBytes`.
|
|
num-traits = { version = "0.2.16", default-features = false }
|
|
nv-flip = "0.1"
|
|
obj = "0.10"
|
|
# NOTE: once_cell/std is *required* for some commonly-used features, selecting this per crate
|
|
once_cell = { version = "1.21", default-features = false }
|
|
# Firefox has 3.4.0 vendored, so we allow that version in our dependencies
|
|
ordered-float = { version = ">=3, <6.0", default-features = false }
|
|
parking_lot = "0.12.3"
|
|
petgraph = { version = "0.8", default-features = false }
|
|
pico-args = { version = "0.5", features = [
|
|
"eq-separator",
|
|
"short-space-opt",
|
|
"combined-flags",
|
|
] }
|
|
png = "0.18"
|
|
pollster = "0.4"
|
|
portable-atomic = "1.8"
|
|
portable-atomic-util = "0.2.4"
|
|
pp-rs = "0.2.1"
|
|
profiling = { version = "1.0.1", default-features = false }
|
|
quote = "1.0.38"
|
|
raw-window-handle = { version = "0.6.2", default-features = false }
|
|
rwh_05 = { version = "0.5.2", package = "raw-window-handle" } # temporary compatibility for glutin-winit
|
|
rayon = "1.3"
|
|
regex-lite = "0.1"
|
|
renderdoc-sys = "1"
|
|
rspirv = "0.12"
|
|
ron = "0.12"
|
|
# NOTE: rustc-hash v2 is a completely different hasher with different performance characteristics
|
|
# see discussion here (including with some other alternatives): https://github.com/gfx-rs/wgpu/issues/6999
|
|
# (using default-features = false to support no-std build, avoiding any extra features that may require std::collections)
|
|
rustc-hash = { version = "1.1", default-features = false }
|
|
serde_json = "1.0.143"
|
|
serde = { version = "1.0.219", default-features = false }
|
|
shell-words = "1"
|
|
smallvec = "1.14"
|
|
spirv = "0.3"
|
|
static_assertions = "1.1"
|
|
strum = { version = "0.27.1", default-features = false, features = ["derive"] }
|
|
syn = "2.0.98"
|
|
tempfile = "3"
|
|
toml = "0.9.0"
|
|
trybuild = "1"
|
|
tracy-client = "0.18"
|
|
thiserror = { version = "2.0.12", default-features = false }
|
|
unicode-ident = "1.0.5"
|
|
walkdir = "2.3"
|
|
winit = { version = "0.29", features = ["android-native-activity"] }
|
|
which = "8"
|
|
xshell = "0.2.2"
|
|
|
|
# Metal dependencies
|
|
metal = "0.32"
|
|
block = "0.1.6"
|
|
core-graphics-types = "0.2"
|
|
objc = "0.2.5"
|
|
|
|
# Vulkan dependencies
|
|
android_system_properties = "0.1.1"
|
|
ash = "0.38"
|
|
gpu-alloc = "0.6"
|
|
gpu-descriptor = "0.3.2"
|
|
|
|
# DX12 dependencies
|
|
gpu-allocator = { version = "0.28", default-features = false, features = [
|
|
"hashbrown",
|
|
] }
|
|
range-alloc = "0.1"
|
|
mach-dxcompiler-rs = { version = "0.1.4", default-features = false } # remember to increase max_shader_model if applicable
|
|
windows-core = { version = "0.62", default-features = false }
|
|
|
|
# Gles dependencies
|
|
khronos-egl = "6"
|
|
glow = "0.16"
|
|
glutin = { version = "0.31", default-features = false }
|
|
glutin-winit = { version = "0.4", default-features = false }
|
|
glutin_wgl_sys = "0.6"
|
|
|
|
# DX12 and GLES dependencies
|
|
windows = { version = "0.62", default-features = false }
|
|
|
|
# wasm32 dependencies
|
|
console_error_panic_hook = "0.1.5"
|
|
console_log = "1"
|
|
js-sys = { version = "0.3.77", default-features = false }
|
|
wasm-bindgen = "0.2.100"
|
|
wasm-bindgen-futures = "0.4.43"
|
|
wasm-bindgen-test = "0.3"
|
|
web-sys = { version = "0.3.77", default-features = false }
|
|
web-time = "1.1.0"
|
|
|
|
# deno dependencies
|
|
deno_console = "0.214.0"
|
|
deno_core = "0.355.0"
|
|
deno_features = "0.11.0"
|
|
deno_url = "0.214.0"
|
|
deno_web = "0.245.0"
|
|
deno_webidl = "0.214.0"
|
|
deno_webgpu = { version = "0.181.0", path = "./deno_webgpu" }
|
|
deno_unsync = "0.4.4"
|
|
deno_error = "0.7.0"
|
|
tokio = "1.47"
|
|
termcolor = "1.4.1"
|
|
|
|
# android dependencies
|
|
ndk-sys = "0.6"
|
|
|
|
# These overrides allow our examples to explicitly depend on release crates
|
|
[patch.crates-io]
|
|
wgpu = { path = "./wgpu" }
|
|
|
|
# https://github.com/Xudong-Huang/generator-rs/pull/75
|
|
generator = { git = "https://github.com/Xudong-Huang/generator-rs", rev = "70b89fdabcc0e82fe84ca17f65cc52ff25e8e6de" }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
debug = true
|
|
|
|
# Speed up image comparison even in debug builds
|
|
[profile.dev.package."nv-flip-sys"]
|
|
opt-level = 3
|