Files
takana/docs/licencias-pendientes.tsv
Sergio 1505bfad78 licencias: ffmpeg y LLVM salen del árbol — «lo decide un humano» era «lo decide la receta»
Tres que había clasificado como decisión legal y no lo eran. Las dos causas son distintas y las dos
me las estaba perdiendo por mirar sólo el árbol:

**ffmpeg → LGPL-2.1-or-later.** Su raíz trae cuatro COPYING.* y por eso el detector se planta, con
razón: el árbol solo no puede decidir. Pero el `LICENSE.md` del propio ffmpeg explica la regla —«In
combination the LGPL v2.1+ applies to FFmpeg» y «None of these parts are used by default, you have to
explicitly pass `--enable-gpl`… In this case, FFmpeg's license changes to GPL v2+»— y la respuesta la
da NUESTRA receta: no pasa `--enable-gpl` ni `--enable-version3`, y encima va con
`--disable-autodetect`. O sea que la licencia sale de cruzar el árbol con los flags, no de elegir uno
de los cuatro ficheros.

**llvm18 y clang18 → Apache-2.0 WITH LLVM-exception.** Acá el detector veía «tres licencias
distintas» en un solo `LICENSE.TXT` y se plantaba, pero el fichero ABRE diciendo «The LLVM Project is
under the Apache License v2.0 with LLVM Exceptions»: lo demás es la sección legada. La regla de
«varias licencias ⇒ decide un humano» es correcta como default y aquí el humano sólo tuvo que leer la
primera línea.

`licenses/` pasa de 48 a 49 textos: `LLVM-exception` hacía falta para poder declararla, que es el
lazo de siempre —no se declara lo que no se puede entregar—. El único sin texto canónico sigue siendo
`LicenseRef-qorpa-ajena-no-enumerable`, que es identificador nuestro y SPDX no publica.

97% (1135/1165); la cola baja de 27 a 24. Los 3 ArtifactHash, idénticos.
2026-09-05 21:26:53 +00:00

2.3 KiB

1# licencias-pendientes.tsv — lo que NO alcanza para afirmar una licencia, y por qué.
2# Lo regenera entero scripts/licencias-fuente.py en cada corrida: es la foto de lo
3# que queda, no un registro. Los veredictos van en licencias-evidencia.tsv.
4#
5# paquete<TAB>por qué no se puede afirmar
6boostsin COPYING ni declaración en el árbol
7cargo-auditsin COPYING ni declaración en el árbol
8gi-foreign-girsla raíz dice 2 licencias distintas (GPL-2.0 en COPYING.GPL, LGPL-2.0 en COPYING.LGPL): la expresión la compone un humano
9gi-foreign-typelibsla raíz dice 2 licencias distintas (GPL-2.0 en COPYING.GPL, LGPL-2.0 en COPYING.LGPL): la expresión la compone un humano
10gi-girepository-typelibla raíz dice 2 licencias distintas (GPL-2.0 en COPYING.GPL, LGPL-2.0 en COPYING.LGPL): la expresión la compone un humano
11gsd-schemasla raíz dice 2 licencias distintas (GPL-2.0 en COPYING, LGPL-2.1 en COPYING.LIB): la expresión la compone un humano
12hwdataGPL-2.0 ambigua · sin concesión fuera del COPYING
13libgdmel autor declara «GPL2+», que no es un SPDX del que tengamos texto en licenses/ (meson.build: license: 'GPL2+')
14libicalla raíz dice 2 licencias distintas (LGPL-2.1 en LICENSE.LGPL21.txt, MPL-2.0 en LICENSE.MPL2.txt): la expresión la compone un humano
15opensshla raíz dice 2 licencias distintas (BSD-3-Clause en LICENCE, MIT en LICENCE): la expresión la compone un humano
16pigzsin COPYING ni declaración en el árbol
17sqlite-sharedsin COPYING ni declaración en el árbol
18vulkan-headersREUSE con varias licencias: Apache-2.0,MIT
19xz-sharedla raíz dice 4 licencias distintas (0BSD en COPYING.0BSD, GPL-2.0 en COPYING.GPLv2, GPL-3.0 en COPYING.GPLv3, LGPL-2.1 en COPYING.LGPLv2.1): la expresión la co…
20ampfuente git (probá --fetch)
21cargo-binstallfuente git (probá --fetch)
22duplicacyfuente git (probá --fetch)
23gmptarball no cacheado (probá --fetch)
24leptonicatarball no cacheado (probá --fetch)
25libcanberratarball no cacheado (probá --fetch)
26tzdatafuente git (probá --fetch)
27waybackurlsfuente git (probá --fetch)