summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2014-01-08 11:54:52 +0000
committerJustin Lecher <jlec@gentoo.org>2014-01-08 11:54:52 +0000
commitcd210e9c9db156ff7f0cdb0bc1ececd71f30d1df (patch)
tree024b580e72add187eb67efda74260874c940d305 /media-gfx
parentclean up (diff)
downloadgentoo-2-cd210e9c9db156ff7f0cdb0bc1ececd71f30d1df.tar.gz
gentoo-2-cd210e9c9db156ff7f0cdb0bc1ececd71f30d1df.tar.bz2
gentoo-2-cd210e9c9db156ff7f0cdb0bc1ececd71f30d1df.zip
media-gfx/inkscape: Fix compatibility with API changes in boehm-gc-7.4.0, #495210
(Portage version: 2.2.8/cvs/Linux x86_64, signed Manifest commit with key B9D4F231BD1558AB!)
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/inkscape/ChangeLog9
-rw-r--r--media-gfx/inkscape/files/inkscape-0.48.4-gc74-configure.patch15
-rw-r--r--media-gfx/inkscape/files/inkscape-0.48.4-gc74.patch54
-rw-r--r--media-gfx/inkscape/inkscape-0.48.4-r1.ebuild22
4 files changed, 90 insertions, 10 deletions
diff --git a/media-gfx/inkscape/ChangeLog b/media-gfx/inkscape/ChangeLog
index ffa0ba3b266d..40c2b99b48e0 100644
--- a/media-gfx/inkscape/ChangeLog
+++ b/media-gfx/inkscape/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for media-gfx/inkscape
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/ChangeLog,v 1.202 2013/12/26 14:46:55 maekke Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/ChangeLog,v 1.203 2014/01/08 11:54:52 jlec Exp $
+
+ 08 Jan 2014; Justin Lecher <jlec@gentoo.org> inkscape-0.48.4-r1.ebuild,
+ +files/inkscape-0.48.4-gc74-configure.patch,
+ +files/inkscape-0.48.4-gc74.patch:
+ Fix compatibility with API changes in boehm-gc-7.4.0, #495210
26 Dec 2013; Markus Meier <maekke@gentoo.org> inkscape-0.48.4-r1.ebuild:
add ~arm, bug #488594
diff --git a/media-gfx/inkscape/files/inkscape-0.48.4-gc74-configure.patch b/media-gfx/inkscape/files/inkscape-0.48.4-gc74-configure.patch
new file mode 100644
index 000000000000..3ef7ce2c98b6
--- /dev/null
+++ b/media-gfx/inkscape/files/inkscape-0.48.4-gc74-configure.patch
@@ -0,0 +1,15 @@
+--- inkscape-0.48.4/configure.ac 2013-12-31 00:38:18.592732496 +0400
++++ inkscape-0.48.4/configure.ac 2013-12-31 00:39:13.558730872 +0400
+@@ -263,7 +263,11 @@
+ # include <gc.h>
+ #endif
+ #include <stdio.h>
+- extern unsigned GC_version;
++ #if (GC_VERSION_MAJOR >= 7 && GC_VERSION_MINOR >= 4)
++ unsigned GC_version = GC_get_version();
++ #else
++ extern unsigned GC_version;
++ #endif
+ int main(void){
+ unsigned min = ((6 << 16) | (4 << 8) | 0);
+ printf("%d.%d.%d ",GC_version >> 16, (GC_version >> 8) & 0xFF, GC_version & 0xFF);
diff --git a/media-gfx/inkscape/files/inkscape-0.48.4-gc74.patch b/media-gfx/inkscape/files/inkscape-0.48.4-gc74.patch
new file mode 100644
index 000000000000..41615ac49a30
--- /dev/null
+++ b/media-gfx/inkscape/files/inkscape-0.48.4-gc74.patch
@@ -0,0 +1,54 @@
+--- inkscape-0.48.4/src/gc-core.h.old 2013-12-31 01:22:38.976653890 +0400
++++ inkscape-0.48.4/src/gc-core.h 2013-12-31 01:22:48.525653608 +0400
+@@ -57,7 +57,7 @@
+ CleanupFunc *old_func,
+ void **old_data);
+ int (*general_register_disappearing_link)(void **p_ptr,
+- void *base);
++ const void *base);
+ int (*unregister_disappearing_link)(void **p_ptr);
+ std::size_t (*get_heap_size)();
+ std::size_t (*get_free_bytes)();
+--- inkscape-0.48.4/src/gc.cpp.old 2013-12-31 01:23:50.462651778 +0400
++++ inkscape-0.48.4/src/gc.cpp 2013-12-31 01:40:37.718622017 +0400
+@@ -70,8 +70,8 @@
+ return base + debug_base_fixup();
+ }
+
+-int debug_general_register_disappearing_link(void **p_ptr, void *base) {
+- char *real_base=reinterpret_cast<char *>(base) - debug_base_fixup();
++int debug_general_register_disappearing_link(void **p_ptr, const void *base) {
++ char *real_base=const_cast<char *>(reinterpret_cast<const char *>(base)) - debug_base_fixup();
+ return GC_general_register_disappearing_link(p_ptr, real_base);
+ }
+
+@@ -90,7 +90,7 @@
+ }
+ }
+
+-int dummy_general_register_disappearing_link(void **, void *) { return false; }
++int dummy_general_register_disappearing_link(void **, const void *) { return false; }
+
+ int dummy_unregister_disappearing_link(void **/*link*/) { return false; }
+
+@@ -112,7 +112,11 @@
+ &GC_malloc_atomic_uncollectable,
+ &GC_base,
+ &GC_register_finalizer_ignore_self,
++#if (GC_MAJOR_VERSION >= 7 && GC_MINOR_VERSION >= 4)
+ &GC_general_register_disappearing_link,
++#else
++ (int (*)(void**, const void*))(&GC_general_register_disappearing_link),
++#endif
+ &GC_unregister_disappearing_link,
+ &GC_get_heap_size,
+ &GC_get_free_bytes,
+@@ -202,7 +206,7 @@
+ die_because_not_initialized();
+ }
+
+-int stub_general_register_disappearing_link(void **, void *) {
++int stub_general_register_disappearing_link(void **, const void *) {
+ die_because_not_initialized();
+ return 0;
+ }
diff --git a/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild b/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild
index 0abb86e89e9f..d2ab75bbcb56 100644
--- a/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild
+++ b/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild
@@ -1,8 +1,9 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild,v 1.7 2013/12/26 14:46:55 maekke Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/inkscape-0.48.4-r1.ebuild,v 1.8 2014/01/08 11:54:52 jlec Exp $
EAPI=5
+
PYTHON_COMPAT=( python{2_6,2_7} )
PYTHON_REQ_USE="xml"
GCONF_DEBUG=no
@@ -13,17 +14,21 @@ MY_P=${P/_/}
DESCRIPTION="A SVG based generic vector-drawing program"
HOMEPAGE="http://www.inkscape.org/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2
+SRC_URI="
+ mirror://sourceforge/${PN}/${MY_P}.tar.bz2
https://launchpadlibrarian.net/157792073/1255830-fix-freetype-includes-backport-0.48.x-v1.diff -> ${P}-freetype251.patch"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
IUSE="dia gnome postscript inkjar lcms nls spell wmf"
+
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="
${PYTHON_DEPS}
+ app-text/libwpd:0.9
+ app-text/libwpg:0.2
>=app-text/poppler-0.12.3-r3:=[cairo,xpdf-headers(+)]
dev-cpp/glibmm
>=dev-cpp/gtkmm-2.18.0:2.4
@@ -38,8 +43,6 @@ COMMON_DEPEND="
media-libs/fontconfig
media-libs/freetype:2
media-libs/libpng:0
- app-text/libwpd:0.9
- app-text/libwpg:0.2
sci-libs/gsl
x11-libs/libX11
>=x11-libs/gtk+-2.10.7:2
@@ -64,9 +67,9 @@ RDEPEND="${COMMON_DEPEND}
DEPEND="${COMMON_DEPEND}
dev-libs/boost
+ >=dev-util/intltool-0.29
sys-devel/gettext
- virtual/pkgconfig
- >=dev-util/intltool-0.29"
+ virtual/pkgconfig"
S=${WORKDIR}/${MY_P}
@@ -74,12 +77,15 @@ RESTRICT="test"
src_prepare() {
gnome2_src_prepare
- epatch "${FILESDIR}"/${PN}-0.48.0-spell.patch \
+ epatch \
+ "${FILESDIR}"/${PN}-0.48.0-spell.patch \
"${FILESDIR}"/${PN}-0.48.2-libwpg.patch \
"${FILESDIR}"/${PN}-0.48.3.1-desktop.patch \
"${FILESDIR}"/${PN}-0.48.4-epython.patch \
"${FILESDIR}"/${PN}-0.48.4-fix-member-decl.patch \
"${FILESDIR}"/${PN}-0.48.4-automake-1.13.patch \
+ "${FILESDIR}"/${P}-gc74-configure.patch \
+ "${FILESDIR}"/${P}-gc74.patch \
"${DISTDIR}"/${P}-freetype251.patch
sed -i \