diff --git a/recipes/incoming-cosmic/gmp.toml b/recipes/incoming-cosmic/gmp.toml index ce7b7b0c..02518c97 100644 --- a/recipes/incoming-cosmic/gmp.toml +++ b/recipes/incoming-cosmic/gmp.toml @@ -1,3 +1,25 @@ +# ── ⚠ HAY DOS `gmp` EN EL CORPUS, Y ES A PROPÓSITO (verificado 2026-09-01) ───────────────────── +# `incoming-cosmic/gmp.toml` (ésta) y `incoming-kde/gmp.toml` emiten el MISMO nombre de artefacto y +# sellan en direcciones distintas. NO es un duplicado rancio que haya que unificar — son dos +# variantes deliberadas, y la diferencia está en las dos líneas que importan: +# +# KDE link=dynamic --enable-shared --enable-cxx ⇒ libgmp.so + libgmpxx.so +# COSMIC link=static --disable-shared ⇒ libgmp.a, sin C++ +# +# Y las dos citan a libqalculate como consumidor con conclusiones opuestas sobre `gmpxx.h`: acá se +# apaga a propósito para no arrastrar el runtime de C++; allá se activa porque el libqalculate de +# la campaña KDE exige `gmpxx.h`. Las dos están selladas y las dos son correctas para su frente. +# +# ⚠ LO QUE SÍ CUESTA, Y CUÁNDO. Compartir nombre hace ambigua la clasificación de `store-gc.sh`: un +# artefacto rancio de UNA de las dos puede caer como SUPERADO porque la OTRA tiene sellado vigente, +# y ahí se perdería el único ejemplar. La condición es precisa: **sólo corre riesgo si el hash +# vigente de una de las dos NO está sellado**. Medido el 2026-09-01: las dos selladas ⇒ exposición +# CERO. Antes de podar con nombres compartidos, comprobar eso, no el nombre. +# +# `mpfr` tiene exactamente el mismo par (KDE dynamic / COSMIC static) por la misma razón. +# ⇒ Si algún día molesta de verdad, la salida NO es unificar sino renombrar la dinámica a +# `gmp-shared`, que es la convención que el corpus ya usa (zlib-shared, cairo-shared…). Cuesta +# re-hashear: `yupana radio` da 7 sellados de KDE que caen a deuda (2 si se renombrara ésta). No se hizo por eso. # gmp — aritmética de precisión arbitraria. Entra al corpus por abajo del lanzador: el plugin de la # calculadora de pop-launcher llama al binario `qalc`, `qalc` es libqalculate, y libqalculate corta el # configure con «libgmp not found» si no está. O sea que la cadena de una tecla del escritorio baja diff --git a/recipes/incoming-kde/gmp.toml b/recipes/incoming-kde/gmp.toml index 34fc369e..bea06d46 100644 --- a/recipes/incoming-kde/gmp.toml +++ b/recipes/incoming-kde/gmp.toml @@ -1,3 +1,25 @@ +# ── ⚠ HAY DOS `gmp` EN EL CORPUS, Y ES A PROPÓSITO (verificado 2026-09-01) ───────────────────── +# `incoming-kde/gmp.toml` (ésta) y `incoming-cosmic/gmp.toml` emiten el MISMO nombre de artefacto y +# sellan en direcciones distintas. NO es un duplicado rancio que haya que unificar — son dos +# variantes deliberadas, y la diferencia está en las dos líneas que importan: +# +# KDE link=dynamic --enable-shared --enable-cxx ⇒ libgmp.so + libgmpxx.so +# COSMIC link=static --disable-shared ⇒ libgmp.a, sin C++ +# +# Y las dos citan a libqalculate como consumidor con conclusiones opuestas sobre `gmpxx.h`: acá se +# activa porque el libqalculate de la campaña KDE lo exige; allá se apaga a propósito para no +# arrastrar el runtime de C++. Las dos están selladas y las dos son correctas para su frente. +# +# ⚠ LO QUE SÍ CUESTA, Y CUÁNDO. Compartir nombre hace ambigua la clasificación de `store-gc.sh`: un +# artefacto rancio de UNA de las dos puede caer como SUPERADO porque la OTRA tiene sellado vigente, +# y ahí se perdería el único ejemplar. La condición es precisa: **sólo corre riesgo si el hash +# vigente de una de las dos NO está sellado**. Medido el 2026-09-01: las dos selladas ⇒ exposición +# CERO. Antes de podar con nombres compartidos, comprobar eso, no el nombre. +# +# `mpfr` tiene exactamente el mismo par (KDE dynamic / COSMIC static) por la misma razón. +# ⇒ Si algún día molesta de verdad, la salida NO es unificar sino renombrar la dinámica a +# `gmp-shared`, que es la convención que el corpus ya usa (zlib-shared, cairo-shared…). Cuesta +# re-hashear: `yupana radio` da 7 sellados de KDE que caen a deuda. No se hizo por eso. # GNU GMP 6.3.0 — aritmética de enteros/racionales/floats de precisión arbitraria (libgmp.so + libgmpxx.so). # Campaña KDE (ADR 0011): sustrato de libqalculate (motor matemático de KCalc/KRunner), que exige el # interfaz C++ gmpxx.h además del C. También base de mpfr (#2 de esta tanda).