summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Tilley <lv@gentoo.org>2004-05-12 00:58:09 +0000
committerTravis Tilley <lv@gentoo.org>2004-05-12 00:58:09 +0000
commit08b1f96a3f90161486542ce1a8afebbb10c686aa (patch)
treee4f86b187a92c023607929c5a19d826d29ee823b /media-gfx
parentstable for sparc. (Manifest recommit) (diff)
downloadgentoo-2-08b1f96a3f90161486542ce1a8afebbb10c686aa.tar.gz
gentoo-2-08b1f96a3f90161486542ce1a8afebbb10c686aa.tar.bz2
gentoo-2-08b1f96a3f90161486542ce1a8afebbb10c686aa.zip
added fix for 64bit systems
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/sodipodi/ChangeLog6
-rw-r--r--media-gfx/sodipodi/files/sodipodi-0.34.64bit.diff279
-rw-r--r--media-gfx/sodipodi/sodipodi-0.34.ebuild11
3 files changed, 293 insertions, 3 deletions
diff --git a/media-gfx/sodipodi/ChangeLog b/media-gfx/sodipodi/ChangeLog
index 9fb1f19b7457..d758254a21f3 100644
--- a/media-gfx/sodipodi/ChangeLog
+++ b/media-gfx/sodipodi/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for media-gfx/sodipodi
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/sodipodi/ChangeLog,v 1.21 2004/05/10 23:21:51 lv Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sodipodi/ChangeLog,v 1.22 2004/05/12 00:58:09 lv Exp $
+
+ 11 May 2004; Travis Tilley <lv@gentoo.org> +files/sodipodi-0.34.64bit.diff,
+ sodipodi-0.34.ebuild:
+ added fix for 64bit systems
10 May 2004; Travis Tilley <lv@gentoo.org> sodipodi-0.28.ebuild,
sodipodi-0.32.ebuild, sodipodi-0.33.ebuild, sodipodi-0.34.ebuild:
diff --git a/media-gfx/sodipodi/files/sodipodi-0.34.64bit.diff b/media-gfx/sodipodi/files/sodipodi-0.34.64bit.diff
new file mode 100644
index 000000000000..c725aa20156d
--- /dev/null
+++ b/media-gfx/sodipodi/files/sodipodi-0.34.64bit.diff
@@ -0,0 +1,279 @@
+diff -ur /src/interface.c src/interface.c
+--- src/interface.c 2004-02-06 21:48:39.000000000 +0100
++++ src/interface.c 2004-03-17 19:42:59.242466879 +0100
+@@ -222,18 +222,19 @@
+ sp_ui_menu_key_press (GtkMenuItem *item, GdkEventKey *event, void *data)
+ {
+ if (event->state & (GDK_SHIFT_MASK | GDK_CONTROL_MASK | GDK_MOD1_MASK)) {
+- unsigned int shortcut, verb;
++ unsigned int shortcut;
++ unsigned long verb;
+ shortcut = event->keyval;
+ if (event->state & GDK_SHIFT_MASK) shortcut |= SP_SHORTCUT_SHIFT_MASK;
+ if (event->state & GDK_CONTROL_MASK) shortcut |= SP_SHORTCUT_CONTROL_MASK;
+ if (event->state & GDK_MOD1_MASK) shortcut |= SP_SHORTCUT_ALT_MASK;
+- verb = (unsigned int) data;
++ verb = (unsigned long) data;
+ sp_shortcut_set_verb (shortcut, verb, TRUE);
+ }
+ }
+
+ static GtkWidget *
+-sp_ui_menu_append_item_from_verb (GtkMenu *menu, unsigned int verb, unsigned int repeatable)
++sp_ui_menu_append_item_from_verb (GtkMenu *menu, unsigned long verb, unsigned int repeatable)
+ {
+ SPAction *action;
+ GtkWidget *item, *icon;
+diff -ur src/libarikkei/arikkei-dict.c src/libarikkei/arikkei-dict.c
+--- src/libarikkei/arikkei-dict.c 2003-11-17 23:16:48.000000000 +0100
++++ src/libarikkei/arikkei-dict.c 2004-03-17 19:42:59.239467287 +0100
+@@ -27,7 +27,7 @@
+ void *val;
+ };
+
+-static unsigned int
++static unsigned long
+ arikkei_string_hash (const void *data)
+ {
+ const unsigned char *p;
+@@ -40,18 +40,18 @@
+ return hval;
+ }
+
+-static unsigned int
++static unsigned long
+ arikkei_string_equal (const void *l, const void *r)
+ {
+ return !strcmp (l, r);
+ }
+
+-static unsigned int
++static unsigned long
+ arikkei_pointer_hash (const void *data)
+ {
+- unsigned int hval, p;
++ unsigned long hval, p;
+ hval = 0;
+- p = (unsigned int) data;
++ p = (unsigned long) data;
+ while (p) {
+ hval ^= p;
+ p /= 17;
+@@ -59,18 +59,18 @@
+ return hval;
+ }
+
+-static unsigned int
++static unsigned long
+ arikkei_pointer_equal (const void *l, const void *r)
+ {
+ return l == r;
+ }
+
+-static unsigned int
++static unsigned long
+ arikkei_int_hash (const void *data)
+ {
+- unsigned int hval, p;
++ unsigned long hval, p;
+ hval = 0;
+- p = (unsigned int) data;
++ p = (unsigned long) data;
+ while (p) {
+ hval ^= p;
+ p /= 17;
+@@ -78,10 +78,10 @@
+ return hval;
+ }
+
+-static unsigned int
++static unsigned long
+ arikkei_int_equal (const void *l, const void *r)
+ {
+- return (unsigned int) l == (unsigned int) r;
++ return (unsigned long) l == (unsigned long) r;
+ }
+
+ void
+diff -ur src/libarikkei/arikkei-dict.h src/libarikkei/arikkei-dict.h
+--- src/libarikkei/arikkei-dict.h 2003-10-14 20:31:30.000000000 +0200
++++ src/libarikkei/arikkei-dict.h 2004-03-17 19:42:59.240467151 +0100
+@@ -21,8 +21,8 @@
+ unsigned int hashsize;
+ ArikkeiDictEntry *entries;
+ int free;
+- unsigned int (* hash) (const void *data);
+- unsigned int (* equal) (const void *l, const void *r);
++ unsigned long (* hash) (const void *data);
++ unsigned long (* equal) (const void *l, const void *r);
+ };
+
+ void arikkei_dict_setup_string (ArikkeiDict *dict, unsigned int hashsize);
+diff -ur src/selection-chemistry.c src/selection-chemistry.c
+--- src/selection-chemistry.c 2004-01-20 16:19:29.000000000 +0100
++++ src/selection-chemistry.c 2004-03-17 19:42:59.242466879 +0100
+@@ -64,7 +64,7 @@
+ dt = SP_ACTIVE_DESKTOP;
+ if (!dt) return;
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_SELECTION_TO_FRONT:
+ sp_selection_raise_to_top (dt);
+ break;
+diff -ur src/shortcuts.c src/shortcuts.c
+--- src/shortcuts.c 2004-02-06 21:42:04.000000000 +0100
++++ src/shortcuts.c 2004-03-17 19:42:59.241467015 +0100
+@@ -109,11 +109,11 @@
+ static GHashTable *scdict = NULL;
+
+ void
+-sp_shortcut_set_verb (unsigned int shortcut, unsigned int verb, unsigned int primary)
++sp_shortcut_set_verb (unsigned long shortcut, unsigned long verb, unsigned int primary)
+ {
+- unsigned int ex;
++ unsigned long ex;
+ if (!scdict) scdict = g_hash_table_new (NULL, NULL);
+- ex = (unsigned int) g_hash_table_lookup (scdict, (void *) shortcut);
++ ex = (unsigned long) g_hash_table_lookup (scdict, (void *) shortcut);
+ if (ex != verb) g_hash_table_insert (scdict, (void *) shortcut, (void *) verb);
+ if (primary) {
+ SPAction *action;
+@@ -125,11 +125,11 @@
+ }
+
+ void
+-sp_shortcut_remove_verb (unsigned int shortcut)
++sp_shortcut_remove_verb (unsigned long shortcut)
+ {
+- unsigned int ex;
++ unsigned long ex;
+ if (!scdict) return;
+- ex = (unsigned int) g_hash_table_lookup (scdict, (void *) shortcut);
++ ex = (unsigned long) g_hash_table_lookup (scdict, (void *) shortcut);
+ if (ex) {
+ SPAction *action;
+ g_hash_table_insert (scdict, (void *) shortcut, (void *) 0);
+@@ -140,10 +140,10 @@
+ }
+ }
+
+-unsigned int
+-sp_shortcut_get_verb (unsigned int shortcut)
++unsigned long
++sp_shortcut_get_verb (unsigned long shortcut)
+ {
+ if (!scdict) return 0;
+- return (unsigned int) g_hash_table_lookup (scdict, (void *) shortcut);;
++ return (unsigned long) g_hash_table_lookup (scdict, (void *) shortcut);;
+ }
+
+diff -ur src/shortcuts.h src/shortcuts.h
+--- src/shortcuts.h 2003-05-12 01:09:59.000000000 +0200
++++ src/shortcuts.h 2004-03-17 19:42:59.241467015 +0100
+@@ -24,8 +24,8 @@
+
+ void sp_shortcut_table_load (const unsigned char *name);
+
+-void sp_shortcut_set_verb (unsigned int shortcut, unsigned int verb, unsigned int primary);
+-void sp_shortcut_remove_verb (unsigned int shortcut);
+-unsigned int sp_shortcut_get_verb (unsigned int shortcut);
++void sp_shortcut_set_verb (unsigned long shortcut, unsigned long verb, unsigned int primary);
++void sp_shortcut_remove_verb (unsigned long shortcut);
++unsigned long sp_shortcut_get_verb (unsigned long shortcut);
+
+ #endif
+diff -ur src/verbs.c src/verbs.c
+--- src/verbs.c 2004-02-06 21:41:13.000000000 +0100
++++ src/verbs.c 2004-03-17 19:42:59.240467151 +0100
+@@ -67,7 +67,7 @@
+ sp_verb_action_set_shortcut (SPAction *action, unsigned int shortcut, void *data)
+ {
+ unsigned int verb, ex;
+- verb = (unsigned int) data;
++ verb = (unsigned long) data;
+ ex = sp_shortcut_get_verb (shortcut);
+ if (verb != ex) sp_shortcut_set_verb (shortcut, verb, FALSE);
+ }
+@@ -76,7 +76,7 @@
+ sp_verb_action_file_perform (SPAction *action, void *config, void *data)
+ {
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_FILE_NEW:
+ sp_file_new ();
+ break;
+@@ -125,7 +125,7 @@
+ dt = SP_ACTIVE_DESKTOP;
+ if (!dt) return;
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_EDIT_UNDO:
+ sp_document_undo (SP_DT_DOCUMENT (dt));
+ break;
+@@ -177,7 +177,7 @@
+ center.x = 0.5 * (bbox.x0 + bbox.x1);
+ center.y = 0.5 * (bbox.y0 + bbox.y1);
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_OBJECT_ROTATE_90:
+ sp_selection_rotate_90 ();
+ break;
+@@ -209,13 +209,13 @@
+
+ dt = SP_ACTIVE_DESKTOP;
+ if (!dt) return;
+- verb = (unsigned int) data;
++ verb = (unsigned long) data;
+
+ for (vidx = SP_VERB_CONTEXT_SELECT; vidx <= SP_VERB_CONTEXT_DROPPER; vidx++) {
+ sp_action_set_active (&verb_actions[vidx], vidx == verb);
+ }
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_CONTEXT_SELECT:
+ sp_desktop_set_event_context (dt, SP_TYPE_SELECT_CONTEXT, "tools.select");
+ /* fixme: This is really ugly hack. We should bind and unbind class methods */
+@@ -291,7 +291,7 @@
+ dt = SP_ACTIVE_DESKTOP;
+ if (!dt) return;
+
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_ZOOM_IN:
+ sp_desktop_get_display_area (dt, &d);
+ sp_desktop_zoom_relative (dt, (d.x0 + d.x1) / 2, (d.y0 + d.y1) / 2, SP_DESKTOP_ZOOM_INC);
+@@ -329,7 +329,7 @@
+ static void
+ sp_verb_action_dialog_perform (SPAction *action, void *config, void *data)
+ {
+- switch ((int) data) {
++ switch ((long) data) {
+ case SP_VERB_DIALOG_DISPLAY:
+ sp_display_dialog ();
+ break;
+@@ -487,7 +487,7 @@
+ static void
+ sp_verbs_init (void)
+ {
+- int v;
++ long v;
+ verb_actions = nr_new (SPAction, SP_VERB_LAST);
+ for (v = 0; v < SP_VERB_LAST; v++) {
+ assert (props[v].code == v);
+--- src/libnr/nr-svp.c.ORG 2004-01-29 00:03:14.000000000 +0100
++++ src/libnr/nr-svp.c 2004-03-19 11:40:32.507553077 +0100
+@@ -70,6 +70,9 @@
+ svl = sl;
+ }
+
++ if (!nsegs)
++ return NULL;
++
+ svp = malloc (sizeof (NRSVP) + (nsegs - 1) * sizeof (NRSVPSegment));
+ svp->length = nsegs;
+ if (nsegs > 0) {
diff --git a/media-gfx/sodipodi/sodipodi-0.34.ebuild b/media-gfx/sodipodi/sodipodi-0.34.ebuild
index 2c12e9d0f3c4..88dbbeefa9e4 100644
--- a/media-gfx/sodipodi/sodipodi-0.34.ebuild
+++ b/media-gfx/sodipodi/sodipodi-0.34.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/sodipodi/sodipodi-0.34.ebuild,v 1.2 2004/05/10 23:21:51 lv Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sodipodi/sodipodi-0.34.ebuild,v 1.3 2004/05/12 00:58:09 lv Exp $
-inherit gnome2
+inherit gnome2 64-bit
DESCRIPTION="vector-based drawing program for GNOME"
HOMEPAGE="http://sodipodi.sourceforge.net/"
@@ -35,3 +35,10 @@ G2CONF="${G2CONF} --with-xft --with-popt"
G2CONF="${G2CONF} --without-mlview --without-kde"
DOCS="AUTHORS ChangeLog HACKING NEWS README TODO"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ 64-bit && epatch ${FILESDIR}/sodipodi-0.34.64bit.diff
+}
+