static: parted y libarchive cumplen link=static (10 de 28)
parted es el caso didáctico: YA tenía -all-static en compile — era el precedente que citaban jq/shadow/procps-ng — y aun así salía dinámico, porque le faltaba en INSTALL. libtool RELINKEA el binario al instalar y ahí pierde el flag. El patrón citado estaba a medias, y por eso el propio precedente mentía. libarchive: mismo patrón, forma de fase con comillas dobles. Control de lista de ficheros intacta: parted 23, libarchive 55. parted b3:1f2046dde4dd · libarchive b3:238f1fdfc704 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Delta semántico
Ninguna definición cambió: el cambio es de texto, documentación o datos.
2 archivos · +8 −3
- recipes/libarchive.toml +4 −2
- recipes/parted.toml +4 −1
diff --git a/recipes/libarchive.toml b/recipes/libarchive.toml
index 272e95f4..d0b4b4f3 100644
--- a/recipes/libarchive.toml
+++ b/recipes/libarchive.toml
@@ -37,5 +37,7 @@ CFLAGS='-O2 -fno-sanitize=undefined' ./configure --prefix=/usr \
--without-lzo2 --without-libb2 --without-iconv --without-xml2 --without-expat \
--without-openssl --without-nettle --without-cng --disable-acl --disable-xattr
"""
-compile = "make -j\"$(nproc)\""
-install = "make DESTDIR=/out install"
+# -all-static en compile E install (libtool relinkea al instalar): sin esto el `link =
+# "static"` de la receta se ignora en silencio y bsdtar sale dinámico. scripts/static-audit.sh
+compile = "make LDFLAGS=\"-all-static -no-pie\" -j\"$(nproc)\""
+install = "make DESTDIR=/out install LDFLAGS=\"-all-static -no-pie\""
diff --git a/recipes/parted.toml b/recipes/parted.toml
index bf24bf1d..fe5a2089 100644
--- a/recipes/parted.toml
+++ b/recipes/parted.toml
@@ -45,8 +45,11 @@ compile = '''
make LDFLAGS="-all-static"
'''
# de package() de Alpine (traducido $pkgdir→/out):
+# LDFLAGS también acá: libtool RELINKEA el binario al instalar, así que el -all-static de
+# `compile` se PIERDE y el ejecutable sale dinámico igual. Medido 2026-07-17 con
+# scripts/static-audit.sh: parted era el precedente citado del patrón… y estaba a medias.
install = '''
-make DESTDIR="/out" install
+make DESTDIR="/out" install LDFLAGS="-all-static"
'''
# lvm2 (device-mapper) ausente y opcional → --disable-device-mapper. libuuid real vía util-linux