Subject: bug#74217: Bootstrapping Zig with no Binary Blobs

From: Motiejus Jakštys <[email-masked]>
Date: Thu, 28 Nov 2024 14:41:10 +0200

On Thu, Nov 28, 2024 at 1:08 PM Hilton Chain <[email-masked]> wrote:
>
> <...> together with the concern on generated files.

Hi Hilton,

The only remaining, to my knowledge, binary file is `abilists`, which,
once you have `zig` binary, can be generated this way:

git clone https://github.com/ziglang/glibc-abi-tool; cd glibc-abi-tool
git checkout fc5d0a7046b76795e4219f8f168e118ec29fbc53
/path/to/zig-0.13/bin/zig run consolidate.zig
mv abilists /path/to/zig/lib/libc/glibc/abilist

For 0.12.1:
rm -fr glibc/2.39
sed -i '133d' consolidate.zig
/path/to/zig-0.12.1/bin/zig run consolidate.zig
mv abilists /path/to/zig/lib/libc/glibc/abilist

I wasn't able to generate it for 0.11, but perhaps it's not as
important, as I imagine there are very few people, if any, still
developing on 0.11. Since one needs abilists *only* to cross-compile
to non-guix glibc targets, it sounds like a vanishingly small use case
for Guix to support.

Motiejus