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>
This commit is contained in:
+2
-2
@@ -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
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
+1
-1
@@ -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
|
||||
'''
|
||||
|
||||
+2
-2
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user