Commit 2f19f07
committed
Use shader's Cargo.toml for rust-gpu version/toolchain
We can still override the version and toolchain with CLI args. This
commit just changes the defaults.
I feel like there could be a lot of edge cases for this implementation.
So I consider it more of a first draft.
Notable changes:
* `Spirv` renamed to `SpirvCLI`.
* New `impl SpirvSource` that does all the shader crate querying.
* CLI args change: `--spirv-builder` is now split into
`--spirv-builder-source` and `--spirv-builder-version`.
* `--shader-crate` now lives on the `install` subcommand, which
because it is inherited by `build` (where it was originally), means it
doesn't make much of a difference.
* The full build test now has a teardown function making it idempotent.
* Cache folder structure now has sub folders for `spirv-builder-cli`'s
and `rust-gpu` repos.
Things to consider:
* Can we remove `TARGET_SPECS` now, because we have a copy of the
`rust-gpu` repo, we can get them from there instead?
* We have to copy the `shader-crate-template` outside of the workspace
to get the tests to run. This is because recent Cargo now uses version
4 in `Cargo.lock` and the shader crate toolchain uses an older version
of Cargo that doesn't recognise that version. But that doesn't seem
right. Why is Cargo looking outside of the `shader-crate-template`
anyway??
* What's the UX expectations for changing `spirv-std` versions or
overriding `rust-gpu` versions and toolchain? I think in most cases
`spirv-builder-cli` rebuilds should occur because the changes will
cause cache directory changes. But I think it'd be good to at least
manually test this.
* Should the main build test be moved out into an integrations tests
folder? Also it'd be good to have each test run in its own cache
folder so that we can run more than one full build test at once. I'd
still like to test each `spirv-builder-cli` feature, ie:
`spirv-builder-pre-cli` and `spirv-builder-0_10`. We're currently only
testing `spirv-builder-pre-cli`.1 parent 87de5da commit 2f19f07
File tree
11 files changed
+796
-196
lines changed- crates
- cargo-gpu
- src
- spirv-builder-cli
11 files changed
+796
-196
lines changedSome generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
46 | 47 | | |
47 | 48 | | |
48 | 49 | | |
49 | | - | |
| 50 | + | |
50 | 51 | | |
| 52 | + | |
| 53 | + | |
51 | 54 | | |
52 | 55 | | |
0 commit comments