There is an updated pull request by q66 against master on the void-packages repository https://github.com/q66/void-packages cross-style https://github.com/void-linux/void-packages/pull/27412 [RFC WIP] crosstoolchain build-style This introduces a build-style for system crosstoolchains. It only works, and will only work, for toolchains targeting Void and one of its standard libraries. The none targets and stuff like mingw are explicitly a non-goal, to reduce the amount of magic we have to do. This has a bunch of advantages: - crosstoolchain templates can now be small and simple (also attached: proof of concept redoing of `cross-aarch64-linux-gnu`) - crosstoolchains writen with this build-style will no longer mess up masterdirs like the existing ones do; you can safely build your stuff without `-t` and your `masterdir` will be pristine - unification of options passed to `gcc`/libc/`binutils` configure, as much as possible - reduced repeated boilerplate code between individual crosstoolchains - `ccache` friendly - easier upgrades, easier maintenance, etc This is currently incomplete. These things are left to do: - [ ] Add musl support - [ ] Clean up the configure params, only keep the generic ones in the build-style, specific ones will go into individual crosstoolchains (this one is largely based on what the aarch64 one was doing) - [ ] Rework the other templates to use this - [ ] 64-bit cross on 32-bit hosts is probably actually fine in general, we just need to enable it - [ ] Allow glibc crosstoolchains on musl (this needs `glibc` 2.32 though) For now, posting for input. @Duncaen @leahneukirchen @pullmoll @ericonr @void-linux/pkg-committers [ci skip] A patch file from https://github.com/void-linux/void-packages/pull/27412.patch is attached