Repository navigation
Conversation
A build-additional-cpu-arches matrix builds the gtk3, gtk4, sdl and vkcube+glxgears demos for the four newer arches through qemu user emulation, and runs them. The binfmt handlers are registered before the container starts, with the script of anylinux-setup-action, because docker/setup-qemu-action ships no ppc64 (BE) handler. The release job waits for that matrix with the same !cancelled() guard as the template, so a disabled matrix does not block a release. ppc64le, loongarch64 and riscv64 do have vulkan drivers in their repos, we just do not bundle them, so vkcube works there and only BE ppc64 makes glxgears its main binary. vulkan-swrast is installed for the test on every arch, it is packaged for powerpc64 too. The sdl demo keeps plain sdl2, which sdl2-compat provides on riscv64 and loongarch64.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Greetings from Port Edwards. This is #969 reborn from a branch of its own so that
mainin the fork can be reset to match upstream. #973 (sharun 3.7.1 + cross-libc-dlopen v0.2.8) has merged, so this is now a single clean commit on currentmain.What it does
A
build-additional-cpu-archesmatrix builds the gtk3, gtk4, sdl and vkcube+glxgears demos for riscv64, loongarch64, ppc64le and ppc64 through qemu user emulation, and runs them. The binfmt handlers are registered before the container starts, with the script ofanylinux-setup-action, becausedocker/setup-qemu-actionships no ppc64 (BE) handler. The release job waits for that matrix with the same!cancelled()guard as the template, so a disabled matrix does not block a release.ppc64le,loongarch64andriscv64do have vulkan drivers in their repos, we just do not bundle them, sovkcubeworks there; only BEppc64predates vulkan and makesglxgearsits main binary.vulkan-swrastis installed for the test on every arch — it is packaged forpowerpc64too.The sdl demo keeps plain
sdl2, whichsdl2-compatprovides on riscv64 and loongarch64.History worth keeping
The ppc64le gtk3 demo segfaulted through every earlier revision of this PR. I reported it as pkgforge-dev/cross-libc-dlopen#59 after bisecting it to the
gl-fwd.sopreload; the cause wasglfwd_resolve_asmsaving the argument registers inside the ABI's own frame header, so the resolver overwrote the saved r5 and r6 on the first call through every slot. That was fixed in pkgforge-dev/cross-libc-dlopen#60 and shipped in v0.2.8, which #973 brought in. So this PR should now be green on all 16 emulated jobs rather than 15.An earlier revision also needed
--overwritewhen installingvulkan-swrast, because the debloatedmesashipped mesa's layer files that upstream puts invulkan-mesa-implicit-layers. That was fixed in pkgforge-dev/archlinux-pkgs-debloated#95 and the rebuilt packages no longer carry them, so the workaround is gone.We aim to provide the software that shapes the world of tomorrow.
Requested by Samueru via errand.
Conversation: https://discord.com/channels/1313385177703256064/1561764843965649021