From b90127ee7174bc867a98a4c0a0eb164ae7b1fe47 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sat, 30 May 2026 12:40:41 +0200 Subject: [PATCH] package/cairo: Fix build Buildroot commit 29888ab35e047099d239f266b7b565cd4023503e bumped cairo to version 1.18.2. This version includes commit https://gitlab.freedesktop.org/cairo/cairo/-/commit/87f7c60bf7c20079c34cfc54e4db05920d14db56 "Add support for C11 atomics" which causes build errors: ../src/cairo-image-source.c: In function '_pixman_transparent_image': ../src/cairo-image-source.c:89:40: error: passing argument 1 of '_cairo_atomic_ptr_cmpxchg_impl' from incompatible pointer type [-Wincompatible-pointer-types] 89 | if (_cairo_atomic_ptr_cmpxchg (&__pixman_transparent_image, Fixes: 1.18.2: https://autobuild.buildroot.net/results/5d4/5d4cd38d71008f385f92577b07f21dcfc3c19b38/ 1.18.4: https://autobuild.buildroot.net/results/0e9/0e962c66e1e96b5899e87c13ace824379adc09f9/ Signed-off-by: Bernd Kuhls Signed-off-by: Arnout Vandecappelle --- ...ilence-some-Wincompatible-pointer-ty.patch | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 package/cairo/0001-external-cairo-Silence-some-Wincompatible-pointer-ty.patch diff --git a/package/cairo/0001-external-cairo-Silence-some-Wincompatible-pointer-ty.patch b/package/cairo/0001-external-cairo-Silence-some-Wincompatible-pointer-ty.patch new file mode 100644 index 0000000000..95f7924f12 --- /dev/null +++ b/package/cairo/0001-external-cairo-Silence-some-Wincompatible-pointer-ty.patch @@ -0,0 +1,49 @@ +From 78258169cf0c380754804b5835203a199ba8efab Mon Sep 17 00:00:00 2001 +From: Stephan Bergmann +Date: Mon, 22 Sep 2025 17:08:36 +0200 +Subject: [PATCH] external/cairo: Silence some -Wincompatible-pointer-types + +Downloaded from +https://github.com/LibreOffice/core/blob/36e0812a01ae5b94a1bb7549b0db20812d0f821a/external/cairo/cairo/Wincompatible-pointer-types.patch.0 + +Upstream: https://gitlab.freedesktop.org/cairo/cairo/-/issues/921 + +Signed-off-by: Bernd Kuhls +--- + src/cairo-image-source.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/cairo-image-source.c b/src/cairo-image-source.c +index eaf72e2cc..05ffa5660 100644 +--- a/src/cairo-image-source.c ++++ b/src/cairo-image-source.c +@@ -86,7 +86,7 @@ _pixman_transparent_image (void) + if (unlikely (image == NULL)) + return NULL; + +- if (_cairo_atomic_ptr_cmpxchg (&__pixman_transparent_image, ++ if (_cairo_atomic_ptr_cmpxchg ((cairo_atomic_intptr_t *) &__pixman_transparent_image, + NULL, image)) + { + pixman_image_ref (image); +@@ -118,7 +118,7 @@ _pixman_black_image (void) + if (unlikely (image == NULL)) + return NULL; + +- if (_cairo_atomic_ptr_cmpxchg (&__pixman_black_image, ++ if (_cairo_atomic_ptr_cmpxchg ((cairo_atomic_intptr_t *) &__pixman_black_image, + NULL, image)) + { + pixman_image_ref (image); +@@ -150,7 +150,7 @@ _pixman_white_image (void) + if (unlikely (image == NULL)) + return NULL; + +- if (_cairo_atomic_ptr_cmpxchg (&__pixman_white_image, ++ if (_cairo_atomic_ptr_cmpxchg ((cairo_atomic_intptr_t *) &__pixman_white_image, + NULL, image)) + { + pixman_image_ref (image); +-- +2.47.3 +