Hi, Alex Okay, I will do my best to do it.
Best Regards, Qiu Tingting > -----Original Message----- > From: Alexander Kanavin <alex.kana...@gmail.com> > Sent: Monday, November 27, 2023 6:10 PM > To: Qiu, Tingting/仇 婷婷 <qi...@fujitsu.com> > Cc: openembedded-core@lists.openembedded.org; FNST fnstml-fujitsuten > <fnstml-fujitsu...@fujitsu.com> > Subject: Re: [OE-core] [PATCH V2] cairo: upgrade 1.16.0 -> 1.18.0 > > Thank you, the patch is fine now. The next step is that if there are > integration > issues on the autobuilder, you will get links to them and the expectation is > that > they are resolved by you, and the adjusted patch is resubmitted. > > Alex > > On Mon, 27 Nov 2023 at 05:02, qi...@fujitsu.com <qi...@fujitsu.com> wrote: > > > > From: qiutt <qi...@fujitsu.com> > > > > Changelog for 1.18.0 [1]: > > The cairo-sphinx tool has been removed > > Cairo now implements Type 3 color fonts for PDF > > The XML surface has been removed > > The Tee surface is now automatically enabled > > The Quartz surface is improved > > Cairo now hides all private symbols by default on every platform > > Fixed multiple issues > > > > As a part of 1.18.0, the following patches should be dropped. > > CVE-2018-19876.patch : > https://gitlab.freedesktop.org/cairo/cairo/-/commit/90e85c2493fdfa3551f202 > ff10282463f1e36645 > > CVE-2019-6461.patch : > https://gitlab.freedesktop.org/cairo/cairo/-/commit/09643ee1abdd5daacebfc > b564448f29be9a79bac > > CVE-2019-6462.patch : > https://gitlab.freedesktop.org/cairo/cairo/-/commit/bbeaf08190d3006a80b80 > a77724801cd477a37b8 > > CVE-2020-35492.patch : > > https://gitlab.freedesktop.org/cairo/cairo/-/commit/c986a7310bb06582b7 > > d8a566d5f007ba4e5e75bf > > > > These options are all gone [2]: directfb, valgrind, egl, glesv2, > > opengl, trace > > > > Build tool is changed : autotools -> meson > > > > [1] https://www.cairographics.org/news/cairo-1.18.0/ > > [2] > > https://gitlab.freedesktop.org/cairo/cairo/-/blob/master/meson_options > > .txt > > > > Signed-off-by: qiutt <qi...@fujitsu.com> > > --- > > .../cairo/cairo/CVE-2018-19876.patch | 34 ---------- > > .../cairo/cairo/CVE-2019-6461.patch | 20 ------ > > .../cairo/cairo/CVE-2019-6462.patch | 40 ------------ > > .../cairo/cairo/CVE-2020-35492.patch | 60 ------------------ > > .../{cairo_1.16.0.bb => cairo_1.18.0.bb} | 63 +++++-------------- > > 5 files changed, 16 insertions(+), 201 deletions(-) delete mode > > 100644 meta/recipes-graphics/cairo/cairo/CVE-2018-19876.patch > > delete mode 100644 > > meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch > > delete mode 100644 > > meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch > > delete mode 100644 > > meta/recipes-graphics/cairo/cairo/CVE-2020-35492.patch > > rename meta/recipes-graphics/cairo/{cairo_1.16.0.bb => > > cairo_1.18.0.bb} (51%) > > > > diff --git a/meta/recipes-graphics/cairo/cairo/CVE-2018-19876.patch > > b/meta/recipes-graphics/cairo/cairo/CVE-2018-19876.patch > > deleted file mode 100644 > > index 4252a5663b..0000000000 > > --- a/meta/recipes-graphics/cairo/cairo/CVE-2018-19876.patch > > +++ /dev/null > > @@ -1,34 +0,0 @@ > > -CVE: CVE-2018-19876 > > -Upstream-Status: Backport > > -Signed-off-by: Ross Burton <ross.bur...@intel.com> > > - > > -From 90e85c2493fdfa3551f202ff10282463f1e36645 Mon Sep 17 00:00:00 > > 2001 > > -From: Carlos Garcia Campos <cgar...@igalia.com> > > -Date: Mon, 19 Nov 2018 12:33:07 +0100 > > -Subject: [PATCH] ft: Use FT_Done_MM_Var instead of free when > > available in > > - cairo_ft_apply_variations > > - > > -Fixes a crash when using freetype >= 2.9 > > ---- > > - src/cairo-ft-font.c | 4 ++++ > > - 1 file changed, 4 insertions(+) > > - > > -diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c -index > > 325dd61b4..981973f78 100644 > > ---- a/src/cairo-ft-font.c > > -+++ b/src/cairo-ft-font.c > > -@@ -2393,7 +2393,11 @@ skip: > > - done: > > - free (coords); > > - free (current_coords); > > -+#if HAVE_FT_DONE_MM_VAR > > -+ FT_Done_MM_Var (face->glyph->library, ft_mm_var); #else > > - free (ft_mm_var); > > -+#endif > > - } > > - } > > - > > --- > > -2.11.0 > > - > > diff --git a/meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch > > b/meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch > > deleted file mode 100644 > > index a2dba6cb20..0000000000 > > --- a/meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch > > +++ /dev/null > > @@ -1,20 +0,0 @@ > > -There is an assertion in function _cairo_arc_in_direction(). > > - > > -CVE: CVE-2019-6461 > > -Upstream-Status: Pending > > -Signed-off-by: Ross Burton <ross.bur...@intel.com> > > - > > -diff --git a/src/cairo-arc.c b/src/cairo-arc.c -index > > 390397bae..1bde774a4 100644 > > ---- a/src/cairo-arc.c > > -+++ b/src/cairo-arc.c > > -@@ -186,7 +186,8 @@ _cairo_arc_in_direction (cairo_t *cr, > > - if (cairo_status (cr)) > > - return; > > - > > -- assert (angle_max >= angle_min); > > -+ if (angle_max < angle_min) > > -+ return; > > - > > - if (angle_max - angle_min > 2 * M_PI * MAX_FULL_CIRCLES) { > > - angle_max = fmod (angle_max - angle_min, 2 * M_PI); > > diff --git a/meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch > > b/meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch > > deleted file mode 100644 > > index 7c3209291b..0000000000 > > --- a/meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch > > +++ /dev/null > > @@ -1,40 +0,0 @@ > > -CVE: CVE-2019-6462 > > -Upstream-Status: Backport > > -Signed-off-by: Quentin Schulz > <quentin.sch...@theobroma-systems.com> > > - > > -From ab2c5ee21e5f3d3ee4b3f67cfcd5811a4f99c3a0 Mon Sep 17 00:00:00 > > 2001 > > -From: Heiko Lewin <hle...@gmx.de> > > -Date: Sun, 1 Aug 2021 11:16:03 +0000 > > -Subject: [PATCH] _arc_max_angle_for_tolerance_normalized: fix > > infinite loop > > - > > ---- > > - src/cairo-arc.c | 4 +++- > > - 1 file changed, 3 insertions(+), 1 deletion(-) > > - > > -diff --git a/src/cairo-arc.c b/src/cairo-arc.c -index > > 390397bae..1c891d1a0 100644 > > ---- a/src/cairo-arc.c > > -+++ b/src/cairo-arc.c > > -@@ -90,16 +90,18 @@ _arc_max_angle_for_tolerance_normalized (double > tolerance) > > - { M_PI / 11.0, 9.81410988043554039085e-09 }, > > - }; > > - int table_size = ARRAY_LENGTH (table); > > -+ const int max_segments = 1000; /* this value is chosen > > -+ arbitrarily. this gives an error of about 1.74909e-20 */ > > - > > - for (i = 0; i < table_size; i++) > > - if (table[i].error < tolerance) > > - return table[i].angle; > > - > > - ++i; > > -+ > > - do { > > - angle = M_PI / i++; > > - error = _arc_error_normalized (angle); > > -- } while (error > tolerance); > > -+ } while (error > tolerance && i < max_segments); > > - > > - return angle; > > - } > > --- > > -2.38.1 > > - > > diff --git a/meta/recipes-graphics/cairo/cairo/CVE-2020-35492.patch > > b/meta/recipes-graphics/cairo/cairo/CVE-2020-35492.patch > > deleted file mode 100644 > > index fb6ce5cfdf..0000000000 > > --- a/meta/recipes-graphics/cairo/cairo/CVE-2020-35492.patch > > +++ /dev/null > > @@ -1,60 +0,0 @@ > > -Fix stack buffer overflow. > > - > > -CVE: CVE-2020-35492 > > -Upstream-Status: Backport > > -Signed-off-by: Ross Burton <ross.bur...@arm.com> > > - > > -From 03a820b173ed1fdef6ff14b4468f5dbc02ff59be Mon Sep 17 00:00:00 > > 2001 > > -From: Heiko Lewin <heiko.le...@worldiety.de> > > -Date: Tue, 15 Dec 2020 16:48:19 +0100 > > -Subject: [PATCH] Fix mask usage in image-compositor > > - > > ---- > > - src/cairo-image-compositor.c | 8 ++-- > > - test/Makefile.sources | 1 + > > - test/bug-image-compositor.c | 39 > ++++++++++++++++++++ > > - test/reference/bug-image-compositor.ref.png | Bin 0 -> 185 bytes > > - 4 files changed, 44 insertions(+), 4 deletions(-) > > - create mode 100644 test/bug-image-compositor.c > > - create mode 100644 test/reference/bug-image-compositor.ref.png > > - > > -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 > > -@@ -2601,14 +2601,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/meta/recipes-graphics/cairo/cairo_1.16.0.bb > > b/meta/recipes-graphics/cairo/cairo_1.18.0.bb > > similarity index 51% > > rename from meta/recipes-graphics/cairo/cairo_1.16.0.bb > > rename to meta/recipes-graphics/cairo/cairo_1.18.0.bb > > index ffb813d290..7547a3c412 100644 > > --- a/meta/recipes-graphics/cairo/cairo_1.16.0.bb > > +++ b/meta/recipes-graphics/cairo/cairo_1.18.0.bb > > @@ -7,7 +7,7 @@ optional translucence (opacity/alpha) and combined > > using the \ extended Porter/Duff compositing algebra as found in the > > X Render \ Extension." > > HOMEPAGE = "http://cairographics.org" > > -BUGTRACKER = "http://bugs.freedesktop.org" > > +BUGTRACKER = "https://gitlab.freedesktop.org/cairo/cairo/-/issues" > > SECTION = "libs" > > > > LICENSE = "(MPL-1.1 | LGPL-2.1-only) & GPL-3.0-or-later" > > @@ -26,62 +26,31 @@ LIC_FILES_CHKSUM = > "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77 \ > > ${@bb.utils.contains('PACKAGECONFIG', 'trace', > 'file://util/cairo-trace/COPYING-GPL-3;md5=d32239bcb673463ab874e80d47 > fae504', '', d)}" > > > > > > -DEPENDS = "fontconfig glib-2.0 libpng pixman zlib" > > +DEPENDS = "fontconfig freetype glib-2.0 libpng pixman zlib" > > > > SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz \ > > > file://cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff \ > > - file://CVE-2018-19876.patch \ > > - file://CVE-2019-6461.patch \ > > - file://CVE-2019-6462.patch \ > > - file://CVE-2020-35492.patch \ > > " > > > > -SRC_URI[md5sum] = "f19e0353828269c22bd72e271243a552" > > -SRC_URI[sha256sum] = > "5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331" > > +SRC_URI[sha256sum] = > "243a0736b978a33dee29f9cca7521733b78a65b5418206fef7bd1c3d4cf10b64" > > > > -inherit autotools pkgconfig upstream-version-is-even gtk-doc > > multilib_script > > +inherit meson pkgconfig upstream-version-is-even gtk-doc > > +multilib_script > > + > > +GTKDOC_MESON_OPTION = "gtk_doc" > > > > MULTILIB_SCRIPTS = "${PN}-perf-utils:${bindir}/cairo-trace" > > > > -X11DEPENDS = "virtual/libx11 libsm libxrender libxext" > > - > > -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb', > d)} \ > > - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 > xcb', '', d)} \ > > - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', > 'opengl', '', d)} \ > > - trace" > > -PACKAGECONFIG:class-native = > "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" > > -PACKAGECONFIG:class-nativesdk = > "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" > > - > > -PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no > --disable-xlib,${X11DEPENDS}" > > -PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb" > > -PACKAGECONFIG[directfb] = "--enable-directfb=yes,,directfb" > > -PACKAGECONFIG[valgrind] = > "--enable-valgrind=yes,--disable-valgrind,valgrind" > > -PACKAGECONFIG[egl] = "--enable-egl=yes,--disable-egl,virtual/egl" > > -PACKAGECONFIG[glesv2] = > "--enable-glesv2,--disable-glesv2,virtual/libgles2" > > -PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl" > > -# trace is under GPLv3 > > -PACKAGECONFIG[trace] = "--enable-trace,--disable-trace" > > - > > -EXTRA_OECONF += " \ > > - ${@bb.utils.contains('TARGET_FPU', 'soft', > '--disable-some-floating-point', '', d)} \ > > - --enable-tee \ > > -" > > - > > -# We don't depend on binutils so we need to disable this -export > > ac_cv_lib_bfd_bfd_openr="no" > > -# Ensure we don't depend on LZO > > -export ac_cv_lib_lzo2_lzo2a_decompress="no" > > +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', > 'xlib xcb', '', d)} trace" > > +PACKAGECONFIG[xlib] = "-Dxlib=enabled,-Dxlib=disabled,virtual/libx11 > libxrender libxext" > > +PACKAGECONFIG[xcb] = "-Dxcb=enabled,-Dxcb=disabled,libxcb" > > +# cairo-trace is GPLv3 so add an option to remove it > > +PACKAGECONFIG[trace] = "" > > > > do_install:append () { > > - rm -rf ${D}${bindir}/cairo-sphinx > > - rm -rf ${D}${libdir}/cairo/cairo-fdr* > > - rm -rf ${D}${libdir}/cairo/cairo-sphinx* > > - rm -rf ${D}${libdir}/cairo/.debug/cairo-fdr* > > - rm -rf ${D}${libdir}/cairo/.debug/cairo-sphinx* > > - [ ! -d ${D}${bindir} ] || > > - rmdir -p --ignore-fail-on-non-empty ${D}${bindir} > > - [ ! -d ${D}${libdir}/cairo ] || > > - rmdir -p --ignore-fail-on-non-empty ${D}${libdir}/cairo > > + if ! ${@bb.utils.contains('PACKAGECONFIG', 'trace', 'true', 'false', > > d)}; > then > > + rm ${D}${bindir}/cairo-trace ${D}${libdir}/cairo/libcairo-trace.so > > + rmdir --ignore-fail-on-non-empty ${D}${bindir} > ${D}${libdir}/cairo > > + fi > > } > > > > PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils" > > @@ -99,7 +68,7 @@ DESCRIPTION:cairo-perf-utils = "The Cairo library > performance utilities" > > FILES:${PN} = "${libdir}/libcairo.so.*" > > FILES:${PN}-gobject = "${libdir}/libcairo-gobject.so.*" > > FILES:${PN}-script-interpreter = > > "${libdir}/libcairo-script-interpreter.so.*" > > -FILES:${PN}-perf-utils = "${bindir}/cairo-trace* ${libdir}/cairo/*.la > ${libdir}/cairo/libcairo-trace.so" > > +FILES:${PN}-perf-utils = "${bindir}/cairo-* > ${libdir}/cairo/libcairo-trace.so ${libdir}/cairo/libcairo-fdr.so" > > > > BBCLASSEXTEND = "native nativesdk" > > > > -- > > 2.25.1 > > > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191332): https://lists.openembedded.org/g/openembedded-core/message/191332 Mute This Topic: https://lists.openembedded.org/mt/102823544/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-