Files
hammer/recipes/incoming-cosmic/mpfr.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

39 lines
1.4 KiB
TOML

# mpfr — coma flotante de precisión arbitraria con redondeo correcto, sobre gmp. El segundo eslabón
# de la cadena que baja desde una tecla del escritorio hasta la aritmética: libqalculate corta el
# configure con «libmpfr not found or uses a different ABI» si no está.
#
# «or uses a different ABI» en ese mensaje no es adorno: el test de upstream enlaza contra `mpfr_get_version`,
# así que un mpfr construido contra OTRO gmp falla igual que uno ausente. Por eso [[gmp]] se declara
# acá y no se da por sentado: los dos artefactos tienen que venir del mismo grafo.
name = "mpfr"
version = "4.2.2"
license = "LGPL-3.0-or-later"
[source]
tarball = "https://www.mpfr.org/mpfr-4.2.2/mpfr-4.2.2.tar.xz"
sha256 = "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
[build.phases]
# `--with-gmp=/usr` apunta al gmp del sandbox —el que proyecta la dep, no uno del sistema—, que es
# donde `hammer` monta los artefactos declarados. Sin el flag, el configure de mpfr busca en rutas
# del host y el error que da («gmp.h can't be found») manda a instalar algo, que es justo lo que en
# este lab no hay que hacer.
configure = '''
./configure \
--build=$CBUILD --host=$CHOST \
--prefix=/usr \
--disable-shared --enable-static \
--with-gmp=/usr
'''
compile = 'make -j"$(nproc)"'
install = 'make DESTDIR=/out install'
[deps]
build = ["make", "gmp"]