From 8c93c1278a548b56e33487e1fc895feea4a6662d Mon Sep 17 00:00:00 2001 From: David King Date: Mon, 20 Feb 2023 17:15:01 +0000 Subject: [PATCH] Update to 1.17.8 (#2166624) --- .gitignore | 1 + cairo-1.17.8-fix-tee-compilation.patch | 109 +++++++++++++++++++++++++ cairo.spec | 20 ++--- sources | 2 +- 4 files changed, 121 insertions(+), 11 deletions(-) create mode 100644 cairo-1.17.8-fix-tee-compilation.patch diff --git a/.gitignore b/.gitignore index 1782758..31d93d3 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ cairo-1.9.14.tar.gz /cairo-1.16.0.tar.xz /cairo-1.17.4.tar.xz /cairo-1.17.6.tar.xz +/cairo-1.17.8.tar.xz diff --git a/cairo-1.17.8-fix-tee-compilation.patch b/cairo-1.17.8-fix-tee-compilation.patch new file mode 100644 index 0000000..24aee86 --- /dev/null +++ b/cairo-1.17.8-fix-tee-compilation.patch @@ -0,0 +1,109 @@ +From 5e42a5277eddafd312a73e355d7775a4401dae4e Mon Sep 17 00:00:00 2001 +From: Emmanuele Bassi +Date: Fri, 3 Feb 2023 15:40:12 +0100 +Subject: [PATCH] tee: Fix cairo wrapper functions + +Follow-up to !391 to apply the same changes to the (disabled by default) +tee surface. + +Fixes: #634 +--- + src/cairo-tee-surface.c | 24 ++++++++++++++---------- + 1 file changed, 14 insertions(+), 10 deletions(-) + +diff --git a/src/cairo-tee-surface.c b/src/cairo-tee-surface.c +index 7a94c9bca..4994a5a60 100644 +--- a/src/cairo-tee-surface.c ++++ b/src/cairo-tee-surface.c +@@ -220,12 +220,12 @@ _cairo_tee_surface_paint (void *abstract_surface, + num_slaves = _cairo_array_num_elements (&surface->slaves); + slaves = _cairo_array_index (&surface->slaves, 0); + for (n = 0; n < num_slaves; n++) { +- status = _cairo_surface_wrapper_paint (&slaves[n], op, source, clip); ++ status = _cairo_surface_wrapper_paint (&slaves[n], op, source, 0, clip); + if (unlikely (status)) + return status; + } + +- return _cairo_surface_wrapper_paint (&surface->master, op, source, clip); ++ return _cairo_surface_wrapper_paint (&surface->master, op, source, 0, clip); + } + + static cairo_int_status_t +@@ -244,13 +244,17 @@ _cairo_tee_surface_mask (void *abstract_surface, + slaves = _cairo_array_index (&surface->slaves, 0); + for (n = 0; n < num_slaves; n++) { + status = _cairo_surface_wrapper_mask (&slaves[n], +- op, source, mask, clip); ++ op, source, 0, ++ mask, 0, ++ clip); + if (unlikely (status)) + return status; + } + + return _cairo_surface_wrapper_mask (&surface->master, +- op, source, mask, clip); ++ op, source, 0, ++ mask, 0, ++ clip); + } + + static cairo_int_status_t +@@ -274,7 +278,7 @@ _cairo_tee_surface_stroke (void *abstract_surface, + slaves = _cairo_array_index (&surface->slaves, 0); + for (n = 0; n < num_slaves; n++) { + status = _cairo_surface_wrapper_stroke (&slaves[n], +- op, source, ++ op, source, 0, + path, style, + ctm, ctm_inverse, + tolerance, antialias, +@@ -284,7 +288,7 @@ _cairo_tee_surface_stroke (void *abstract_surface, + } + + return _cairo_surface_wrapper_stroke (&surface->master, +- op, source, ++ op, source, 0, + path, style, + ctm, ctm_inverse, + tolerance, antialias, +@@ -310,7 +314,7 @@ _cairo_tee_surface_fill (void *abstract_surface, + slaves = _cairo_array_index (&surface->slaves, 0); + for (n = 0; n < num_slaves; n++) { + status = _cairo_surface_wrapper_fill (&slaves[n], +- op, source, ++ op, source, 0, + path, fill_rule, + tolerance, antialias, + clip); +@@ -319,7 +323,7 @@ _cairo_tee_surface_fill (void *abstract_surface, + } + + return _cairo_surface_wrapper_fill (&surface->master, +- op, source, ++ op, source, 0, + path, fill_rule, + tolerance, antialias, + clip); +@@ -361,7 +365,7 @@ _cairo_tee_surface_show_text_glyphs (void *abstract_surface, + for (n = 0; n < num_slaves; n++) { + memcpy (glyphs_copy, glyphs, sizeof (cairo_glyph_t) * num_glyphs); + status = _cairo_surface_wrapper_show_text_glyphs (&slaves[n], op, +- source, ++ source, 0, + utf8, utf8_len, + glyphs_copy, num_glyphs, + clusters, num_clusters, +@@ -374,7 +378,7 @@ _cairo_tee_surface_show_text_glyphs (void *abstract_surface, + + memcpy (glyphs_copy, glyphs, sizeof (cairo_glyph_t) * num_glyphs); + status = _cairo_surface_wrapper_show_text_glyphs (&surface->master, op, +- source, ++ source, 0, + utf8, utf8_len, + glyphs_copy, num_glyphs, + clusters, num_clusters, +-- +GitLab + diff --git a/cairo.spec b/cairo.spec index 04c8631..058e68f 100644 --- a/cairo.spec +++ b/cairo.spec @@ -3,19 +3,17 @@ %define fontconfig_version 2.2.95 Name: cairo -Version: 1.17.6 -Release: 3%{?dist} +Version: 1.17.8 +Release: 1%{?dist} Summary: A 2D graphics library -License: LGPLv2 or MPLv1.1 +License: LGPL-2.1-only OR MPL-1.1 URL: https://cairographics.org -Source0: https://download.gnome.org/sources/%{name}/1.17/%{name}-%{version}.tar.xz +Source0: https://cairographics.org/snapshots/%{name}-%{version}.tar.xz Patch0: cairo-multilib.patch -# https://gitlab.freedesktop.org/cairo/cairo/merge_requests/1 -Patch1: 0001-Set-default-LCD-filter-to-FreeType-s-default.patch -# https://gitlab.freedesktop.org/cairo/cairo/-/issues/547 -Patch2: cairo-1.17.6-meson-fixes.patch +# https://gitlab.freedesktop.org/cairo/cairo/-/issues/634 +Patch1: cairo-1.17.8-fix-tee-compilation.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -108,12 +106,11 @@ This package contains tools for working with the cairo graphics library. %files %license COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1 -%doc AUTHORS BIBLIOGRAPHY BUGS NEWS README +%doc AUTHORS BUGS NEWS README.md %{_libdir}/libcairo.so.2* %{_libdir}/libcairo-script-interpreter.so.2* %files devel -%doc ChangeLog PORTING_GUIDE %dir %{_includedir}/cairo/ %{_includedir}/cairo/cairo-deprecated.h %{_includedir}/cairo/cairo-features.h @@ -161,6 +158,9 @@ This package contains tools for working with the cairo graphics library. %{_libdir}/cairo/ %changelog +* Mon Feb 20 2023 David King - 1.17.8-1 +- Update to 1.17.8 (#2166624) + * Wed Jan 18 2023 Fedora Release Engineering - 1.17.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index 1e053d3..a1c0e60 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cairo-1.17.6.tar.xz) = 15d9a82097b9c5a43071ff9fbfe90d7aaee5fddb84f519cdddfe312c5fc7248a50b73a5351922de2aaafa4b2e86f911b3147609538346f8a7635f34d631c9146 +SHA512 (cairo-1.17.8.tar.xz) = 62f0eaaebc46be5f0de7cb49df055eeadcc02706095a9d641eceac563d48344c2234940ce90d84a610c5003e536d9dcd318a1649578fd9cd5ab5f0db5b75bd8f