Vulkan: update to 1.4.328.1; glslang 16.1.0; revbump shaderc, godot.
Testing the changes
- I tested the changes in this PR: briefly
Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures using specific masterdirs:
- x86_64-musl
- i686
- I built this PR locally for these architectures (crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
- armv6l
- armv6l-musl
Due to the issue I caused with the FLAC merge (#54573), I made sure to be extra careful with this new large merge. I have built all affected packages on all the architectures listed above, and I have tested the software in my daily usage using the RADV driver. Everything appears to be working correctly.
[ci skip]
After rebasing to master, the vulkan-tools package no longer compiles.
I’m currently investigating the issue to identify the cause and potential fix.
The Vulkan-Loader seems to be causing conflicts with the Blender package in the CI.
The Vulkan-Tools build, specifically vkcube, now passes with this patch, which backports a commit from an upstream PR that has already been merged.
This patch fixes the vkcube build, which appears to have broken due to a recent CMake update.
In the future, this patch should be removed once the upstream changes are included in a release.
The latest releases of SPIRV-LLVM-Translator 18 and 19 are currently failing to build due to compilation errors. For this reason, I kept the previous version, which is building and working correctly.
I’ve now included the glslang, shaderc, and SPIRV-Tools packages. The next step is to check which packages will need an revbump due to the SONAME change in glslang.
Currently, SPIRV-Tools is kept at an older version for the same reason I mentioned earlier regarding the SPIRV-LLVM-Translator 18 and 19 builds failing with compilation errors. For this reason, I kept the previous version, which builds and works correctly. The issue might be related to LLVM, but I’m not entirely sure yet.
Currently waiting for the LLVM 21 builds to finish on the following architectures:
- armv7l
- armv7l-musl
- armv6l
- armv6l-musl
Because of that, I'm temporarily blocking the build until all related changes are fully compiled and verified locally.
Everything seems to be working well with the updated Vulkan and SPIR V stack. Local builds succeeded and the packages behave as expected during testing.
Godot also seems to be working correctly with the updated stack, and the engine behaved as expected during local testing.
I will continue monitoring for any issues, but so far the update looks stable.
I’ve just updated the PR:
- removed
SPIRV-LLVM-Translatorbecause it’s no longer required after the recent changes in that package, - added @zen0bit as the maintainer in the Godot commit, as agreed.
When I am building godot-extra-templates on top of your (rebased) branch
I got
SONAME: libSPIRV.so.16 <-> UNKNOWN PKG PLEASE FIX!
Thanks for the heads-up. I’ll check this as soon as I’m out of work.
libSPIRV.so.16 should come from glslang, and when I tested earlier I wasn’t getting this error. It’s possible that it appeared after I rebased the branch onto master.
I’ll investigate and update the PR accordingly.
I checked the glslang changes and it looks like libSPIRV.so is now libSPIRV.so.16, so I updated the reference accordingly.
While at it, I bumped glslang to 16.1.0 and shaderc to 2025.5.
I rebuilt godot with these updates, and everything compiled without any issues.