diff --git a/0001-Set-default-LCD-filter-to-FreeType-s-default.patch b/0001-Set-default-LCD-filter-to-FreeType-s-default.patch deleted file mode 100644 index 854eb0e..0000000 --- a/0001-Set-default-LCD-filter-to-FreeType-s-default.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 12a5b7384f35d9a3f4c6b151fac4857444db3d6a Mon Sep 17 00:00:00 2001 -From: Nikolaus Waxweiler -Date: Sat, 10 Nov 2018 16:44:23 +0000 -Subject: [PATCH] Set default LCD filter to FreeType's default - ---- - src/cairo-ft-font.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c -index 325dd61b4..3c47dc12e 100644 ---- a/src/cairo-ft-font.c -+++ b/src/cairo-ft-font.c -@@ -1404,7 +1404,7 @@ _render_glyph_outline (FT_Face face, - cairo_image_surface_t **surface) - { - int rgba = FC_RGBA_UNKNOWN; -- int lcd_filter = FT_LCD_FILTER_LEGACY; -+ int lcd_filter = FT_LCD_FILTER_DEFAULT; - FT_GlyphSlot glyphslot = face->glyph; - FT_Outline *outline = &glyphslot->outline; - FT_Bitmap bitmap; -@@ -1439,13 +1439,13 @@ _render_glyph_outline (FT_Face face, - case CAIRO_LCD_FILTER_NONE: - lcd_filter = FT_LCD_FILTER_NONE; - break; -- case CAIRO_LCD_FILTER_DEFAULT: - case CAIRO_LCD_FILTER_INTRA_PIXEL: - lcd_filter = FT_LCD_FILTER_LEGACY; - break; - case CAIRO_LCD_FILTER_FIR3: - lcd_filter = FT_LCD_FILTER_LIGHT; - break; -+ case CAIRO_LCD_FILTER_DEFAULT: - case CAIRO_LCD_FILTER_FIR5: - lcd_filter = FT_LCD_FILTER_DEFAULT; - break; -@@ -3416,7 +3416,6 @@ _cairo_ft_font_options_substitute (const cairo_font_options_t *options, - case CAIRO_LCD_FILTER_NONE: - lcd_filter = FT_LCD_FILTER_NONE; - break; -- case CAIRO_LCD_FILTER_DEFAULT: - case CAIRO_LCD_FILTER_INTRA_PIXEL: - lcd_filter = FT_LCD_FILTER_LEGACY; - break; -@@ -3424,6 +3423,7 @@ _cairo_ft_font_options_substitute (const cairo_font_options_t *options, - lcd_filter = FT_LCD_FILTER_LIGHT; - break; - default: -+ case CAIRO_LCD_FILTER_DEFAULT: - case CAIRO_LCD_FILTER_FIR5: - lcd_filter = FT_LCD_FILTER_DEFAULT; - break; --- -2.19.1 - diff --git a/CVE-2019-6462.patch b/CVE-2019-6462.patch deleted file mode 100644 index 8d82d14..0000000 --- a/CVE-2019-6462.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/cairo-arc.c b/src/cairo-arc.c -index 390397bae..f9249dbeb 100644 ---- a/src/cairo-arc.c -+++ b/src/cairo-arc.c -@@ -99,7 +99,7 @@ _arc_max_angle_for_tolerance_normalized (double tolerance) - do { - angle = M_PI / i++; - error = _arc_error_normalized (angle); -- } while (error > tolerance); -+ } while (error > tolerance && error > __DBL_EPSILON__); - - return angle; - } diff --git a/backport-CVE-2020-35492.patch b/backport-CVE-2020-35492.patch deleted file mode 100644 index 04dbaf1..0000000 --- a/backport-CVE-2020-35492.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 03a820b173ed1fdef6ff14b4468f5dbc02ff59be Mon Sep 17 00:00:00 2001 -From: Heiko Lewin -Date: Tue, 15 Dec 2020 16:48:19 +0100 -Subject: [PATCH] Fix mask usage in image-compositor - -Conflict:NA -Reference:https://gitlab.freedesktop.org/cairo/cairo/-/commit/03a820b173ed1fdef6ff14b4468f5dbc02ff59be ---- - src/cairo-image-compositor.c | 8 ++-- - 1 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c -index 79ad69f68..4f8aaed99 100644 ---- a/src/cairo-image-compositor.c -+++ b/src/cairo-image-compositor.c -@@ -2610,14 +2610,14 @@ _inplace_src_spans (void *abstract_renderer, int y, int h, - unsigned num_spans) - { - cairo_image_span_renderer_t *r = abstract_renderer; -- uint8_t *m; -+ uint8_t *m, *base = (uint8_t*)pixman_image_get_data(r->mask); - int x0; - - if (num_spans == 0) - return CAIRO_STATUS_SUCCESS; - - x0 = spans[0].x; -- m = r->_buf; -+ m = base; - do { - int len = spans[1].x - spans[0].x; - if (len >= r->u.composite.run_length && spans[0].coverage == 0xff) { -@@ -2655,7 +2655,7 @@ _inplace_src_spans (void *abstract_renderer, int y, int h, - spans[0].x, y, - spans[1].x - spans[0].x, h); - -- m = r->_buf; -+ m = base; - x0 = spans[1].x; - } else if (spans[0].coverage == 0x0) { - if (spans[0].x != x0) { -@@ -2684,7 +2684,7 @@ _inplace_src_spans (void *abstract_renderer, int y, int h, - #endif - } - -- m = r->_buf; -+ m = base; - x0 = spans[1].x; - } else { - *m++ = spans[0].coverage; - diff --git a/backport-ft-Use-normal-font-size-when-detecting-the-format.patch b/backport-ft-Use-normal-font-size-when-detecting-the-format.patch new file mode 100644 index 0000000..e1a060b --- /dev/null +++ b/backport-ft-Use-normal-font-size-when-detecting-the-format.patch @@ -0,0 +1,63 @@ +From 2766d9feeccd5d66e346b0abab38726b8e0aa1e9 Mon Sep 17 00:00:00 2001 +From: Adrian Johnson +Date: Tue, 7 Mar 2023 19:40:21 +1030 +Subject: [PATCH] ft: Use normal font size when detecting the format + +The format may depend on the font size. + +Fixes #643 + +Reference:https://gitlab.freedesktop.org/cairo/cairo/-/commit/2766d9feeccd5d66e346b0abab38726b8e0aa1e9 +Conflict:NA +--- + src/cairo-ft-font.c | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c +index 22a6a622b..89af6193d 100644 +--- a/src/cairo-ft-font.c ++++ b/src/cairo-ft-font.c +@@ -3314,11 +3314,13 @@ _cairo_ft_scaled_glyph_init_metrics (cairo_ft_scaled_font_t *scaled_font, + if (scaled_font->unscaled->have_color && scaled_font->base.options.color_mode != CAIRO_COLOR_MODE_NO_COLOR) + color_flag = FT_LOAD_COLOR; + #endif ++ /* Ensure use_em_size = FALSE as the format (bitmap or outline) ++ * may change with the size. */ + status = _cairo_ft_scaled_glyph_load_glyph (scaled_font, + scaled_glyph, + face, + load_flags | color_flag, +- !hint_metrics, ++ FALSE, + vertical_layout); + if (unlikely (status)) + return status; +@@ -3344,6 +3346,18 @@ _cairo_ft_scaled_glyph_init_metrics (cairo_ft_scaled_font_t *scaled_font, + glyph_priv->format = CAIRO_FT_GLYPH_TYPE_BITMAP; + } + ++ /* If hinting is off, load the glyph with font size set the the em size. */ ++ if (!hint_metrics) { ++ status = _cairo_ft_scaled_glyph_load_glyph (scaled_font, ++ scaled_glyph, ++ face, ++ load_flags | color_flag, ++ TRUE, ++ vertical_layout); ++ if (unlikely (status)) ++ return status; ++ } ++ + _cairo_ft_scaled_glyph_get_metrics (scaled_font, + face, + vertical_layout, +@@ -3369,6 +3383,7 @@ _cairo_ft_scaled_glyph_init_metrics (cairo_ft_scaled_font_t *scaled_font, + } + + if (glyph_priv->format == CAIRO_FT_GLYPH_TYPE_COLR_V1) { ++ /* Restore font size if previously loaded at em_size. */ + if (!hint_metrics) { + status = _cairo_ft_scaled_glyph_load_glyph (scaled_font, + scaled_glyph, +-- +GitLab \ No newline at end of file diff --git a/backport-tee-Fix-cairo-wrapper-functions.patch b/backport-tee-Fix-cairo-wrapper-functions.patch new file mode 100644 index 0000000..ebda282 --- /dev/null +++ b/backport-tee-Fix-cairo-wrapper-functions.patch @@ -0,0 +1,110 @@ +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 +Reference:https://gitlab.freedesktop.org/cairo/cairo/-/commit/5e42a5277eddafd312a73e355d7775a4401dae4e +Conflict:NA +--- + 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/backport-tee-ft-dont-use-scaled_glyph-dev_private-to-store-data.patch b/backport-tee-ft-dont-use-scaled_glyph-dev_private-to-store-data.patch new file mode 100644 index 0000000..86af1f2 --- /dev/null +++ b/backport-tee-ft-dont-use-scaled_glyph-dev_private-to-store-data.patch @@ -0,0 +1,71 @@ +From 10cc34f521cf272f881bbad9a6fc4e794cca8687 Mon Sep 17 00:00:00 2001 +From: Adrian Johnson +Date: Sat, 13 May 2023 18:51:40 +0930 +Subject: [PATCH] ft: don't use scaled_glyph->dev_private to store data + +It is also used by the xlib surface. + +Fixes #778 +Reference:https://gitlab.freedesktop.org/cairo/cairo/-/commit/10cc34f521cf272f881bbad9a6fc4e794cca8687 +Conflict:NA +--- + src/cairo-ft-font.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c +index 834e4ba31..76c9e008f 100644 +--- a/src/cairo-ft-font.c ++++ b/src/cairo-ft-font.c +@@ -2600,6 +2600,7 @@ _cairo_ft_scaled_glyph_set_foreground_color (cairo_ft_scaled_font_t *scaled_font + static cairo_int_status_t + _cairo_ft_scaled_glyph_init_surface (cairo_ft_scaled_font_t *scaled_font, + cairo_scaled_glyph_t *scaled_glyph, ++ cairo_ft_glyph_private_t *glyph_priv, + cairo_scaled_glyph_info_t info, + FT_Face face, + const cairo_color_t *foreground_color, +@@ -2611,7 +2612,6 @@ _cairo_ft_scaled_glyph_init_surface (cairo_ft_scaled_font_t *scaled_font, + cairo_status_t status; + cairo_image_surface_t *surface; + cairo_bool_t uses_foreground_color = FALSE; +- cairo_ft_glyph_private_t *glyph_priv = scaled_glyph->dev_private; + + /* Only one info type at a time handled in this function */ + assert (info == CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE || info == CAIRO_SCALED_GLYPH_INFO_SURFACE); +@@ -3302,7 +3302,6 @@ _cairo_ft_scaled_glyph_init_metrics (cairo_ft_scaled_font_t *scaled_font, + _cairo_scaled_glyph_attach_private (scaled_glyph, &glyph_priv->base, + &ft_glyph_private_key, + _cairo_ft_glyph_fini); +- scaled_glyph->dev_private = glyph_priv; + + /* We need to load color to determine if this is a color format. */ + int color_flag = 0; +@@ -3461,8 +3460,8 @@ _cairo_ft_scaled_glyph_init (void *abstract_font, + goto FAIL; + } + +- /* scaled_glyph->dev_private is intialized by _cairo_ft_scaled_glyph_init_metrics() */ +- glyph_priv = scaled_glyph->dev_private; ++ glyph_priv = (cairo_ft_glyph_private_t *) _cairo_scaled_glyph_find_private (scaled_glyph, ++ &ft_glyph_private_key); + assert (glyph_priv != NULL); + + if (info & CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE) { +@@ -3514,6 +3513,7 @@ _cairo_ft_scaled_glyph_init (void *abstract_font, + } else { + status = _cairo_ft_scaled_glyph_init_surface (scaled_font, + scaled_glyph, ++ glyph_priv, + CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE, + face, + foreground_color, +@@ -3527,6 +3527,7 @@ _cairo_ft_scaled_glyph_init (void *abstract_font, + if (info & CAIRO_SCALED_GLYPH_INFO_SURFACE) { + status = _cairo_ft_scaled_glyph_init_surface (scaled_font, + scaled_glyph, ++ glyph_priv, + CAIRO_SCALED_GLYPH_INFO_SURFACE, + face, + NULL, /* foreground color */ +-- +GitLab diff --git a/bugfix-fix-call-get_unaligned_be32-heap-buffer-overflow.patch b/bugfix-fix-call-get_unaligned_be32-heap-buffer-overflow.patch deleted file mode 100644 index cf74693..0000000 --- a/bugfix-fix-call-get_unaligned_be32-heap-buffer-overflow.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 53738879bd6bc400d27b96cf0fe759dadc9f4fb0 Mon Sep 17 00:00:00 2001 -From: sun_hai_10 -Date: Wed, 14 Jun 2023 16:00:24 +0800 -Subject: [PATCH] fix call get_unaligned_be32 heap buffer overflow - ---- - src/cairo-image-info.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/cairo-image-info.c b/src/cairo-image-info.c -index d147e37..0310c4b 100644 ---- a/src/cairo-image-info.c -+++ b/src/cairo-image-info.c -@@ -190,7 +190,7 @@ _jpx_match_box (const unsigned char *p, const unsigned char *end, uint32_t type) - static const unsigned char * - _jpx_find_box (const unsigned char *p, const unsigned char *end, uint32_t type) - { -- while (p < end) { -+ while ((p < end) && (p + 4 < end)) { - if (_jpx_match_box (p, end, type)) - return p; - p = _jpx_next_box (p); -@@ -346,6 +346,9 @@ _jbig2_get_next_segment (const unsigned char *p, - big_page_size = (p[4] & 0x40) != 0; - p += 5; - -+ if (p + 4 >= end) -+ return NULL; -+ - num_segs = p[0] >> 5; - if (num_segs == 7) { - num_segs = get_unaligned_be32 (p) & 0x1fffffff; --- -2.23.0 - diff --git a/cairo-1.17.4.tar.xz b/cairo-1.17.8.tar.xz similarity index 70% rename from cairo-1.17.4.tar.xz rename to cairo-1.17.8.tar.xz index 10ab980..4006ce2 100644 Binary files a/cairo-1.17.4.tar.xz and b/cairo-1.17.8.tar.xz differ diff --git a/cairo.spec b/cairo.spec index 917db12..54b551e 100644 --- a/cairo.spec +++ b/cairo.spec @@ -1,29 +1,32 @@ -%global cairogl --disable-gl - Name: cairo -Version: 1.17.4 -Release: 4 +Version: 1.17.8 +Release: 1 Summary: A 2D graphics library License: LGPLv2 or MPLv1.1 URL: http://cairographics.org Source0: http://cairographics.org/snapshots/%{name}-%{version}.tar.xz -Patch0001: 0001-Set-default-LCD-filter-to-FreeType-s-default.patch Patch6000: CVE-2019-6461.patch -Patch6001: CVE-2019-6462.patch -Patch6002: backport-CVE-2020-35492.patch -Patch9002: bugfix-cairo-truetype-reverse-cmap-detected-memory-leaks.patch -Patch9003: bugfix-fix-read-memory-access.patch -Patch9004: bugfix-fix-call-get_unaligned_be32-heap-buffer-overflow.patch -Patch9005: bugfix-fix-heap-buffer-overflow-in-cairo_cff_parse_charstring.patch +Patch9000: bugfix-cairo-truetype-reverse-cmap-detected-memory-leaks.patch +Patch9001: bugfix-fix-read-memory-access.patch +Patch9002: bugfix-fix-heap-buffer-overflow-in-cairo_cff_parse_charstring.patch -BuildRequires: gcc make -BuildRequires: pkgconfig glib2-devel librsvg2-devel -BuildRequires: libXrender-devel libX11-devel libpng-devel libxml2-devel -BuildRequires: pixman-devel >= 0.36.0 -BuildRequires: freetype-devel >= 2.1.9 -BuildRequires: fontconfig-devel >= 2.2.95 +Patch6001: backport-tee-Fix-cairo-wrapper-functions.patch +Patch6002: backport-ft-Use-normal-font-size-when-detecting-the-format.patch +Patch6003: backport-tee-ft-dont-use-scaled_glyph-dev_private-to-store-data.patch + +BuildRequires: gcc gcc-c++ gtk-doc meson +BuildRequires: pkgconfig(expat) +BuildRequires: pkgconfig(pixman-1) >= 0.36.0 +BuildRequires: pkgconfig(freetype2) >= 2.1.9 +BuildRequires: pkgconfig(fontconfig) >= 2.2.95 +BuildRequires: pkgconfig(gobject-2.0) +BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xcb-render) +BuildRequires: pkgconfig(xrender) %description Cairo is a 2D graphics libarary with support for multiple output devices. @@ -66,7 +69,8 @@ needed for developing software which uses the cairo Gobject library. %package tools Summary: Development tools for cairo - +Requires: %{name}%{?_isa} = %{version}-%{release} + %description tools Cairo is a 2D graphics library designed to provide high-quality display and print output. @@ -78,25 +82,30 @@ This package contains tools for working with the cairo graphics library. %autosetup -p1 %build -%configure --disable-static --enable-xlib --enable-ft --enable-ps \ - --enable-pdf --enable-svg --enable-tee --enable-gobject \ - %{cairogl} --disable-gtk-doc --disable-symbol-lookup -sed -i -e 's/^hardcode_libdir_flag_spec=.*/hardcode_libdir_flag_spec=""/g' \ --e 's/^runpath_var=LD_RUN_PATH/runpath_var=DIE_RPATH_DIE/g' libtool -%make_build V=1 +%meson \ + -Dfreetype=enabled \ + -Dfontconfig=enabled \ + -Dglib=enabled \ + -Dgtk_doc=true \ + -Dspectre=disabled \ + -Dsymbol-lookup=disabled \ + -Dtee=enabled \ + -Dtests=disabled \ + -Dxcb=enabled \ + -Dxlib=enabled \ + -Dxml=disabled +%meson_build %install -%make_install -find $RPM_BUILD_ROOT -name '*.la' -delete +%meson_install %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 @@ -120,6 +129,7 @@ find $RPM_BUILD_ROOT -name '*.la' -delete %{_libdir}/pkgconfig/cairo-pdf.pc %{_libdir}/pkgconfig/cairo-png.pc %{_libdir}/pkgconfig/cairo-ps.pc +%{_libdir}/pkgconfig/cairo-script-interpreter.pc %{_libdir}/pkgconfig/cairo-svg.pc %{_libdir}/pkgconfig/cairo-tee.pc %{_libdir}/pkgconfig/cairo-xlib.pc @@ -138,10 +148,17 @@ find $RPM_BUILD_ROOT -name '*.la' -delete %{_libdir}/pkgconfig/cairo-gobject.pc %files tools +%{_bindir}/cairo-sphinx %{_bindir}/cairo-trace %{_libdir}/cairo/ %changelog +* Wed Jul 26 2023 zhangqiumiao - 1.17.8-1 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:update to 1.17.8 + * Wed Jun 14 2023 sunhai - 1.17.4-4 - Type:bugfix - ID:NA