v0.0.75
v0.0.75
Complete cross-platform shader compilation toolchain with support for GLSL, HLSL, WGSL, SPIR-V, OpenCL, and CUDA. Pre-built binaries for all supported platforms.
π οΈ Included Tools
| Tool | Description | Capabilities |
|---|---|---|
| glslang | Reference GLSL/ESSL validator and compiler | GLSL/ESSL β SPIRV, with SPIRV optimizer |
| SPIRV-Cross | SPIRV reflection and transpiler | SPIRV β GLSL/HLSL/MSL/WGSL |
| spirv-to-dxil | Mesa's SPIR-V β DXIL compiler (carve-out, no LLVM dep) | SPIR-V β DXIL for D3D12 (Windows amd64/arm64 + Linux build-cover) |
| Naga | Rust-based WebGPU shader compiler | WGSL/GLSL/SPIRV β SPIRV/WGSL/MSL/HLSL/GLSL |
| clspv | OpenCL C to Vulkan SPIR-V compiler | OpenCL C β SPIR-V for cross-backend compute |
| llvm | LLVM + Clang (NVPTX, AMDGPU, SPIRV experimental backends) | Foundation for clspv and SPIRV-LLVM-Translator |
| spirv-llvm-translator | SPIR-V β LLVM IR bridge (built against llvm) | Cross-hub translation |
| wgpu-native | Cross-platform WebGPU implementation | GPU compute via Metal/Vulkan/D3D12/OpenGL |
π» Supported Platforms
All binaries are provided for the following platforms:
- β macOS ARM64 (Apple Silicon M1/M2/M3/M4)
- β macOS x86_64 (Intel)
- β Linux x86_64 (glibc 2.31+)
- β Linux ARM64 (glibc 2.31+)
- β Windows x86_64
- β Windows ARM64
Each tool is packaged separately:
glslang-{platform}.tar.gz/.zipspirv-cross-{platform}.tar.gz/.zipspirv-to-dxil-{platform}.tar.gz(Linux x86_64/ARM64 + Windows x86_64/ARM64; macOS and WASM omitted β no D3D12 consumer there)naga-{platform}.tar.gz/.zipclspv-{platform}.tar.gz/.zipllvm-{platform}.tar.gz/.zipspirv-llvm-translator-{platform}.tar.gz/.zipwgpu-{platform}.tar.gz
π License
All tools maintain their original licenses. See individual tool directories for license information.
πͺ Windows Note
Our Windows artifacts are PE/COFF DLLs built via MSYS2 UCRT64 (GCC / MinGW-w64 family), not MSVC β they link against ucrtbase.dll (the Universal CRT) and ship with GCC-style .dll.a import libraries rather than MSVC .lib files. Consumers need a UCRT-family toolchain (MSYS2, MinGW-w64 UCRT, or clang in UCRT mode); plain MSVC can't link them directly due to the CRT coupling and import-lib format differences.