sergio/takana
> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…
matar-gcc: 11 recetas C migradas gcc→zig-cc (medido: construyen y corren)
1# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
2# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
3# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
4name = "gzip"
5version = "1.14"
6
7[source]
8tarball = "https://ftp.gnu.org/gnu/gzip/gzip-1.14.tar.xz"
9# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
10# sha512 = "82aef53188b3e69b51b7ddab5b8c44a11a5b73c0039b22a315a0c7d244694feab0146748add4265901eb1b4c0cee8a9eb69594995f098830d964091af97079c5"
11sha256 = "01a7b881bd220bfdf615f97b8718f80bdfd3f6add385b993dcf6efd14e8c0ac6"
12
13[build]
14compiler = "zig-cc"
15target = "x86_64-linux-musl"
16link = "static"
17flags = []
18
19[deps]
20build = ["make"]
21
22[build.phases]
23# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
24compile = '''
25_abuild_phase() {
26# avoid text relocation
27 export DEFS="NO_ASM"
28 ./configure \
29 --build=$CBUILD \
30 --host=$CHOST \
31 --prefix=/usr \
32 --mandir=/usr/share/man \
33 --infodir=/usr/share/info
34 make
35}
36_abuild_phase
37'''
38# de package() de Alpine (traducido $pkgdir→/out):
39install = '''
40_abuild_phase() {
41make DESTDIR=/out install
42
43 rm -rf "/out"/usr/lib/charset.alias
44 rmdir -p "/out"/usr/lib 2>/dev/null || true
45
46 mkdir -p "/out"/bin
47 local i; for i in gzip gunzip zcat; do
48 mv "/out"/usr/bin/$i "/out"/bin/
49 done
50
51 # http://bugs.alpinelinux.org/issues/4011
52 ln -sf /bin/gunzip "/out"/usr/bin/uncompress
53}
54_abuild_phase
55'''
56
57# depends de runtime de Alpine (NO build-deps): less