From 8d0dae6390b69cfa7c65969d6a3d5ac58d85a59a Mon Sep 17 00:00:00 2001 From: sergio Date: Mon, 27 Jul 2026 16:09:16 -0400 Subject: [PATCH] =?UTF-8?q?gnome=20onda=202:=20harfbuzz=20isla=20con=20int?= =?UTF-8?q?rospecci=C3=B3n=20(HarfBuzz-0.0.gir=20p/=20pango)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gdk-pixbuf SELLÓ. pango compiló sus .so pero su g-ir-scanner pide HarfBuzz-0.0.gir (Pango-1.0 referencia tipos hb): el harfbuzz corpus tiene introspection/gobject disabled. Autoro harfbuzz isla (shadow, dynamic, default_library=both, gobject+introspection enabled) ⇒ produce HarfBuzz-0.0.gir + libharfbuzz.so. Co-Authored-By: Claude Opus 4.8 --- recipes/incoming-gnome-onda2/harfbuzz.toml | 29 ++++++++++++++++++++++ recipes/incoming-gnome/harfbuzz.toml | 29 ++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 recipes/incoming-gnome-onda2/harfbuzz.toml create mode 100644 recipes/incoming-gnome/harfbuzz.toml diff --git a/recipes/incoming-gnome-onda2/harfbuzz.toml b/recipes/incoming-gnome-onda2/harfbuzz.toml new file mode 100644 index 00000000..58328607 --- /dev/null +++ b/recipes/incoming-gnome-onda2/harfbuzz.toml @@ -0,0 +1,29 @@ +# harfbuzz 14.2.1 — VARIANTE ISLA DINÁMICA (SHADOW de recipes/harfbuzz.toml estática). +# Shaping de texto (lo usa pango). Pango-1.0 referencia HarfBuzz-0.0 en su introspección ⇒ el +# g-ir-scanner de pango pide HarfBuzz-0.0.gir, que sólo produce harfbuzz con gobject+introspection. +# El corpus lo tiene disabled ⇒ esta variante lo habilita. Ver [[gnome-introspection-dinamica]]. +# +# vs corpus: link=dynamic, default_library=both, -Dgobject=enabled -Dintrospection=enabled (produce +# HarfBuzz-0.0.gir/typelib + libharfbuzz.so/libharfbuzz-gobject.so). freetype-shared (el .so, para NEEDED +# coherente). Sombrea el corpus SÓLO para la cola GNOME. +name = "harfbuzz" +version = "14.2.1" + +[source] +tarball = "https://github.com/harfbuzz/harfbuzz/releases/download/14.2.1/harfbuzz-14.2.1.tar.xz" +sha256 = "a54a5d8e9380a41fbb762ce367bcbf7704792dfca0d93f1bbca86c5a57902e0e" + +[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 -Ddefault_library=both -Dglib=enabled -Dgobject=enabled -Dcairo=disabled -Dicu=disabled -Dgraphite=disabled -Dfreetype=enabled -Dtests=disabled -Ddocs=disabled -Dintrospection=enabled -Dutilities=disabled" +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" + +# glib(isla) + glib-introspected + gobject-introspection + py3-setuptools = maquinaria de typelibs. +# freetype-shared (.so) + su cierre libpng-shared/zlib-shared. pcre2/libffi = cierre .pc de glib. +[deps] +build = ["meson", "samurai", "python3", "py3-setuptools", "pkgconf", "glib", "glib-introspected", "gobject-introspection", "freetype-shared", "libpng-shared", "zlib-shared", "pcre2", "libffi"] diff --git a/recipes/incoming-gnome/harfbuzz.toml b/recipes/incoming-gnome/harfbuzz.toml new file mode 100644 index 00000000..58328607 --- /dev/null +++ b/recipes/incoming-gnome/harfbuzz.toml @@ -0,0 +1,29 @@ +# harfbuzz 14.2.1 — VARIANTE ISLA DINÁMICA (SHADOW de recipes/harfbuzz.toml estática). +# Shaping de texto (lo usa pango). Pango-1.0 referencia HarfBuzz-0.0 en su introspección ⇒ el +# g-ir-scanner de pango pide HarfBuzz-0.0.gir, que sólo produce harfbuzz con gobject+introspection. +# El corpus lo tiene disabled ⇒ esta variante lo habilita. Ver [[gnome-introspection-dinamica]]. +# +# vs corpus: link=dynamic, default_library=both, -Dgobject=enabled -Dintrospection=enabled (produce +# HarfBuzz-0.0.gir/typelib + libharfbuzz.so/libharfbuzz-gobject.so). freetype-shared (el .so, para NEEDED +# coherente). Sombrea el corpus SÓLO para la cola GNOME. +name = "harfbuzz" +version = "14.2.1" + +[source] +tarball = "https://github.com/harfbuzz/harfbuzz/releases/download/14.2.1/harfbuzz-14.2.1.tar.xz" +sha256 = "a54a5d8e9380a41fbb762ce367bcbf7704792dfca0d93f1bbca86c5a57902e0e" + +[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 -Ddefault_library=both -Dglib=enabled -Dgobject=enabled -Dcairo=disabled -Dicu=disabled -Dgraphite=disabled -Dfreetype=enabled -Dtests=disabled -Ddocs=disabled -Dintrospection=enabled -Dutilities=disabled" +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" + +# glib(isla) + glib-introspected + gobject-introspection + py3-setuptools = maquinaria de typelibs. +# freetype-shared (.so) + su cierre libpng-shared/zlib-shared. pcre2/libffi = cierre .pc de glib. +[deps] +build = ["meson", "samurai", "python3", "py3-setuptools", "pkgconf", "glib", "glib-introspected", "gobject-introspection", "freetype-shared", "libpng-shared", "zlib-shared", "pcre2", "libffi"]