static: libwebp, kbd, sudo y lsof cumplen link=static (14 de 28)
Fases multilínea: LDFLAGS inyectado en las líneas make de compile e install.
Control de lista de ficheros intacta: libwebp 33, kbd 689, sudo 32, lsof 4.
libwebp b3:138b70a6962f · kbd b3:248de1120197 · sudo b3:6fdbe83990ef ·
lsof b3:d30ddb01b86e
mandoc revertida: no usa libtool ("Unknown Clang option: '-all-static'") y con
-static pierde binarios (apropos, demandoc) ⇒ el control la echó atrás. Necesita
otro enfoque, como xz y pcre2.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Semantic delta
No definition changed: this change is text, documentation or data.
4 files · +7 −7
- recipes/kbd.toml +2 −2
- recipes/libwebp.toml +2 −2
- recipes/lsof.toml +1 −1
- recipes/sudo.toml +2 −2
diff --git a/recipes/kbd.toml b/recipes/kbd.toml
index e4f54b7c..6f4694e3 100644
--- a/recipes/kbd.toml
+++ b/recipes/kbd.toml
@@ -36,13 +36,13 @@ configure = '''
--disable-tests
'''
compile = '''
-make
+make LDFLAGS="-all-static -no-pie"
'''
# de package() de Alpine (traducido $pkgdir→/out). Quitadas las piezas que dependen
# de aports ausentes: loadkeys.initd/confd, ckbcomp (X.org keymaps) y los fix-ups de
# keymaps legacy. Se conserva la reubicación de setfont/kbd_mode + link open→openvt.
install = '''
-make DESTDIR="/out" install
+make DESTDIR="/out" install LDFLAGS="-all-static -no-pie"
# Replace busybox setfont utility.
mkdir -p "/out"/usr/sbin
diff --git a/recipes/libwebp.toml b/recipes/libwebp.toml
index 0dea0f25..d943480f 100644
--- a/recipes/libwebp.toml
+++ b/recipes/libwebp.toml
@@ -29,14 +29,14 @@ CFLAGS="$CFLAGS -O2 -flto=auto -ffat-lto-objects" \
--enable-libwebpdemux \
--enable-libwebpdecoder \
--disable-tiff # dependency-loop
- make
+ make LDFLAGS="-all-static -no-pie"
}
_abuild_phase
'''
# de package() de Alpine (traducido $pkgdir→/out):
install = '''
_abuild_phase() {
-make DESTDIR="/out" install
+make DESTDIR="/out" install LDFLAGS="-all-static -no-pie"
mkdir -p "/out"/usr/share/doc/libwebp
install -Dm644 PATENTS README.md "/out"/usr/share/doc/libwebp
}
diff --git a/recipes/lsof.toml b/recipes/lsof.toml
index 70321391..28518672 100644
--- a/recipes/lsof.toml
+++ b/recipes/lsof.toml
@@ -24,7 +24,7 @@ _abuild_phase() {
./Configure -n linux
# El script Configure genera su propia línea de link (${CC} -o lsof ... ${CFGL})
# e ignora los LDFLAGS estáticos de hammer; forzamos -static por CC. link=static.
- make CC="cc -static"
+ make CC="cc -static" LDFLAGS="-all-static -no-pie"
}
_abuild_phase
'''
diff --git a/recipes/sudo.toml b/recipes/sudo.toml
index 52498bf9..7dfcf30b 100644
--- a/recipes/sudo.toml
+++ b/recipes/sudo.toml
@@ -50,7 +50,7 @@ configure = '''
'''
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3):
compile = '''
-make
+make LDFLAGS="-all-static -no-pie"
'''
# de package() de Alpine (traducido $pkgdir→/out; el make install de sudo intenta chown/chmod
# setuid — el paquete lo re-aplica al hidratar; para el build alcanza con -o/-g neutralizados):
@@ -58,7 +58,7 @@ install = '''
# the sudo's mkinstalldir script miscreates the leading
# path components with bad permissions. fix this.
install -dm0755 "/out"/var "/out"/var/db
-make -j1 DESTDIR="/out" INSTALL_OWNER= install
+make -j1 DESTDIR="/out" INSTALL_OWNER= install LDFLAGS="-all-static -no-pie"
# Exactly the same as /etc/sudoers
rm -v "/out"/etc/sudoers.dist || true