Created attachment 762182 [details, diff] pcsx2_unbundle-glslang.patch Here's provided a patch to allow to use system dev-util/glslang instead of fetching upstream source and recompile at each install.
Created attachment 762183 [details] files/DefaultTBuiltInResource.h Latest versions of vulkan-headers do not ship default resources. Here's a dummy default resource that reproduces old included default resources. Made a while ago to unbundle glslang for dolphin emulator. I think I just copied this file suppressed during a commit and added one definitions added after it.
files/DefaultTBuiltInResource.h: will have to be removed when upstream will update their version of glslang
I was already looking into simplifying the previous unbundling seds, and I think this is starting to be too much for the -9999 ebuild even though it's something I'd want to see done -- especially for something upstream just started using and may be change/break anytime. I wouldn't say if we released a snapshot (could just do a patch then), although given upstream is changing things around a lot lately it may not be the best time to do that. Optimal would be to get upstream to give us switches like they did for yaml a while ago, unfortunately each of these new 3rdparty/ additions never have any (feel free to ask them).
(In reply to Ionen Wolkens from comment #3) > I was already looking into simplifying the previous unbundling seds, and I > think this is starting to be too much for the -9999 ebuild even though it's > something I'd want to see done -- especially for something upstream just > started using and may be change/break anytime. Yes for the same reason it is also not done in dolphin-emu-9999 > I wouldn't say if we released a snapshot (could just do a patch then), > although given upstream is changing things around a lot lately it may not be > the best time to do that. Idk much about pcsx2 activity, just seen the ebuild was modified in a way where I can unbundle glslang. > Optimal would be to get upstream to give us switches like they did for yaml > a while ago, unfortunately each of these new 3rdparty/ additions never have > any (feel free to ask them). For this thing their internal glslang/vk-headers need to be updated. I think cubeb is included in gentoo tree for the purpose of this ebuild, this is a nice new as it is widely used in many emulators. So progress hoped to be done for my local pkgs, many thanks.
(In reply to Samuel Bauer from comment #4) > I think cubeb is included in gentoo tree for the purpose of this ebuild, > this is a nice new as it is widely used in many emulators. So progress hoped > to be done for my local pkgs, many thanks. Yes, this is why I added it (also libchdr and rapidyaml were recently newly needed for pcsx2 too). glslang unfortunately got messy to unbundle though.
May be possible to visit this in a future glslang release, there's a tentative fix[1] to $URL [1] https://github.com/greg-lunarg/glslang/commit/90c521434
(In reply to Ionen Wolkens from comment #6) > May be possible to visit this in a future glslang release, there's a > tentative fix[1] to $URL > > [1] https://github.com/greg-lunarg/glslang/commit/90c521434 For example sake, libplacebo is making use of this already: https://code.videolan.org/videolan/libplacebo/-/commit/2a64dacaefe05e9d883409a01f06abc9f42b046f But upon consideration, don't think I want to unbundle this. It's still a very fickle library (unlike most other unbundled libs) and, from previous interactions[1], upstream will have no interest in fixing bugs with system version until they bump their bundled copy and will leave us constantly on our own. Will consider it if glslang can get used normally with -DUSE_SYSTEM_LIBS=yes or similar without doing yet more of our own hacks (upstream likely won't care to implement these themselves, but past has shown they do accept some PRs to unbundle even if not fully supported -- not that I have the patience to push for this myself). So, marking this UPSTREAM. [1] https://github.com/PCSX2/pcsx2/issues/7623