summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicola Murino2020-05-18 14:21:10 +0200
committerNicola Murino2020-05-18 14:21:10 +0200
commit19a21c6d578f04ea72b9f18022d69ffb96c5b369 (patch)
tree17b135581c6f3f71991593ffe71c292d6316fd18
parent7e6bf02546740e3ad6d92232a70f2ce6185735e0 (diff)
downloadaur-19a21c6d578f04ea72b9f18022d69ffb96c5b369.tar.gz
update to 1.17.2
-rw-r--r--.SRCINFO17
-rw-r--r--0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch32
-rw-r--r--0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch27
-rw-r--r--PKGBUILD37
4 files changed, 60 insertions, 53 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f85493b60062..d1b63b7fd57a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,32 +1,33 @@
pkgbase = mingw-w64-cairo-bootstrap
- pkgdesc = Cairo vector graphics library (mingw-w64 bootstrap)
- pkgver = 1.16.0
- pkgrel = 3
+ pkgdesc = 2D graphics library with support for multiple output devices (mingw-w64 bootstrap)
+ pkgver = 1.17.2+17+g52a7c79fd
+ pkgrel = 1
url = http://cairographics.org/
arch = any
license = LGPL
license = MPL
makedepends = mingw-w64-configure
+ makedepends = git
depends = mingw-w64-pixman
depends = mingw-w64-glib2
depends = mingw-w64-fontconfig
depends = mingw-w64-libpng
depends = mingw-w64-lzo
- provides = mingw-w64-cairo=1.16.0
+ provides = mingw-w64-cairo=1.17.2+17+g52a7c79fd
conflicts = mingw-w64-cairo
options = !strip
options = !buildflags
options = staticlibs
- source = https://cairographics.org/releases/cairo-1.16.0.tar.xz
+ source = git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=52a7c79fd4ff96bb5fac175f0199819b0f8c18fc
source = 0009-standalone-headers.mingw.patch
source = 0026-create-argb-fonts.all.patch
source = 0027-win32-print-fix-unbounded-surface-assertion.patch
- source = 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
- sha256sums = 5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331
+ source = 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
+ sha256sums = SKIP
sha256sums = 234de8c5d4c28b03c19e638a353e8defb2de0367a634c002b0ea7d2877bd0756
sha256sums = 6db6c44fbdb4926d09afa978fe80430186c4b7b7d255059602b1f94c6a079975
sha256sums = 7e244c20eec8c7b287dbee1d34de178d9b0c419dc4c2b11c90eaf626c92bf781
- sha256sums = 52ab418058076ad01e046ebbbdc834f390305516c222d07de91a93a4dcebe921
+ sha256sums = 262bf1cebc04eaae93dbfab56045ad800b3b027be303ca2611375645108f171f
pkgname = mingw-w64-cairo-bootstrap
diff --git a/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch b/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
deleted file mode 100644
index 0cc9f45d429b..000000000000
--- a/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
+++ /dev/null
@@ -1,32 +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
-
-Signed-off-by: Laurent Carlier <lordheavym@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.20.1
-
diff --git a/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch b/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
new file mode 100644
index 000000000000..9d8f2d7708e1
--- /dev/null
+++ b/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
@@ -0,0 +1,27 @@
+From d0dccb92c520556aaa02bd1fdf8f2922cef00292 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Sat, 5 Oct 2019 14:07:28 +0200
+Subject: [PATCH] image compositor: Remove the right glyph from pixman's cache
+
+We need to use the index including the phase. Otherwise we leave glyphs
+in the cache that cause problems later as indices are reused.
+---
+ src/cairo-image-compositor.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c
+index 6fccb79f1..79ad69f68 100644
+--- a/src/cairo-image-compositor.c
++++ b/src/cairo-image-compositor.c
+@@ -841,7 +841,7 @@ _cairo_image_scaled_glyph_fini (cairo_scaled_font_t *scaled_font,
+ if (global_glyph_cache) {
+ pixman_glyph_cache_remove (
+ global_glyph_cache, scaled_font,
+- (void *)_cairo_scaled_glyph_index (scaled_glyph));
++ (void *)scaled_glyph->hash_entry.hash);
+ }
+
+ CAIRO_MUTEX_UNLOCK (_cairo_glyph_cache_mutex);
+--
+2.23.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 67014aa005b2..68508757b72f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,41 +2,52 @@
# Contributor: Chris Kitching <chriskitching@linux.com>
# Contributor: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
pkgname=mingw-w64-cairo-bootstrap
-pkgver=1.16.0
-pkgrel=3
-pkgdesc="Cairo vector graphics library (mingw-w64 bootstrap)"
+pkgver=1.17.2+17+g52a7c79fd
+pkgrel=1
+pkgdesc="2D graphics library with support for multiple output devices (mingw-w64 bootstrap)"
+_commit=52a7c79fd4ff96bb5fac175f0199819b0f8c18fc
arch=(any)
url="http://cairographics.org/"
license=("LGPL" "MPL")
-makedepends=(mingw-w64-configure)
+makedepends=(mingw-w64-configure git)
depends=(mingw-w64-pixman mingw-w64-glib2 mingw-w64-fontconfig mingw-w64-libpng mingw-w64-lzo)
options=(!strip !buildflags staticlibs)
provides=(${pkgname%-bootstrap}=$pkgver)
conflicts=(${pkgname%-bootstrap})
-source=("https://cairographics.org/releases/cairo-${pkgver}.tar.xz"
+source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit"
"0009-standalone-headers.mingw.patch"
"0026-create-argb-fonts.all.patch"
"0027-win32-print-fix-unbounded-surface-assertion.patch"
- "0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch")
-sha256sums=('5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331'
+ "0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch")
+sha256sums=('SKIP'
'234de8c5d4c28b03c19e638a353e8defb2de0367a634c002b0ea7d2877bd0756'
'6db6c44fbdb4926d09afa978fe80430186c4b7b7d255059602b1f94c6a079975'
'7e244c20eec8c7b287dbee1d34de178d9b0c419dc4c2b11c90eaf626c92bf781'
- '52ab418058076ad01e046ebbbdc834f390305516c222d07de91a93a4dcebe921')
+ '262bf1cebc04eaae93dbfab56045ad800b3b027be303ca2611375645108f171f')
+
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
+pkgver() {
+ cd cairo
+ git describe --tags | sed 's/-/+/g'
+}
+
prepare() {
- cd cairo-$pkgver
+ cd cairo
patch -p1 -i ${srcdir}/0009-standalone-headers.mingw.patch
patch -p1 -i ${srcdir}/0026-create-argb-fonts.all.patch
patch -p1 -i ${srcdir}/0027-win32-print-fix-unbounded-surface-assertion.patch
- # CVE-2018-19876
- patch -p1 -i ${srcdir}/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
- autoreconf -fi
+ # https://bugs.archlinux.org/task/63856
+ patch -p1 -i ${srcdir}/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
+
+ # Fix typo
+ sed -i 's/have_png/use_png/g' configure.ac
+
+ NOCONFIGURE=1 ./autogen.sh
}
build() {
- cd cairo-${pkgver}
+ cd cairo
CFLAGS+=" -Wno-implicit-function-declaration"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}