2018-09-13 01:28:55 +00:00
|
|
|
[package]
|
2020-02-25 19:00:51 +00:00
|
|
|
name = "naga"
|
2024-10-25 18:54:41 +00:00
|
|
|
version = "23.0.0"
|
2023-10-27 04:15:51 +00:00
|
|
|
authors = ["gfx-rs developers"]
|
2022-10-25 15:44:17 +00:00
|
|
|
edition = "2021"
|
2020-02-27 04:28:18 +00:00
|
|
|
description = "Shader translation infrastructure"
|
2023-10-27 04:15:51 +00:00
|
|
|
repository = "https://github.com/gfx-rs/wgpu/tree/trunk/naga"
|
2021-04-01 13:34:07 +00:00
|
|
|
keywords = ["shader", "SPIR-V", "GLSL", "MSL"]
|
2020-06-18 20:51:51 +00:00
|
|
|
license = "MIT OR Apache-2.0"
|
2021-06-03 16:06:42 +00:00
|
|
|
exclude = ["bin/**/*", "tests/**/*", "Cargo.lock", "target/**/*"]
|
2021-06-12 23:24:01 +00:00
|
|
|
resolver = "2"
|
2023-11-23 10:26:42 +00:00
|
|
|
autotests = false
|
|
|
|
|
2024-08-12 11:17:53 +00:00
|
|
|
# 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.76"
|
|
|
|
|
2023-11-23 10:26:42 +00:00
|
|
|
[[test]]
|
|
|
|
name = "naga-test"
|
|
|
|
path = "tests/root.rs"
|
2018-09-13 01:28:55 +00:00
|
|
|
|
2021-04-01 13:34:07 +00:00
|
|
|
[package.metadata.docs.rs]
|
|
|
|
all-features = true
|
|
|
|
|
2020-06-09 17:43:16 +00:00
|
|
|
[features]
|
2020-07-05 05:35:28 +00:00
|
|
|
default = []
|
2021-03-02 06:28:32 +00:00
|
|
|
dot-out = []
|
2024-05-12 06:45:35 +00:00
|
|
|
glsl-in = ["dep:pp-rs"]
|
2021-09-29 16:24:34 +00:00
|
|
|
glsl-out = []
|
2024-07-06 09:04:02 +00:00
|
|
|
|
|
|
|
## Enables outputting to the Metal Shading Language (MSL).
|
|
|
|
##
|
|
|
|
## This enables MSL output regardless of the target platform.
|
|
|
|
## If you want to enable it only when targeting iOS/tvOS/watchOS/macOS, use `naga/msl-out-if-target-apple`.
|
2020-09-14 14:27:05 +00:00
|
|
|
msl-out = []
|
2024-07-06 09:04:02 +00:00
|
|
|
|
|
|
|
## Enables outputting to the Metal Shading Language (MSL) only if the target platform is iOS/tvOS/watchOS/macOS.
|
|
|
|
##
|
|
|
|
## If you want to enable MSL output it regardless of the target platform, use `naga/msl-out`.
|
|
|
|
msl-out-if-target-apple = []
|
|
|
|
|
2024-05-12 06:45:35 +00:00
|
|
|
serialize = ["dep:serde", "bitflags/serde", "indexmap/serde"]
|
|
|
|
deserialize = ["dep:serde", "bitflags/serde", "indexmap/serde"]
|
2023-06-01 13:40:47 +00:00
|
|
|
arbitrary = ["dep:arbitrary", "bitflags/arbitrary", "indexmap/arbitrary"]
|
2024-05-12 06:45:35 +00:00
|
|
|
spv-in = ["dep:petgraph", "dep:spirv"]
|
|
|
|
spv-out = ["dep:spirv"]
|
|
|
|
wgsl-in = ["dep:hexf-parse", "dep:unicode-xid", "compact"]
|
2021-04-19 04:23:27 +00:00
|
|
|
wgsl-out = []
|
2024-07-06 09:11:54 +00:00
|
|
|
|
|
|
|
## Enables outputting to HLSL (Microsoft's High-Level Shader Language).
|
|
|
|
##
|
|
|
|
## This enables HLSL output regardless of the target platform.
|
|
|
|
## If you want to enable it only when targeting Windows, use `hlsl-out-if-target-windows`.
|
2021-04-11 15:36:26 +00:00
|
|
|
hlsl-out = []
|
2024-07-06 09:11:54 +00:00
|
|
|
|
|
|
|
## Enables outputting to HLSL (Microsoft's High-Level Shader Language) only if the target platform is Windows.
|
|
|
|
##
|
|
|
|
## If you want to enable HLSL output it regardless of the target platform, use `naga/hlsl-out`.
|
|
|
|
hlsl-out-if-target-windows = []
|
|
|
|
|
2023-09-07 20:22:44 +00:00
|
|
|
compact = []
|
2018-09-13 01:28:55 +00:00
|
|
|
|
2022-01-13 23:57:57 +00:00
|
|
|
[dependencies]
|
2023-08-11 13:32:49 +00:00
|
|
|
arbitrary = { version = "1.3", features = ["derive"], optional = true }
|
2024-07-26 16:48:01 +00:00
|
|
|
arrayvec.workspace = true
|
|
|
|
bitflags.workspace = true
|
|
|
|
bit-set.workspace = true
|
2024-01-11 00:38:11 +00:00
|
|
|
termcolor = { version = "1.4.1" }
|
2022-04-16 13:09:56 +00:00
|
|
|
# remove termcolor dep when updating to the next version of codespan-reporting
|
|
|
|
# termcolor minimum version was wrong and was fixed in
|
|
|
|
# https://github.com/brendanzab/codespan/commit/e99c867339a877731437e7ee6a903a3d03b5439e
|
2023-11-17 18:37:25 +00:00
|
|
|
codespan-reporting = { version = "0.11.0" }
|
2024-07-26 16:48:01 +00:00
|
|
|
rustc-hash.workspace = true
|
|
|
|
indexmap.workspace = true
|
2022-01-13 23:57:57 +00:00
|
|
|
log = "0.4"
|
2024-01-05 04:30:30 +00:00
|
|
|
spirv = { version = "0.3", optional = true }
|
2024-07-26 16:48:01 +00:00
|
|
|
thiserror.workspace = true
|
2024-11-04 03:38:33 +00:00
|
|
|
serde = { version = "1.0.214", features = ["derive"], optional = true }
|
2023-10-25 17:16:06 +00:00
|
|
|
petgraph = { version = "0.6", optional = true }
|
2022-01-13 23:57:57 +00:00
|
|
|
pp-rs = { version = "0.2.1", optional = true }
|
|
|
|
hexf-parse = { version = "0.2.1", optional = true }
|
2024-09-23 03:24:12 +00:00
|
|
|
unicode-xid = { version = "0.2.6", optional = true }
|
2022-01-13 23:57:57 +00:00
|
|
|
|
2024-07-06 08:58:52 +00:00
|
|
|
[build-dependencies]
|
|
|
|
cfg_aliases.workspace = true
|
|
|
|
|
2018-09-13 01:28:55 +00:00
|
|
|
[dev-dependencies]
|
2021-04-14 18:20:48 +00:00
|
|
|
diff = "0.1"
|
2024-07-26 16:48:01 +00:00
|
|
|
env_logger.workspace = true
|
2024-08-30 15:08:00 +00:00
|
|
|
itertools.workspace = true
|
2024-01-17 19:47:13 +00:00
|
|
|
# This _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 = "./hlsl-snapshots" }
|
2022-06-15 19:17:59 +00:00
|
|
|
# Require at least version 0.7.1 of ron, this version changed how floating points are
|
|
|
|
# serialized by forcing them to always have the decimal part, this makes it backwards
|
2024-02-05 17:30:29 +00:00
|
|
|
# incompatible with our tests because we do a syntactic diff and not a semantic one.
|
2023-07-20 00:44:33 +00:00
|
|
|
ron = "0.8.0"
|
2023-04-03 20:01:16 +00:00
|
|
|
rspirv = { version = "0.11", git = "https://github.com/gfx-rs/rspirv", rev = "b969f175d5663258b4891e44b76c1544da9661ab" }
|
2024-07-26 16:48:01 +00:00
|
|
|
serde = { workspace = true, features = ["derive"] }
|
2024-01-05 04:30:30 +00:00
|
|
|
spirv = { version = "0.3", features = ["deserialize"] }
|
2024-10-17 19:49:24 +00:00
|
|
|
strum.workspace = true
|