Files
hammer/recipes/incoming-gnome/libuuid-shared.toml
T
sergioandClaude Opus 5 fe474dab63 licencias: 994 de 1141 (87%) — cerradas las familias Qt, freedesktop, kernel.org y PyPI
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>
2026-08-07 13:29:31 -04:00

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"]