Files
sergioandClaude Opus 4.8 a537f9857a gnome onda 2: gi-foreign-girs genera cairo-1.0.gir del .in
cairo-1.0.gir NO está en gir/ como .gir sino como cairo-1.0.gir.in (g-i lo genera
con configure_file). Reproduzco la sustitución @CAIRO_GIR_PACKAGE@=cairo-gobject
y @CAIRO_SHARED_LIBRARY@=libcairo-gobject.so.2 con sed. Desbloquea pango (PangoCairo
referencia cairo-1.0). Es el gir foráneo que hizo SIGSEGV al keystone original.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-27 16:49:51 -04:00

31 lines
1.7 KiB
TOML

# gi-foreign-girs — instala los .gir FORÁNEOS estáticos que gobject-introspection trae hand-written en
# su source `gir/` (cairo-1.0, freetype2-2.0, fontconfig-2.0, xft/xlib/…). Nuestro g-i se construye con
# -Dbuild_introspection_data=false (evita el SIGSEGV de g-ir-compiler en los typelibs X11/cairo) ⇒ NO
# instala NINGÚN .gir. Pero las islas GUI los referencian por --include al escanear: harfbuzz→freetype2-2.0,
# pango/gjs→cairo-1.0, etc. El g-ir-scanner sólo necesita el .gir (XML) presente en /usr/share/gir-1.0
# para resolver el --include (no compila typelib) ⇒ copiarlos basta, SIN re-hashear g-i (sin cascada).
# Ver [[gnome-introspection-dinamica]].
name = "gi-foreign-girs"
version = "1.84.0"
[source]
tarball = "https://download.gnome.org/sources/gobject-introspection/1.84/gobject-introspection-1.84.0.tar.xz"
sha256 = "945b57da7ec262e5c266b89e091d14be800cc424277d82a02872b7d794a84779"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "dynamic"
[build.phases]
# Sin compilar: sólo copia los .gir estáticos del source a /usr/share/gir-1.0.
configure = "true"
compile = "true"
# cairo-1.0.gir NO está en gir/ como .gir sino como .gir.in (g-i lo genera con configure_file
# sustituyendo @CAIRO_GIR_PACKAGE@=cairo-gobject y @CAIRO_SHARED_LIBRARY@=libcairo-gobject.so.2).
# Reproduzco la sustitución con sed (pango/PangoCairo lo referencian por --include=cairo-1.0).
install = "mkdir -p /out/usr/share/gir-1.0 && cp gir/*.gir /out/usr/share/gir-1.0/ && sed -e 's/@CAIRO_GIR_PACKAGE@/cairo-gobject/g' -e 's/@CAIRO_SHARED_LIBRARY@/libcairo-gobject.so.2/g' gir/cairo-1.0.gir.in > /out/usr/share/gir-1.0/cairo-1.0.gir && ls /out/usr/share/gir-1.0/"
[deps]
build = []