From: Martin Jansa Date: Sun, 17 Aug 2025 20:50:33 +0000 (+0200) Subject: cairo: fix build with gcc-15 on host X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6bd49cba1d7e12a6d8a4521a2097ff9f5ddc6368;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git cairo: fix build with gcc-15 on host * backports from 1.18.2 used since: https://git.openembedded.org/openembedded-core/commit/?id=070d79c8adec7e0a8862019cf61910a59b18613a * fixes build on hosts with gcc-15 (e.g. ubuntu-25.10) ../cairo-1.18.0/test/pdiff/pdiff.h:22:13: error: ‘bool’ cannot be defined via ‘typedef’ 22 | typedef int bool; | ^~~~ ../cairo-1.18.0/test/pdiff/pdiff.h:22:13: note: ‘bool’ is a keyword with ‘-std=c23’ onwards ../cairo-1.18.0/test/pdiff/pdiff.h:22:1: warning: useless type name in empty declaration 22 | typedef int bool; | ^~~~~~~ Signed-off-by: Martin Jansa Signed-off-by: Steve Sakoman --- diff --git a/meta/recipes-graphics/cairo/cairo/0001-Require-C11.patch b/meta/recipes-graphics/cairo/cairo/0001-Require-C11.patch new file mode 100644 index 00000000000..0f70b665009 --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo/0001-Require-C11.patch @@ -0,0 +1,26 @@ +From de2452228814e804b103dfa7c2d37b3a216c6155 Mon Sep 17 00:00:00 2001 +From: Adrian Johnson +Date: Sun, 28 Apr 2024 21:31:41 +0930 +Subject: [PATCH] Require C11 + +Upstream-Status: Backport [https://gitlab.freedesktop.org/cairo/cairo/-/commit/b60f47dfd5bbe98aec43f6c356ba3be9a1b7989e] +Signed-off-by: Martin Jansa +--- + meson.build | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 9100152..f8432fd 100644 +--- a/meson.build ++++ b/meson.build +@@ -1,7 +1,8 @@ + project('cairo', 'c', 'cpp', +- meson_version: '>= 0.59.0', ++ meson_version: '>= 1.3.0', + version: run_command(find_program('version.py'), check: true).stdout().strip(), +- default_options: ['warning_level=2'], ++ default_options: ['c_std=gnu11,c11', ++ 'warning_level=2'], + ) + + freetype_required_version = '>= 9.7.3' diff --git a/meta/recipes-graphics/cairo/cairo/0002-Meson-Require-C-11.patch b/meta/recipes-graphics/cairo/cairo/0002-Meson-Require-C-11.patch new file mode 100644 index 00000000000..85f300e960c --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo/0002-Meson-Require-C-11.patch @@ -0,0 +1,23 @@ +From d9cc95b94b2bb1e67f2095cda484d4a8a63aba10 Mon Sep 17 00:00:00 2001 +From: Luca Bacci +Date: Thu, 16 Jan 2025 16:48:12 +0100 +Subject: [PATCH] Meson: Require C++11 + +Upstream-Status: Backport [https://gitlab.freedesktop.org/cairo/cairo/-/commit/dfd06ab3884d79de3b5bac782d1e8b2a0bd791ab] +Signed-off-by: Martin Jansa +--- + meson.build | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/meson.build b/meson.build +index f8432fd..85434d2 100644 +--- a/meson.build ++++ b/meson.build +@@ -2,6 +2,7 @@ project('cairo', 'c', 'cpp', + meson_version: '>= 1.3.0', + version: run_command(find_program('version.py'), check: true).stdout().strip(), + default_options: ['c_std=gnu11,c11', ++ 'cpp_std=gnu++11,c++11', + 'warning_level=2'], + ) + diff --git a/meta/recipes-graphics/cairo/cairo_1.18.0.bb b/meta/recipes-graphics/cairo/cairo_1.18.0.bb index 4c97e973d0c..f1a87ccb3f2 100644 --- a/meta/recipes-graphics/cairo/cairo_1.18.0.bb +++ b/meta/recipes-graphics/cairo/cairo_1.18.0.bb @@ -30,6 +30,8 @@ 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://0001-Require-C11.patch \ + file://0002-Meson-Require-C-11.patch \ " SRC_URI[sha256sum] = "243a0736b978a33dee29f9cca7521733b78a65b5418206fef7bd1c3d4cf10b64"