package/cairo: bump to 1.17.4

News:
 - https://www.cairographics.org/news/cairo-1.17.2/
 - https://www.cairographics.org/news/cairo-1.17.4/

!! This is a bump to a snapshot release: 1.17.4.

But it is the first version that supports meson,
and the only version that supports both meson and autotools.

This is just an intermediate bump in order to
switch over to meson in a later commit.

Patches:
 - drop 0001-fix-nofork-build.patch, upstream: [1]
 - drop 0002-ft-Use-FT_Done_MM_Var-instead-of-free-when-available-in-cairo_ft_apply_variation.patch, upstream: [2]
 - add 0003-cairo-ft-private.h-fix-missing-FT_Color-error.patch, upstream: [3]

[1]: cb2357f481
[2]: 90e85c2493
[3]: https://gitlab.freedesktop.org/cairo/cairo/-/issues/792

Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
Tested-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Devoogdt 2024-01-07 11:55:37 +01:00 committed by Peter Korsgaard
parent bce4fe6d1b
commit b392d656c7
8 changed files with 41 additions and 75 deletions

View File

@ -227,10 +227,8 @@ package/c-icap/0001-Required-fixes-to-compile-and-run-under-cygwin.patch Upstrea
package/c-icap/S96cicap Indent Shellcheck Variables
package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch Upstream
package/cache-calibrator/0001-Fix-conflicting-round-function.patch Upstream
package/cairo/0001-fix-nofork-build.patch Upstream
package/cairo/0002-ft-Use-FT_Done_MM_Var-instead-of-free-when-available-in-cairo_ft_apply_variation.patch Upstream
package/cairo/0003-_arc_max_angle_for_tolerance_normalized-fix-infinite.patch Upstream
package/cairo/0004-Fix-mask-usage-in-image-compositor.patch Upstream
package/cairo/0001-_arc_max_angle_for_tolerance_normalized-fix-infinite.patch Upstream
package/cairo/0002-Fix-mask-usage-in-image-compositor.patch Upstream
package/caps/0001-Fix-stdint-types-with-musl.patch Upstream
package/cdrkit/0001-no-rcmd.patch Upstream
package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch Upstream

View File

@ -1,29 +0,0 @@
test: fix build when SHOULD_FORK is false
The code in test/cairo-test-runner.c properly takes into account
platforms that do have fork() support, and uses the SHOULD_FORK define
to know whether fork is available or not.
However, this SHOULD_FORK macro is used to guard the inclusion of
<unistd.h>, which is needed to get the prototype of other functions
(namely readlink and getppid), that are used in portions of this file
not guarded by SHOULD_FORK.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/test/cairo-test-runner.c
===================================================================
--- a/test/cairo-test-runner.c
+++ b/test/cairo-test-runner.c
@@ -36,10 +36,10 @@
#include <pixman.h> /* for version information */
#define SHOULD_FORK HAVE_FORK && HAVE_WAITPID
-#if SHOULD_FORK
#if HAVE_UNISTD_H
#include <unistd.h>
#endif
+#if SHOULD_FORK
#if HAVE_SIGNAL_H
#include <signal.h>
#endif

View File

@ -1,33 +0,0 @@
From 90e85c2493fdfa3551f202ff10282463f1e36645 Mon Sep 17 00:00:00 2001
From: Carlos Garcia Campos <cgarcia@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
[Retrieved from:
https://gitlab.freedesktop.org/cairo/cairo/-/commit/90e85c2493fdfa3551f202ff10282463f1e36645]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
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.24.1

View File

@ -0,0 +1,32 @@
From da698db0c20507f0e07492cbe40dbaf1c9053f71 Mon Sep 17 00:00:00 2001
From: Thomas Devoogdt <thomas@devoogdt.com>
Date: Sun, 12 Nov 2023 09:58:05 +0100
Subject: [PATCH] cairo-ft-private.h: fix missing FT_Color error
In file included from ../src/cairo-colr-glyph-render.c:37:
../src/cairo-ft-private.h:87:30: error: unknown type name 'FT_Color'
87 | FT_Color *palette,
| ^~~~~~~~
Upstream: https://gitlab.freedesktop.org/cairo/cairo/-/issues/792
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
src/cairo-ft-private.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/cairo-ft-private.h b/src/cairo-ft-private.h
index 836f7e523..6b0e30223 100644
--- a/src/cairo-ft-private.h
+++ b/src/cairo-ft-private.h
@@ -43,6 +43,8 @@
#if CAIRO_HAS_FT_FONT
+#include FT_COLOR_H
+
CAIRO_BEGIN_DECLS
typedef struct _cairo_ft_unscaled_font cairo_ft_unscaled_font_t;
--
2.34.1

View File

@ -1,7 +1,7 @@
# From https://www.cairographics.org/releases/cairo-1.16.0.tar.xz.sha1
sha1 00e81842ae5e81bb0343108884eb5205be0eac14 cairo-1.16.0.tar.xz
# From https://www.cairographics.org/snapshots/cairo-1.17.4.tar.xz.sha1
sha1 68712ae1039b114347be3b7200bc1c901d47a636 cairo-1.17.4.tar.xz
# Calculated based on the hash above
sha256 5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331 cairo-1.16.0.tar.xz
sha256 74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705 cairo-1.17.4.tar.xz
# Hash for license files:
sha256 67228a9f7c5f9b67c58f556f1be178f62da4d9e2e6285318d8c74d567255abdf COPYING

View File

@ -4,19 +4,17 @@
#
################################################################################
CAIRO_VERSION = 1.16.0
CAIRO_VERSION = 1.17.4
CAIRO_SOURCE = cairo-$(CAIRO_VERSION).tar.xz
CAIRO_LICENSE = LGPL-2.1 or MPL-1.1 (library)
CAIRO_LICENSE_FILES = COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1
CAIRO_CPE_ID_VENDOR = cairographics
CAIRO_SITE = http://cairographics.org/releases
CAIRO_SITE = http://cairographics.org/snapshots
CAIRO_INSTALL_STAGING = YES
# 0002-ft-Use-FT_Done_MM_Var-instead-of-free-when-available-in-cairo_ft_apply_variation.patch
CAIRO_IGNORE_CVES += CVE-2018-19876
# 0003-_arc_max_angle_for_tolerance_normalized-fix-infinite.patch
# 0001-_arc_max_angle_for_tolerance_normalized-fix-infinite.patch
CAIRO_IGNORE_CVES += CVE-2019-6462
# 0004-Fix-mask-usage-in-image-compositor.patch
# 0002-Fix-mask-usage-in-image-compositor.patch
CAIRO_IGNORE_CVES += CVE-2020-35492
CAIRO_CONF_ENV = LIBS="$(CAIRO_LIBS)"