Files
hammer/recipes/expat.toml
T
sergioandClaude Opus 4.8 21040487eb static: expat, libpng y libxml2 cumplen link=static (3 más de 28)
Mismo patrón que curl: LDFLAGS="-all-static -no-pie" en compile Y en install,
porque libtool relinkea al instalar.

Verificado con un CONTROL que xz obligó a añadir: no basta rc=0 + hash. El
build de xz con -all-static devolvió rc=0 y hash válido, pero el artefacto SALIÓ
SIN NINGÚN BINARIO (el viejo tenía xz, xzgrep, xzdiff, xzless, lzmainfo): con
-all-static, libtool no produce la lib compartida (liblzma.la -rpath) y el
enlace de los ejecutables se saltea EN SILENCIO. Un "éxito" que muti­la el
paquete. xz queda revertida: necesita otro enfoque (separar la lib de los
binarios), no este patrón.

⇒ el criterio ahora compara la LISTA DE FICHEROS del artefacto nuevo contra la
del viejo, además de NEEDED=0. Los tres pasan: 15, 13 y 114 ficheros, idénticos
a sus sellados previos.

expat b3:e6990b3e555f · libpng b3:f65887051274 · libxml2 b3:c4c65c4b17b8

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 04:20:32 -04:00

25 lines
1.0 KiB
TOML

# expat 2.8.1 — parser XML stream (C). Lib base: dep de cola C (fontconfig, dbus, etc.) y crates -sys.
# De-Alpinizada (Etapa G): compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split explícito, estático. Sin deps externas.
name = "expat"
version = "2.8.1"
[source]
tarball = "https://github.com/libexpat/libexpat/releases/download/R_2_8_1/expat-2.8.1.tar.xz"
sha256 = "10b195ee78160a908388180a8fe3603d4e9a12f4755fbf5f3816b23a9d750da0"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
[deps]
build = ["make"]
[build.phases]
# --with-pic: el .a estático lleva objetos PIC ⇒ enlazable dentro de .so (Mesa liga libexpat en
# libgallium/xmlconfig; sin PIC: «R_X86_64_PC32 ... recompile with -fPIC»). PIC es superset.
configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static --with-pic --without-docbook'
compile = 'make LDFLAGS="-all-static -no-pie" -j"$(nproc)"'
install = 'make DESTDIR=/out install LDFLAGS="-all-static -no-pie"'