package/cairo: Fix build

Buildroot commit 29888ab35e bumped cairo
to version 1.18.2.

This version includes commit
87f7c60bf7
"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 <bernd@kuhls.net>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
This commit is contained in:
Bernd Kuhls
2026-05-30 12:40:41 +02:00
committed by Arnout Vandecappelle
parent c6610787d8
commit b90127ee71

View File

@@ -0,0 +1,49 @@
From 78258169cf0c380754804b5835203a199ba8efab Mon Sep 17 00:00:00 2001
From: Stephan Bergmann <stephan.bergmann@collabora.com>
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 <bernd@kuhls.net>
---
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