<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c8ff2312c9f8c1695bd0b94492e3f31d2c120a87">https://github.com/macports/macports-ports/commit/c8ff2312c9f8c1695bd0b94492e3f31d2c120a87</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new c8ff2312c9f gegl: patch to support non-rust librsvg Closes: https://trac.macports.org/ticket/67712
</span>c8ff2312c9f is described below

<span style='display:block; white-space:pre;color:#808000;'>commit c8ff2312c9f8c1695bd0b94492e3f31d2c120a87
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Thu Jul 6 08:12:36 2023 -0400

<span style='display:block; white-space:pre;color:#404040;'>    gegl: patch to support non-rust librsvg
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/67712
</span>---
 graphics/gegl/Portfile                      |  6 ++-
 graphics/gegl/files/patch-rsvg-no-rust.diff | 72 +++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/gegl/Portfile b/graphics/gegl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d1864426e85..59da0bb7ed9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/gegl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/gegl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,7 +11,7 @@ name                gegl
</span> conflicts           gegl-devel
 set my_name         gegl
 version             0.4.46
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> epoch               1
 
 license             {GPL-3+ LGPL-3+}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -81,6 +81,10 @@ if {${os.platform} eq "darwin" && (${os.major} < 10 || ${configure.build_arch} i
</span>                     port:libsdl2
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Upstream patch to eliminate need for Rust-based librsvg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gitlab.gnome.org/GNOME/gegl/-/issues/333
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-rsvg-no-rust.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # proposed fix for 32 bit builds
 # https://trac.macports.org/ticket/58524
 patchfiles-append   patch-gegl-32bit-host-statistics.diff
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/gegl/files/patch-rsvg-no-rust.diff b/graphics/gegl/files/patch-rsvg-no-rust.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..46e3aef15d9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/gegl/files/patch-rsvg-no-rust.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,72 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#==================================================================================================
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# From a99a93e5c9013bd4101f5058cdee7d0cf30234fe Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# From: Jehan <jehan@girinstud.io>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Date: Wed, 5 Jul 2023 21:18:19 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Subject: [PATCH] Issue #333: continuing to support librsvg 2.40.x (C versions).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Commit 9beeefcbe uses too new functions of librsvg. We could just bump
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the minimum required version but there are issues with Rust not being
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# available on every platform yet. So instead, let's add some conditional
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# code paths, so that it still builds with librsvg 2.40.x (which was the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# last versions fully in C) while we use newer code and no warnings when
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# using newer versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#==================================================================================================
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- operations/external/svg-load.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ operations/external/svg-load.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -76,16 +76,25 @@ query_svg (GeglOperation *operation)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   GeglProperties *o = GEGL_PROPERTIES (operation);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Priv *p = (Priv*) o->user_data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if LIBRSVG_CHECK_VERSION(2, 52, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gdouble out_width, out_height;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  RsvgDimensionData dimensions;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   g_return_val_if_fail (p->handle != NULL, FALSE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  rsvg_handle_get_intrinsic_size_in_pixels (p->handle, &out_width, &out_height);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   p->format = babl_format ("R'G'B'A u8");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if LIBRSVG_CHECK_VERSION(2, 52, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  rsvg_handle_get_intrinsic_size_in_pixels (p->handle, &out_width, &out_height);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   p->height = out_height;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  p->width = out_width;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->width  = out_width;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  rsvg_handle_get_dimensions (p->handle, &dimensions);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->height = dimensions.height;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->width  = dimensions.width;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -98,10 +107,12 @@ load_svg (GeglOperation *operation,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     GeglProperties    *o = GEGL_PROPERTIES (operation);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Priv              *p = (Priv*) o->user_data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    RsvgRectangle      svg_rect = {0.0, 0.0, width, height};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cairo_surface_t   *surface;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cairo_t           *cr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    GError            *error = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if LIBRSVG_CHECK_VERSION(2, 52, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    GError            *error    = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    RsvgRectangle      svg_rect = {0.0, 0.0, width, height};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     g_return_val_if_fail (p->handle != NULL, -1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -115,7 +126,11 @@ load_svg (GeglOperation *operation,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      (double)height / (double)p->height);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if LIBRSVG_CHECK_VERSION(2, 52, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rsvg_handle_render_document (p->handle, cr, &svg_rect, &error);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    rsvg_handle_render_cairo (p->handle, cr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cairo_surface_flush (surface);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>