diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-04-12 22:27:49 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-04-12 22:27:49 +0900 |
| commit | adbb84c3dd72468fe86c96f6dc9cfabaee8b83d0 (patch) | |
| tree | 8fd9b2fc2c6f30e7407f206070a49c3716c29126 | |
| parent | 1084e31d95d36cfdefbfa99789e86763636f5630 (diff) | |
internal/rosa/glslang: spirv-tools artifact
Required by glslang.
Signed-off-by: Ophestra <cat@gensokyo.uk>
| -rw-r--r-- | internal/rosa/all.go | 1 | ||||
| -rw-r--r-- | internal/rosa/glslang.go | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 747ddaa6..96cf8428 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -137,6 +137,7 @@ const ( Sed Setuptools SPIRVHeaders + SPIRVTools SquashfsTools Strace TamaGo diff --git a/internal/rosa/glslang.go b/internal/rosa/glslang.go index c5aa2f49..176b5ae8 100644 --- a/internal/rosa/glslang.go +++ b/internal/rosa/glslang.go @@ -53,3 +53,40 @@ func init() { }, } } + +func (t Toolchain) newSPIRVTools() (pkg.Artifact, string) { + const ( + version = "2026.1" + checksum = "ZSQPQx8NltCDzQLk4qlaVxyWRWeI_JtsjEpeFt3kezTanl9DTHfLixSUCezMFBjv" + ) + return t.NewPackage("spirv-tools", version, pkg.NewHTTPGetTar( + nil, "https://github.com/KhronosGroup/SPIRV-Tools/archive/"+ + "refs/tags/v"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), nil, &CMakeHelper{ + Cache: []KV{ + {"CMAKE_BUILD_TYPE", "Release"}, + {"SPIRV-Headers_SOURCE_DIR", "/system"}, + }, + }, + Python, + + SPIRVHeaders, + ), version +} +func init() { + artifactsM[SPIRVTools] = Metadata{ + f: Toolchain.newSPIRVTools, + + Name: "spirv-tools", + Description: "an API and commands for processing SPIR-V modules", + Website: "https://github.com/KhronosGroup/SPIRV-Tools", + + Dependencies: P{ + SPIRVHeaders, + }, + + ID: 14894, + } +} |
