# pygobject 3.50.0 — los bindings de GObject-Introspection para Python (`from gi.repository import …`).
#
# POR QUÉ APARECE ACÁ, y es un tipo de dep distinto a todos los de esta tanda: **no va a la imagen,
# va al CONSTRUCTOR**. libgweather no la enlaza ni la carga; la usa su build:
#
#   meson.build:50  py = import('python').find_installation('python3', modules: ['gi'])
#
# y `build-aux/meson/gen_locations_variant.py` importa `gi.repository.GLib` para serializar la base
# de datos de ubicaciones —miles de ciudades, estaciones METAR y zonas horarias— a un GVariant
# binario. O sea que el formato de salida lo define GLib y el script sólo lo alimenta: reescribirlo
# sin `gi` sería reimplementar el serializador de GVariant, que es exactamente el error de
# reimplementar lo que ya existe. Se paga la receta.
#
# `-Dpycairo=disabled`: la integración con pycairo sólo sirve para pasar objetos `cairo.Context`
# entre Python y C, y no hay pycairo en el corpus. `gen_locations_variant.py` no toca cairo.
# `-Dtests=false`: la suite pide `pytest` y arranca un bucle de GLib.
#
# ISLA DINÁMICA por obligación: el módulo `gi._gi` ES un objeto compartido que Python dlopea, y su
# cierre entero (glib, girepository, libffi) tiene que ser cargable. Con las estáticas no hay módulo.
name    = "py3-gobject"
version = "3.50.0"

[source]
tarball = "https://download.gnome.org/sources/pygobject/3.50/pygobject-3.50.0.tar.xz"
sha256  = "8d836e75b5a881d457ee1622cae4a32bcdba28a0ba562193adb3bbb472472212"

[build]
compiler = "zig-cc"
target   = "x86_64-linux-musl"
link     = "dynamic"

[build.phases]
configure = "PKG_CONFIG_PATH=/usr/lib/pkgconfig PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload -Dpycairo=disabled -Dtests=false -Dc_args=-Wno-error=date-time"
compile   = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
install   = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"

[deps]
build = ["meson", "samurai", "python3", "pkgconf", "py3-setuptools", "gobject-introspection", "gi-foreign-girs", "glib", "glib-introspected", "libffi", "pcre2", "zlib-shared"]
