Tercera tanda curada, agrupada por la URL DE FUENTE de cada receta (que es la evidencia que el nombre no da): los once módulos Qt sin prefijo, freedesktop (dbus, libinput, libevdev, libdisplay-info, poppler, pulseaudio, upower, NetworkManager, ModemManager, polkit), kernel.org (los tres kernels, linux-headers, git, iproute2, libuuid) y PyPI. Los kernels llevan `GPL-2.0-only WITH Linux-syscall-note` explícita. No es adorno: sin esa excepción, todo binario de espacio de usuario que hace un syscall sería obra derivada del kernel. Es exactamente el tipo de dato que un campo de licencia existe para no perder. Quedan 147 sin declarar: 69 de GitHub donde la propia API dice NOASSERTION (hay que abrir el fuente), 20 de tawasuyu —que son nuestras o del otro agente, así que la licencia la decide el usuario, no yo— y el resto repartido en GNOME, gitlab.freedesktop y sueltos. Más 71 con SPDX ambiguo pendientes de desambiguar (`licencias.sh --revisar`). Hashes verificados otra vez sobre 20 recetas tocadas: 20 idénticos, 0 cambiados. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
53 lines
2.1 KiB
TOML
53 lines
2.1 KiB
TOML
# libuuid-shared 2.42.2 — SÓLO libuuid.so del tarball de util-linux, para la isla dinámica.
|
|
#
|
|
# evolution-data-server pide `uuid` como REQUERIDA (CMakeLists.txt:424) para generar los UID de
|
|
# contactos y eventos. El util-linux canónico la provee, pero es `--disable-shared --enable-static`
|
|
# y su libuuid.a no es PIC (verificado) ⇒ no entra en libedataserver.so.
|
|
#
|
|
# La variante NO reconstruye util-linux entero: --disable-all-programs apaga los ~100 binarios
|
|
# (mount, fdisk, lsblk…) y --enable-libuuid deja exactamente una librería. Es deliberado que esta
|
|
# receta sea angosta y no un "util-linux-shared": el canónico tiene un radio grande y una lista
|
|
# larga de --without-* elegidos para el userland estático; duplicar todo eso para conseguir un .so
|
|
# de 30 KB sería copiar una superficie que después hay que mantener en dos lugares.
|
|
#
|
|
# El sed de -mcpu=baseline se conserva del canónico: zig cc traduce ese flag a un `-mcpu=` VACÍO en
|
|
# modo preprocesador (`-dM -E -`) y los generadores errnos.h/syscalls.h lo invocan así.
|
|
name = "libuuid-shared"
|
|
version = "2.42.2"
|
|
license = "BSD-3-Clause"
|
|
|
|
[source]
|
|
tarball = "https://www.kernel.org/pub/linux/utils/util-linux/v2.42/util-linux-2.42.2.tar.xz"
|
|
sha256 = "03a05d3adf9602ef128f2da05b84b3205ce60c351e5737c0370f74000679ce8a"
|
|
|
|
[build]
|
|
compiler = "zig-cc"
|
|
target = "x86_64-linux-musl"
|
|
link = "dynamic"
|
|
flags = []
|
|
|
|
[build.phases]
|
|
configure = '''
|
|
./configure \
|
|
--build=$CBUILD --host=$CHOST \
|
|
--prefix=/usr \
|
|
--enable-shared --disable-static \
|
|
--disable-all-programs \
|
|
--enable-libuuid \
|
|
--disable-nls --disable-rpath \
|
|
--without-python --without-systemd --without-systemdsystemunitdir \
|
|
--without-udev --without-ncursesw --without-ncurses --without-tinfo \
|
|
--without-readline --without-libz --without-selinux --without-audit --without-econf
|
|
'''
|
|
compile = '''
|
|
for f in tools/all_errnos tools/all_syscalls; do
|
|
[ -f "$f" ] || continue
|
|
sed -i 's#^"$@" -MD#a=(); for x in "$@"; do [ "$x" = "-mcpu=baseline" ] || a+=("$x"); done\n"${a[@]}" -MD#' "$f"
|
|
done
|
|
make -j"$(nproc)"
|
|
'''
|
|
install = 'make DESTDIR=/out install'
|
|
|
|
[deps]
|
|
build = ["linux-headers", "make", "pkgconf"]
|