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 188Rust 55Shell 30Markdown 281211 Definiciones

⎇ main recipes/incoming-gnome/cairo-shared.toml TOML · 37 líneas · 2.7 KB Historia crudo

licencias: campo `license` en la receta — de 0 a 228 de 1141, sin re-hashear nada 346cd5970 · sergio ·

1# cairo-shared 1.18.4 — variante DINÁMICA de cairo (libcairo.so.2 + libcairo-gobject.so, PIC) para la
2# isla GNOME. El canónico (recipes/cairo.toml) es --prefer-static/default_library=static: su cairo.a
3# arrastra fontconfig/freetype/pixman/expat como cadena ESTÁTICA que el linker de un consumidor DINÁMICO
4# (gjs/pango, sin --prefer-static) no resuelve ⇒ 'undefined symbol: XML_GetCurrentLineNumber' (gjs) y el
5# test cairo-ft de pango falla ("FontConfig support"). Con la .so, el consumidor linkea -lcairo y la
6# cadena resuelve por NEEDED (libfontconfig.so→libexpat embebido, libfreetype.so→libpng/zlib.so).
7#
8# Sufijo -shared (NO sombrea recipes/cairo.toml): sólo lo consumen las recetas que lo declaran EXPLÍCITO.
9# Deps al cierre -shared (freetype/fontconfig/libpng/zlib) para NEEDED coherentes; pixman canónico ya es
10# dinámico (default_library=both); glib = la isla (libcairo-gobject NEEDED libgobject.so isla, sin doble
11# estado). expat canónico (--with-pic ⇒ se embebe). Ver [[gnome-introspection-dinamica]].
12name    = "cairo-shared"
13version = "1.18.4"
14license = "LGPL-2.1-only OR MPL-1.1"
15
16# Release ESTABLE de cairographics.org (hash fijo). El canónico usa el archive de GitLab, que NO es
17# determinista (recomprime al vuelo: cada fetch da otro sha256 ⇒ imposible de pinnear). El release
18# strippea boilerplate/ (sólo tests) ⇒ el configure sed-ea `subdir('boilerplate')`. + patch HAVE_CTIME_R.
19[source]
20tarball = "https://cairographics.org/releases/cairo-1.18.4.tar.xz"
21sha256  = "445ed8208a6e4823de1226a74ca319d3600e83f6369f99b14265006599c32ccb"
22patches = ["cairo-ctime-r.patch"]
23
24[build]
25compiler = "zig-cc"
26target   = "x86_64-linux-musl"
27link     = "dynamic"
28
29[build.phases]
30# default_library=both (no static, sin --prefer-static): produce libcairo.so.2 (+ .a). png/freetype/
31# fontconfig/glib enabled = misma superficie que el canónico. xlib/xcb off (Wayland-only).
32configure = "sed -i \"/subdir('boilerplate')/d\" meson.build; PKG_CONFIG_PATH=/usr/lib/pkgconfig PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload -Ddefault_library=both -Dc_args=-Wno-error=date-time -Dtests=disabled -Dxlib=disabled -Dxcb=disabled -Dquartz=disabled -Dtee=disabled -Dsymbol-lookup=disabled -Dspectre=disabled -Dgtk_doc=false -Dpng=enabled -Dfreetype=enabled -Dfontconfig=enabled -Dglib=enabled"
33compile   = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
34install   = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"
35
36[deps]
37build = ["meson", "samurai", "python3", "pkgconf", "pixman", "freetype-shared", "fontconfig-shared", "libpng-shared", "zlib-shared", "glib", "expat", "libffi", "pcre2"]