Fix building with GCC 4.5 wrt #305749 by Daniel J.. Fix PostScript dependencies wrt...
authorSamuli Suominen <ssuominen@gentoo.org>
Fri, 16 Apr 2010 10:44:23 +0000 (10:44 +0000)
committerSamuli Suominen <ssuominen@gentoo.org>
Fri, 16 Apr 2010 10:44:23 +0000 (10:44 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

media-gfx/inkscape/ChangeLog
media-gfx/inkscape/Manifest
media-gfx/inkscape/files/inkscape-0.47-gcc45.patch [new file with mode: 0644]
media-gfx/inkscape/inkscape-0.47.ebuild
media-gfx/inkscape/metadata.xml

index 8c2bd17367e647c4bba62c3d327840f5dc7bd3ec..80c44971469a0e3fd767ae686738698851660a32 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for media-gfx/inkscape
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/ChangeLog,v 1.138 2010/02/10 12:12:43 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/ChangeLog,v 1.139 2010/04/16 10:44:23 ssuominen Exp $
+
+  16 Apr 2010; Samuli Suominen <ssuominen@gentoo.org> inkscape-0.47.ebuild,
+  +files/inkscape-0.47-gcc45.patch, metadata.xml:
+  Fix building with GCC 4.5 wrt #305749 by Daniel J.. Fix PostScript
+  dependencies wrt #309213 by Willie Wong and Christopher Harvey. Disable
+  strict aliasing wrt #310393 by Doktor Notor.
 
   10 Feb 2010; Samuli Suominen <ssuominen@gentoo.org> inkscape-0.47.ebuild:
   Fix poppler depend.
index 4644da4fdfd0d15f12d37d00589676b6b4321f13..0a69e6b86bf5f31506b86a67362e0fccdbee345a 100644 (file)
@@ -1,5 +1,6 @@
+AUX inkscape-0.47-gcc45.patch 4797 RMD160 c6f254b0b2bc1f7ae0e29a6952b9f13516385fc8 SHA1 68f66a3c152e1b472f9505dbac354f86a9059ee3 SHA256 49834c862d145c88d82ea016b0c6a274cf935c10d80bd2aefe45c4a8336d214f
 AUX inkscape-0.47-poppler.patch 3733 RMD160 6fad5479d59f1742216fe673e80dac2b420f768e SHA1 de0d3ab2b55bc0c63ef725bad90bd78258b76bc5 SHA256 43f0e3202e179599719e1a857ae319e332dad082bd8ab64c686a00979174c000
 DIST inkscape-0.47.tar.gz 28044445 RMD160 58fe20b2a103bd8909e27811354e1a3700dcd177 SHA1 aa39d5f7306edb21be4987651041bf50c13baf75 SHA256 e5899be10183d86249516a29bc146706600ae5eafb5be5274c465a8029659b97
-EBUILD inkscape-0.47.ebuild 2371 RMD160 2a9805f738fc79f999dcf31a4b70ce2f781e75c4 SHA1 7d44a0bc823d382ab85122f33d001e3715a3b34c SHA256 e3bb76795abd3867972eaa80f7536c14bdb17cfa6a9fbb243aa2f657ee41fa18
-MISC ChangeLog 18955 RMD160 5851471fb6d22be4b359435f8a31c28060fa3299 SHA1 10801047f82f09fb8ef35786e4c71244b4071db9 SHA256 6447f03296593373bccd8994a57ba89bda7dedfee4d2ac12bb005cff18a5882e
-MISC metadata.xml 458 RMD160 90cb8f8058926fe666fc2dbec1af647248210f6c SHA1 9af2ef1f67bb9be6e9eecb2dc2f70badeb6277b1 SHA256 52763c744f2f6615fd6f900c3843356432ead07777ebdb548836b1e4fbed20ca
+EBUILD inkscape-0.47.ebuild 2482 RMD160 4551798d9e3c140e5cbe888ca60c4fd5cf0fed6b SHA1 c6e7bf6d659acc437d749b315cfb30215d5b0a2e SHA256 27556523e3127ac733a6ce4d69c722af7b1081141056e079f186a50884713718
+MISC ChangeLog 19272 RMD160 7fecd532d0f4e655d790dd38f04a2af93f3e6bea SHA1 696df40256ec039ddf7faaf2eb0021dda60dda48 SHA256 c7b8150655e964ef8f3bd296d848508eb527ec605fbbd36f6ecdacbc92976fa2
+MISC metadata.xml 438 RMD160 255e104540381e2eda4bee5e06d13a3e5f9cd978 SHA1 8364d93a2a793fea4d5ace199ac7c25c67e896ab SHA256 d033e82cb1e2d7055baf12ffa4c1a21cfc79d3d45373c122ebf39d4c856437f3
diff --git a/media-gfx/inkscape/files/inkscape-0.47-gcc45.patch b/media-gfx/inkscape/files/inkscape-0.47-gcc45.patch
new file mode 100644 (file)
index 0000000..643b7ff
--- /dev/null
@@ -0,0 +1,83 @@
+http://bugs.gentoo.org/show_bug.cgi?id=305749
+
+diff -Naur inkscape-0.47-orig/src/eraser-context.cpp inkscape-0.47/src/eraser-context.cpp
+--- inkscape-0.47-orig/src/eraser-context.cpp  2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/eraser-context.cpp       2010-02-18 08:46:26.000000000 -0500
+@@ -749,7 +749,7 @@
+                 if ( eraserMode ) {
+                     toWorkOn = sp_document_partial_items_in_box(sp_desktop_document(desktop), desktop->dkey, bounds);
+                 } else {
+-                    Inkscape::Rubberband::Rubberband *r = Inkscape::Rubberband::get(desktop);
++                    Inkscape::Rubberband *r = Inkscape::Rubberband::get(desktop);
+                     toWorkOn = sp_document_items_at_points(sp_desktop_document(desktop), desktop->dkey, r->getPoints());
+                 }
+                 toWorkOn = g_slist_remove( toWorkOn, acid );
+diff -Naur inkscape-0.47-orig/src/extension/internal/filter/filter-file.cpp inkscape-0.47/src/extension/internal/filter/filter-file.cpp
+--- inkscape-0.47-orig/src/extension/internal/filter/filter-file.cpp   2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/extension/internal/filter/filter-file.cpp        2010-02-18 09:07:54.000000000 -0500
+@@ -161,7 +161,7 @@
+       mywriter writer;
+       sp_repr_write_stream(node, writer, 0, FALSE, g_quark_from_static_string("svg"), 0, 0);
+ 
+-    Inkscape::Extension::build_from_mem(xml_str, new Filter::Filter(g_strdup(writer.c_str())));
++    Inkscape::Extension::build_from_mem(xml_str, new Filter(g_strdup(writer.c_str())));
+       g_free(xml_str);
+     return;
+ }
+diff -Naur inkscape-0.47-orig/src/extension/internal/filter/filter.cpp inkscape-0.47/src/extension/internal/filter/filter.cpp
+--- inkscape-0.47-orig/src/extension/internal/filter/filter.cpp        2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/extension/internal/filter/filter.cpp     2010-02-18 09:21:06.000000000 -0500
+@@ -217,7 +217,7 @@
+                 "<menu-tip>%s</menu-tip>\n"
+             "</effect>\n"
+         "</inkscape-extension>\n", name, id, submenu, tip);
+-    Inkscape::Extension::build_from_mem(xml_str, new Filter::Filter(filter));
++    Inkscape::Extension::build_from_mem(xml_str, new Filter(filter));
+       g_free(xml_str);
+     return;
+ }
+diff -Naur inkscape-0.47-orig/src/flood-context.cpp inkscape-0.47/src/flood-context.cpp
+--- inkscape-0.47-orig/src/flood-context.cpp   2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/flood-context.cpp        2010-02-18 08:48:16.000000000 -0500
+@@ -900,7 +900,7 @@
+     if (is_point_fill) {
+         fill_points.push_back(Geom::Point(event->button.x, event->button.y));
+     } else {
+-        Inkscape::Rubberband::Rubberband *r = Inkscape::Rubberband::get(desktop);
++        Inkscape::Rubberband *r = Inkscape::Rubberband::get(desktop);
+         fill_points = r->getPoints();
+     }
+ 
+@@ -1206,7 +1206,7 @@
+ 
+     case GDK_BUTTON_RELEASE:
+         if (event->button.button == 1 && !event_context->space_panning) {
+-            Inkscape::Rubberband::Rubberband *r = Inkscape::Rubberband::get(desktop);
++            Inkscape::Rubberband *r = Inkscape::Rubberband::get(desktop);
+             if (r->is_started()) {
+                 // set "busy" cursor
+                 desktop->setWaitingCursor();
+diff -Naur inkscape-0.47-orig/src/gradient-context.cpp inkscape-0.47/src/gradient-context.cpp
+--- inkscape-0.47-orig/src/gradient-context.cpp        2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/gradient-context.cpp     2010-02-18 08:47:33.000000000 -0500
+@@ -641,7 +641,7 @@
+                 if (!event_context->within_tolerance) {
+                     // we've been dragging, either do nothing (grdrag handles that),
+                     // or rubberband-select if we have rubberband
+-                    Inkscape::Rubberband::Rubberband *r = Inkscape::Rubberband::get(desktop);
++                    Inkscape::Rubberband *r = Inkscape::Rubberband::get(desktop);
+                     if (r->is_started() && !event_context->within_tolerance) {
+                         // this was a rubberband drag
+                         if (r->getMode() == RUBBERBAND_MODE_RECT) {
+diff -Naur inkscape-0.47-orig/src/select-context.cpp inkscape-0.47/src/select-context.cpp
+--- inkscape-0.47-orig/src/select-context.cpp  2010-02-18 08:45:58.000000000 -0500
++++ inkscape-0.47/src/select-context.cpp       2010-02-18 08:50:11.000000000 -0500
+@@ -602,7 +602,7 @@
+                     }
+                     sc->item = NULL;
+                 } else {
+-                    Inkscape::Rubberband::Rubberband *r = Inkscape::Rubberband::get(desktop);
++                    Inkscape::Rubberband *r = Inkscape::Rubberband::get(desktop);
+                     if (r->is_started() && !within_tolerance) {
+                         // this was a rubberband drag
+                         GSList *items = NULL;
index 2e3c9d99b1d411e768557577e61aeb2663e0b881..a3f97ea5ff19f4a44e645b9825302e9977d932c7 100644 (file)
@@ -1,9 +1,9 @@
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/inkscape-0.47.ebuild,v 1.11 2010/02/10 12:12:43 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/inkscape/inkscape-0.47.ebuild,v 1.12 2010/04/16 10:44:23 ssuominen Exp $
 
 EAPI=2
-inherit eutils gnome2
+inherit eutils flag-o-matic gnome2
 
 MY_P="${P/_/}"
 S="${WORKDIR}/${MY_P}"
@@ -12,10 +12,11 @@ SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
 DESCRIPTION="A SVG based generic vector-drawing program"
 HOMEPAGE="http://www.inkscape.org/"
 
-SLOT="0"
 LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
 KEYWORDS="amd64 hppa ppc ppc64 sparc x86"
-IUSE="dia gnome inkjar lcms mmx nls postscript spell wmf"
+IUSE="dia gnome gs inkjar lcms mmx nls spell wmf"
+
 RESTRICT="test"
 
 COMMON_DEPEND="
@@ -54,7 +55,7 @@ RDEPEND="
        ${COMMON_DEPEND}
        dev-python/numpy
        dia? ( app-office/dia )
-       postscript? ( >=media-gfx/pstoedit-3.44[plotutils] media-gfx/skencil )
+       gs? ( app-text/ghostscript-gpl )
        wmf? ( media-libs/libwmf )"
 
 DEPEND="${COMMON_DEPEND}
@@ -77,11 +78,17 @@ pkg_setup() {
 }
 
 src_prepare() {
-       epatch "${FILESDIR}"/${P}-poppler.patch
-
+       epatch "${FILESDIR}"/${P}-poppler.patch \
+               "${FILESDIR}"/${P}-gcc45.patch
        gnome2_src_prepare
 }
 
+src_configure() {
+       # aliasing unsafe wrt #310393
+       append-flags -fno-strict-aliasing
+       gnome2_src_configure
+}
+
 pkg_postinst() {
        elog "local configurations (also includes extensions) are moved from"
        elog "\${HOME}/.inkscape to \${HOME}/.config/inkscape within"
index 7b667a5c882ff89892d50fb6a9c548d307067c8d..4d0502de5eb6dea577bc8c89267e0c731be0e67d 100644 (file)
@@ -9,8 +9,8 @@
                <flag name='inkjar'>
                        enables support for OpenOffice.org SVG jar files
                </flag>
-               <flag name='postscript'>
-                       pull in dependencies needed for the postscript import extension
+               <flag name='gs'>
+                       enables support for the PostScript import extension
                </flag>
        </use>
 </pkgmetadata>