gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1181Shell 82Rust 62Markdown 521515 Sutichaykuna

boost: dejar escrito que un consumidor en modo CONFIG debe declarar la variante

El paquete cmake que genera b2 etiqueta runtime-link=static y lo RECHAZA si el
consumidor no lo pide:

    * libboost_iostreams.a (static runtime, Boost_USE_STATIC_RUNTIME not ON)

La nota dice qué pasar (-DBoost_USE_STATIC_LIBS=ON -DBoost_USE_STATIC_RUNTIME=ON),
que las dos afirmaciones son CIERTAS de este artefacto, y por qué no se arregla
del lado de boost: pasarlo a runtime-link=shared tocaría el artefacto compartido
y con él a kactivitymanagerd, que hoy anda porque lo busca en modo módulo.

Sólo comentario: el hash no cambia (comprobado).

f9d6b4ca70a869f6ba148b2a0a97f704999b466e · ruwaq Sergio · (2 p'unchaw ñawpaq) · tayta bd9c765e1 · kay commitpi sach'ata qhaway

Semántico sayk'uy

Mana ima sutichaypas t'ikrakurqanchu: qillqalla, yachachiylla utaq willaylla t'ikrakurqan.

1 qillqakuna · +20 −0

diff --git a/recipes/boost.toml b/recipes/boost.toml
index d0a9129e..d84837a5 100644
--- a/recipes/boost.toml
+++ b/recipes/boost.toml
@@ -1,5 +1,25 @@
 # boost 1.86.0 — HEADERS-ONLY. kactivitymanagerd usa Boost.Container (header-only) ⇒ sólo necesita
 # Boost_INCLUDE_DIR. No compilamos las libs de boost (b2): copiamos el árbol `boost/` a /usr/include.
+#
+# ⚠ **UN CONSUMIDOR EN MODO CONFIG TIENE QUE DECLARAR LA VARIANTE — leer esto antes de pelearse.**
+# Esta receta construye con `runtime-link=static`, y el paquete cmake que genera `b2` **etiqueta**
+# esa variante. Un `find_package(Boost … CONFIG)` la encuentra y la RECHAZA si el consumidor no
+# afirma que la quiere:
+#
+#     Found package configuration file:
+#       /usr/lib/cmake/boost_iostreams-1.86.0/boost_iostreams-config.cmake
+#     but it set boost_iostreams_FOUND to FALSE … No suitable build variant has been found.
+#     The following variants have been tried and rejected:
+#     * libboost_iostreams.a (static runtime, Boost_USE_STATIC_RUNTIME not ON)
+#
+# ⇒ el consumidor pasa `-DBoost_USE_STATIC_RUNTIME=ON -DBoost_USE_STATIC_LIBS=ON`. Las dos cosas son
+# CIERTAS de este artefacto, no un truco para callar al config: acá sólo se publica la `.a` y se
+# enlaza el runtime estáticamente. El error de arriba es la fuente autorizada de qué pedir.
+#
+# **Y no se arregla del lado de boost**: pasarlo a `runtime-link=shared` cambiaría el artefacto
+# compartido y con él a `kactivitymanagerd`, que hoy anda porque lo busca en modo MÓDULO y a
+# `FindBoost` la variante no le importa. El dato vive en el consumidor porque es el consumidor el
+# que elige cómo enlaza.
 name    = "boost"
 version = "1.86.0"
 # licencia: LICENSE_1_0.txt en la raíz del tarball pineado: Boost Software License 1.0