diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 96cf8428..0ce3444a 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -64,6 +64,7 @@ const ( GenInitCPIO Gettext Git + Glslang GnuTLS Go Gperf diff --git a/internal/rosa/glslang.go b/internal/rosa/glslang.go index 176b5ae8..b57790e8 100644 --- a/internal/rosa/glslang.go +++ b/internal/rosa/glslang.go @@ -90,3 +90,44 @@ func init() { ID: 14894, } } + +func (t Toolchain) newGlslang() (pkg.Artifact, string) { + const ( + version = "16.2.0" + checksum = "6_UuF9reLRDaVkgO-9IfB3kMwme3lQZM8LL8YsJwPdUFkrjzxJtf2A9X3w9nFxj2" + ) + return t.NewPackage("glslang", version, pkg.NewHTTPGetTar( + nil, "https://github.com/KhronosGroup/glslang/archive/"+ + "refs/tags/"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), &PackageAttr{ + // test suite writes to source + Writable: true, + Chmod: true, + }, &CMakeHelper{ + Cache: []KV{ + {"CMAKE_BUILD_TYPE", "Release"}, + {"BUILD_SHARED_LIBS", "ON"}, + {"ALLOW_EXTERNAL_SPIRV_TOOLS", "ON"}, + }, + Script: "ctest", + }, + Python, + Bash, + Diffutils, + + SPIRVTools, + ), version +} +func init() { + artifactsM[Glslang] = Metadata{ + f: Toolchain.newGlslang, + + Name: "glslang", + Description: "reference front end for GLSL/ESSL", + Website: "https://github.com/KhronosGroup/glslang", + + ID: 205796, + } +}