summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2015-02-20 12:09:50 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2015-02-20 12:09:50 +0000
commit839d9627d7933fead0ca96b412424c4c2c87f092 (patch)
tree271ae165bc6c9eb1efe4cc873c247c7879d7a9a2 /gnustep-base/gnustep-back-cairo
parentVersion Bump (diff)
downloadgentoo-2-839d9627d7933fead0ca96b412424c4c2c87f092.tar.gz
gentoo-2-839d9627d7933fead0ca96b412424c4c2c87f092.tar.bz2
gentoo-2-839d9627d7933fead0ca96b412424c4c2c87f092.zip
Fix compilation with format-security, bug #536120 by ago. Also fix a scrolling bug with >=cairo-1.14
(Portage version: 2.2.17/cvs/Linux x86_64, signed Manifest commit with key C74525F2)
Diffstat (limited to 'gnustep-base/gnustep-back-cairo')
-rw-r--r--gnustep-base/gnustep-back-cairo/ChangeLog13
-rw-r--r--gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-cairo-scrolling.patch21
-rw-r--r--gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-format-security.patch15
-rw-r--r--gnustep-base/gnustep-back-cairo/gnustep-back-cairo-0.24.0-r1.ebuild55
4 files changed, 102 insertions, 2 deletions
diff --git a/gnustep-base/gnustep-back-cairo/ChangeLog b/gnustep-base/gnustep-back-cairo/ChangeLog
index 06f2c3ec5225..ce46119306a4 100644
--- a/gnustep-base/gnustep-back-cairo/ChangeLog
+++ b/gnustep-base/gnustep-back-cairo/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for gnustep-base/gnustep-back-cairo
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-back-cairo/ChangeLog,v 1.42 2014/12/27 19:28:06 ago Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-back-cairo/ChangeLog,v 1.43 2015/02/20 12:09:50 voyageur Exp $
+
+*gnustep-back-cairo-0.24.0-r1 (20 Feb 2015)
+
+ 20 Feb 2015; Bernard Cafarelli <voyageur@gentoo.org>
+ +gnustep-back-cairo-0.24.0-r1.ebuild,
+ +files/gnustep-back-cairo-0.24.0-cairo-scrolling.patch,
+ +files/gnustep-back-cairo-0.24.0-format-security.patch:
+ Fix compilation with format-security, bug #536120 by ago. Also fix a
+ scrolling bug with >=cairo-1.14
27 Dec 2014; Agostino Sarubbo <ago@gentoo.org>
gnustep-back-cairo-0.24.0.ebuild:
diff --git a/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-cairo-scrolling.patch b/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-cairo-scrolling.patch
new file mode 100644
index 000000000000..055fbab8db11
--- /dev/null
+++ b/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-cairo-scrolling.patch
@@ -0,0 +1,21 @@
+Description: Disable workaround for a cairo bug fixed in 1.14.0.
+Bug-Debian: http://bugs.debian.org/770141
+Origin: upstream, commit: r38135
+Last-Update: 2014-11-19
+---
+
+--- gnustep-back-0.24.0.orig/Source/cairo/CairoGState.m
++++ gnustep-back-0.24.0/Source/cairo/CairoGState.m
+@@ -1316,9 +1316,10 @@
+ ssize = [source->_surface size];
+ }
+
+- if (cairo_version() >= CAIRO_VERSION_ENCODE(1, 8, 0))
++ if ((cairo_version() >= CAIRO_VERSION_ENCODE(1, 8, 0))
++ && (cairo_version() <= CAIRO_VERSION_ENCODE(1, 13, 0)))
+ {
+- // For cairo > 1.8 we seem to need this adjustment
++ // For cairo > 1.8 and < 1.13 we seem to need this adjustment
+ srcRectInBase.origin.y -= 2 * (source->offset.y - ssize.height);
+ }
+
diff --git a/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-format-security.patch b/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-format-security.patch
new file mode 100644
index 000000000000..c773b734af75
--- /dev/null
+++ b/gnustep-base/gnustep-back-cairo/files/gnustep-back-cairo-0.24.0-format-security.patch
@@ -0,0 +1,15 @@
+From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
+Subject: Pass a proper format string to syslog()
+Last-Update: 2011-11-17
+
+--- gnustep-back.orig/Tools/gpbs.m
++++ gnustep-back/Tools/gpbs.m
+@@ -64,7 +64,7 @@
+ {
+ if (is_daemon)
+ {
+- syslog (log_priority | prio, ebuf);
++ syslog (log_priority | prio, "%s", ebuf);
+ }
+ else if (prio == LOG_INFO)
+ {
diff --git a/gnustep-base/gnustep-back-cairo/gnustep-back-cairo-0.24.0-r1.ebuild b/gnustep-base/gnustep-back-cairo/gnustep-back-cairo-0.24.0-r1.ebuild
new file mode 100644
index 000000000000..2d0ac31cf5fa
--- /dev/null
+++ b/gnustep-base/gnustep-back-cairo/gnustep-back-cairo-0.24.0-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-back-cairo/gnustep-back-cairo-0.24.0-r1.ebuild,v 1.1 2015/02/20 12:09:50 voyageur Exp $
+
+EAPI=5
+inherit eutils gnustep-base
+
+DESCRIPTION="Cairo back-end component for the GNUstep GUI Library"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-${PV}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="opengl xim"
+
+RDEPEND="${GNUSTEP_CORE_DEPEND}
+ =gnustep-base/gnustep-gui-${PV%.*}*
+ opengl? ( virtual/opengl virtual/glu )
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXft
+ x11-libs/libXrender
+ >=media-libs/freetype-2.1.9
+
+ >=x11-libs/cairo-1.2.0[X]
+
+ !gnustep-base/gnustep-back-art
+ !gnustep-base/gnustep-back-xlib"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/gnustep-back-${PV}
+
+src_prepare() {
+ gnustep-base_src_prepare
+ epatch "${FILESDIR}"/${P}-cairo-scrolling.patch
+ epatch "${FILESDIR}"/${P}-format-security.patch
+}
+
+src_configure() {
+ egnustep_env
+
+ myconf="$(use_enable opengl glx)"
+ myconf="$myconf $(use_enable xim)"
+ myconf="$myconf --enable-server=x11"
+ myconf="$myconf --enable-graphics=cairo"
+
+ econf $myconf
+}