tawasuyu

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…

⎇ main recipes/popt.toml TOML · 39 líneas · 1.8 KB Historia crudo

busybox sale de las 24 build-deps: ya no viaja en NINGUNA imagen b53d91edf · Sergio ·

1# popt 1.19 — el parser de opciones de línea de comando de rpm. Entra por UNA razón y sólo una:
2# `logrotate` lo exige. Su `logrotate.c` hace `#include <popt.h>` en la primera pantalla y su
3# `configure` aborta sin él; no hay flag para sacarlo ni fallback interno a getopt.
4#
5# Es la hoja de la cadena `logrotate` del perfil `servidor`, que el grafo pedía como `wanted` desde
6# que se escribió `targets.toml` y que nadie había puesto.
7#
8# Tarball de release y no git: el árbol de git NO trae `configure` (lo genera `autoreconf`) y el
9# corpus no tiene autoconf/automake — el mismo motivo por el que entran libmnl, jq y gmp.
10#
11# `--disable-nls`: popt traduce sus mensajes de error con gettext, y el corpus tiene `gettext-tiny`,
12# cuyo `msgfmt` muere con SIGILL en algunos catálogos (los plurales del árabe). No vale la pena
13# arriesgar eso por los mensajes de error de un parser de flags que sólo ve `logrotate`.
14#
15# `link = "static"` y `--disable-shared`: el consumidor es un binario de sistema que queremos
16# monolítico (la estrategia de hidratación primaria). Publicar sólo `.a` evita además que
17# `logrotate` salga con un NEEDED de `libpopt.so.0` que después nadie provea — la familia de fallos
18# de `needed-colgante`.
19name    = "popt"
20version = "1.19"
21license = "MIT"
22
23[source]
24tarball = "http://ftp.rpm.org/popt/releases/popt-1.x/popt-1.19.tar.gz"
25sha256  = "c25a4838fc8e4c1c8aacb8bd620edb3084a3d63bf8987fdad3ca2758c63240f9"
26
27[build]
28compiler = "zig-cc"
29target   = "x86_64-linux-musl"
30link     = "static"
31flags    = []
32
33[build.phases]
34configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static --disable-nls --disable-rpath'
35compile   = 'make -j"$(nproc)"'
36install   = "make install DESTDIR=/out && find /out -name '*.la' -delete"
37
38[deps]
39build = ["binutils", "make", "pkgconf"]