gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 939Rust 57Shell 37Markdown 331282 Definiciones

⎇ 232f23c5a8788a4465a3c1f18bc0e84904ca32f7 recipes/libgcrypt.toml TOML · 30 líneas · 1.5 KB Historia crudo

static: file y libgcrypt cumplen link=static (van 4 de 11) a8f3cb385 · sergio ·

1# libgcrypt 1.12.2 — lib C base (de-Alpinizada, Etapa G). compiler=gcc, configure-split, estático.
2name    = "libgcrypt"
3version = "1.12.2"
4
5[source]
6tarball = "https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.12.2.tar.bz2"
7sha256  = "7ce33c2492221a0436f96a8500215e9f3e3dcb5fd26a757cd415e7a843babd5e"
8
9[build]
10compiler = "gcc"
11target   = "x86_64-linux-musl"
12link     = "static"
13flags    = []
14
15[build.phases]
16# POR QUÉ `-all-static` y por qué en compile Y en install: `link = "static"` hace que el lab
17# exporte `LDFLAGS=-static`, pero libgcrypt enlaza con **libtool**, y libtool lee ese `-static`
18# como "preferí mis .a", NO como flag al linker ⇒ los binarios (hmac256, dumpsexp, mpicalc) salían
19# DINÁMICOS (`NEEDED: libc.so`) jurando ser estáticos. Ese `libc.so` es la musl que el toolchain
20# bundlea: en el host son 255B de linker script ⇒ el artefacto NO corría fuera del sandbox. El
21# único flag de libtool para un binario 100% estático es `-all-static`, y hay que repetirlo en
22# `install` porque libtool RELINKEA al instalar (sólo en compile: se instala la versión dinámica y
23# el fix se pierde en silencio). NUNCA en configure: rompe los tests de link de autotools.
24configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static --with-libgpg-error-prefix=/usr --disable-doc'
25compile   = 'make LDFLAGS="-all-static -no-pie" -j"$(nproc)"'
26install   = 'make DESTDIR=/out install LDFLAGS="-all-static -no-pie"'
27
28
29[deps]
30build = ["libgpg-error", "make"]