blob: b41e9c453d2cb8184a8cdd44876adf1f395978dc [file] [log] [blame] [edit]
[package]
name = "vello_shaders"
version.workspace = true # We mimic Vello's version
description = "Vello infrastructure to preprocess and cross-compile shaders at compile time."
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
publish = false # Remove this when the package is ready for publishing
[features]
default = ["compile", "wgsl", "msl"]
compile = ["naga", "thiserror"]
# Enabling this feature applies a transformation that converts all storage bindings
# to have the `read_write` access mode. For WGSL shaders, this affects the bind group
# layout of all pipelines and changes the usage scope of storage buffers. For MSL shaders,
# this removes the `const` qualifier from entry-point parameters in the `device` address
# space. This allows bindings with mixed access modes to be backed by suballocations from
# the same the buffer object.
#
# This feature doesn't apply to the fine stage where all storage bindings are readonly and
# the same access mode restrictions do not apply.
#
# Enabling this feature may have a performance impact and is not recommended.
force_rw_storage = []
# Target shading language variants of the vello shaders to link into the library.
wgsl = []
msl = []
[lints]
workspace = true
[dependencies]
naga = { version = "0.19", features = ["wgsl-in", "msl-out",], optional = true }
thiserror = { version = "1.0.57", optional = true }
[build-dependencies]
naga = { version = "0.19", features = ["wgsl-in", "msl-out",] }
thiserror = "1.0.57"