From 21040487eb6f96cff6ee79012ce79b8bacf01487 Mon Sep 17 00:00:00 2001 From: sergio Date: Fri, 17 Jul 2026 04:20:32 -0400 Subject: [PATCH] =?UTF-8?q?static:=20expat,=20libpng=20y=20libxml2=20cumpl?= =?UTF-8?q?en=20link=3Dstatic=20(3=20m=C3=A1s=20de=2028)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- recipes/expat.toml | 4 ++-- recipes/libpng.toml | 4 ++-- recipes/libxml2.toml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/recipes/expat.toml b/recipes/expat.toml index 56b8dd59..de0577e6 100644 --- a/recipes/expat.toml +++ b/recipes/expat.toml @@ -20,5 +20,5 @@ build = ["make"] # --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' -install = 'make DESTDIR=/out install' +compile = 'make LDFLAGS="-all-static -no-pie" -j"$(nproc)"' +install = 'make DESTDIR=/out install LDFLAGS="-all-static -no-pie"' diff --git a/recipes/libpng.toml b/recipes/libpng.toml index bf54bda2..e5143eff 100644 --- a/recipes/libpng.toml +++ b/recipes/libpng.toml @@ -12,7 +12,7 @@ link = "static" flags = [] [build.phases] configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static CPPFLAGS=-I/usr/include LDFLAGS=-L/usr/lib' -compile = 'make' -install = 'make DESTDIR=/out install' +compile = 'make LDFLAGS="-all-static -no-pie" -j"$(nproc)"' +install = 'make DESTDIR=/out install LDFLAGS="-all-static -no-pie"' [deps] build = ["zlib", "make"] diff --git a/recipes/libxml2.toml b/recipes/libxml2.toml index 8a00daf0..146a6c1d 100644 --- a/recipes/libxml2.toml +++ b/recipes/libxml2.toml @@ -33,5 +33,5 @@ configure = ''' --without-python --without-lzma --without-zlib \ --with-legacy ''' -compile = 'make' -install = 'make DESTDIR=/out install' +compile = 'make LDFLAGS="-all-static -no-pie" -j"$(nproc)"' +install = 'make DESTDIR=/out install LDFLAGS="-all-static -no-pie"'