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>
This commit is contained in:
2026-07-17 04:39:47 -04:00
co-authored by Claude Opus 4.8
parent ea5279a608
commit 5b4d15fad1
2 changed files with 8 additions and 3 deletions
+4 -2
View File
@@ -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\""
+4 -1
View File
@@ -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