rust-gpu/crates/rustc_codegen_spirv/Cargo.toml

61 lines
2.2 KiB
TOML
Raw Normal View History

[package]
name = "rustc_codegen_spirv"
version = "0.4.0-alpha.14"
2020-08-17 22:17:24 +00:00
authors = ["Embark <opensource@embark-studios.com>"]
edition = "2018"
2020-08-17 22:17:24 +00:00
license = "MIT OR Apache-2.0"
repository = "https://github.com/EmbarkStudios/rust-gpu"
description = "SPIR-V code generator backend for rustc"
2020-08-17 22:17:24 +00:00
#keywords = []
#categories = []
#readme = "README.md"
[lib]
crate-type = ["dylib"]
Add spirv-tools and spirv-tools-sys crates to wrap usage of spirv-tools (#179) * Add spirv-headers and spirv-tools as submodules * Add simple generator and the generated code needed for compilation * Add first pass on spirv-tools-sys * Add first pass on spirv-tools * Replace invocation of spirv-opt with spirv-tools crate * Use C++11 * Placate clippy * Add validation, replacing spirv-val with the spirv-tools crate * Fix MSVC warning * Use patched spirv-tools * Fixup metadata * Add same compiler flags as "official" build scripts * Update spirv-tools and generated files * Fixup * Add assembler and example * Use assembler in tests * Oops, fix macos TARGET_OS * write -> write_all * Start splitting spirv-tools into a compiled vs tool feature set * Checkpointing * Checkpoint * Boop * Get tests to work both with installed and compiled tools * Cleanup CI config * Splits steps to clearly show how long each part of a longer (eg test) step actually takes * Label all steps * Explicitly disable submodule checkout * Rustfmt * Rename features for consistency and fix clippy warnings * Split "core" crates from examples * Add run_clippy bash script * Add test script * Remove x flag * Newline * Actually print out errors from running val/opt * Revert drive-by import merging * Change intro to take the changes this PR has into account * Actually run tests on Windows * Fetch only the host target to reduce fetch times * Add more info when a spirv tool returns a non-zero exit code * Rustfmt * Switch tool assembler to use files to see if it fixes windows * Use files for input and output for now until I can figure out Windows being dumb * Fix API docs generation * Compile and use C++ code to check Windows issue * Return to use installed tools
2020-10-29 22:03:07 +00:00
[features]
# By default, the use-compiled-tools is enabled, as doesn't require additional
# setup steps for the user. This does however mean that you will need to disable
# default features and explicitly enable `use-installed-tools` if you are using
# this in an environment with spirv-tools in PATH, and you don't want to take
# the compile time cost
default = ["use-compiled-tools"]
# If enabled, uses spirv-tools binaries installed in PATH, instead of
# compiling and linking the spirv-tools C++ code
use-installed-tools = ["spirv-tools/use-installed-tools"]
# If enabled will compile and link the C++ code for the spirv tools, the compiled
# version is preferred if both this and `use-installed-tools` are enabled
use-compiled-tools = ["spirv-tools/use-compiled-tools"]
[dependencies]
# HACK(eddyb) these only exist to unify features across dependency trees,
# in order to avoid multiple separate instances of `rustc_codegen_spirv`.
2021-06-17 15:06:26 +00:00
hashbrown = { version = "0.11", features = ["default"] }
libc = { version = "0.2", features = ["align", "extra_traits"] }
num-traits = { version = "0.2", features = ["libm"] }
syn = { version = "1", features = ["visit", "visit-mut"] }
# Normal dependencies.
ar = "0.9.0"
bimap = "0.6"
indexmap = "1.6.0"
2021-10-29 11:38:28 +00:00
rspirv = "0.11"
2021-08-27 18:16:26 +00:00
rustc-demangle = "0.1.21"
sanitize-filename = "0.4"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
smallvec = "1.6.1"
2022-02-04 15:19:49 +00:00
spirv-tools = { version = "0.8", default-features = false }
rustc_codegen_spirv-types = { path = "../rustc_codegen_spirv-types", version = "0.4.0-alpha.14" }
2020-08-11 11:14:18 +00:00
[dev-dependencies]
pipe = "0.4"
2021-10-14 14:38:15 +00:00
pretty_assertions = "1.0"
2021-06-17 15:06:26 +00:00
tempfile = "3.2"
# Note that in order to use RA and have access to `rustc_*` crates, you also
# need to set `"rust-analyzer.rustcSource": "discover"` in e.g. VSCode.
[package.metadata.rust-analyzer]
# This crate uses #[feature(rustc_private)]
rustc_private = true