From 00b4aa9ac3eda5617c5be9413d4fc5c3939d93dd Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 29 Oct 2014 15:22:08 +0000 Subject: [PATCH] extra/cairo to 1.14.0-2 --- extra/cairo/PKGBUILD | 15 +++++++-- extra/cairo/cairo-1.12.16-lto-optional.patch | 29 ----------------- extra/cairo/git_fixes.diff | 34 ++++++++++++++++++++ 3 files changed, 46 insertions(+), 32 deletions(-) delete mode 100644 extra/cairo/cairo-1.12.16-lto-optional.patch create mode 100644 extra/cairo/git_fixes.diff diff --git a/extra/cairo/PKGBUILD b/extra/cairo/PKGBUILD index dbefac916..25ca88f63 100644 --- a/extra/cairo/PKGBUILD +++ b/extra/cairo/PKGBUILD @@ -7,7 +7,7 @@ pkgname=cairo pkgver=1.14.0 -pkgrel=1 +pkgrel=2 pkgdesc="Cairo vector graphics library" arch=(i686 x86_64) license=('LGPL' 'MPL') @@ -19,8 +19,17 @@ makedepends=('mesa-libgl' 'librsvg' 'gtk2' 'poppler-glib' 'libspectre' 'gtk-doc' #optdepends=('xcb-util: for XCB backend') # really needed? provides=('cairo-xcb') replaces=('cairo-xcb') -source=(http://cairographics.org/releases/cairo-$pkgver.tar.xz) -sha1sums=('53cf589b983412ea7f78feee2e1ba9cea6e3ebae') +source=(http://cairographics.org/releases/cairo-$pkgver.tar.xz + git_fixes.diff) +sha1sums=('53cf589b983412ea7f78feee2e1ba9cea6e3ebae' + '0ebac538dfa510e8e3f07ba71a49dabc627b08ff') + +prepare() { + cd $pkgname-$pkgver + # fix some segfaults: https://bugs.freedesktop.org/show_bug.cgi?id=85151 + # https://bugs.archlinux.org/task/42596 + patch -Np1 -i ${srcdir}/git_fixes.diff +} build() { cd $pkgname-$pkgver diff --git a/extra/cairo/cairo-1.12.16-lto-optional.patch b/extra/cairo/cairo-1.12.16-lto-optional.patch deleted file mode 100644 index 8e3c6186c..000000000 --- a/extra/cairo/cairo-1.12.16-lto-optional.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a/build/configure.ac.warnings b/build/configure.ac.warnings -index f984eb2..15b3da2 100644 ---- a/build/configure.ac.warnings -+++ b/build/configure.ac.warnings -@@ -38,13 +38,18 @@ dnl options. Namely, the following: - - dnl -flto working really needs a test link, not just a compile - --safe_MAYBE_WARN="$MAYBE_WARN" --MAYBE_WARN="$MAYBE_WARN -flto" --AC_TRY_LINK([],[ -+AC_ARG_ENABLE(lto, -+ AS_HELP_STRING([--disable-lto], -+ [Do not try to use Link-Time Optimization])) -+if test "x$enable_lto" != "xno"; then -+ safe_MAYBE_WARN="$MAYBE_WARN" -+ MAYBE_WARN="$MAYBE_WARN -flto" -+ AC_TRY_LINK([],[ - int main(int argc, char **argv) { return 0; } --],[],[ -+ ],[],[ - MAYBE_WARN="$safe_MAYBE_WARN" --]) -+ ]) -+fi - - MAYBE_WARN="$MAYBE_WARN -fno-strict-aliasing -fno-common" - - diff --git a/extra/cairo/git_fixes.diff b/extra/cairo/git_fixes.diff new file mode 100644 index 000000000..8f751ce24 --- /dev/null +++ b/extra/cairo/git_fixes.diff @@ -0,0 +1,34 @@ +From 2de69581c28bf115852037ca41eba13cb7335976 Mon Sep 17 00:00:00 2001 +From: Massimo Valentini +Date: Sun, 19 Oct 2014 09:19:10 +0200 +Subject: tor-scan-converter: can't do_fullrow when intersection in row + + 0.5subrow + +the active edges list must be left sorted at the next possible use +and since full_row does not deal with intersections it is not usable +when there is an intersection in the top half of the next row first +subrow + +Reported-and-tested-by: Matthew Leach +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85151 +Reviewed-by: Chris Wilson + +diff --git a/src/cairo-tor-scan-converter.c b/src/cairo-tor-scan-converter.c +index 4adcafb..14922d0 100644 +--- a/src/cairo-tor-scan-converter.c ++++ b/src/cairo-tor-scan-converter.c +@@ -1167,8 +1167,8 @@ can_do_full_row (struct active_list *active) + + if (e->dy) { + struct quorem x = e->x; +- x.quo += e->dxdy_full.quo - e->dxdy.quo/2; +- x.rem += e->dxdy_full.rem - e->dxdy.rem/2; ++ x.quo += e->dxdy_full.quo; ++ x.rem += e->dxdy_full.rem; + if (x.rem < 0) { + x.quo--; + x.rem += e->dy; +-- +cgit v0.10.2 + +