summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMart Raudsepp <leio@gentoo.org>2007-02-05 10:38:58 +0000
committerMart Raudsepp <leio@gentoo.org>2007-02-05 10:38:58 +0000
commit54bdf28e842d83b7076d81f4cfc8404a759f88a4 (patch)
tree695f94083eedb024e8cca95dceecaba9aa409ffa
parentRemove gamin from here. Version 0.1.8 in portage should contain all the perf ... (diff)
downloadgnome-perf-54bdf28e842d83b7076d81f4cfc8404a759f88a4.tar.gz
gnome-perf-54bdf28e842d83b7076d81f4cfc8404a759f88a4.tar.bz2
gnome-perf-54bdf28e842d83b7076d81f4cfc8404a759f88a4.zip
Add nautilus-2.16.3 with a patch that makes g_sequence_insert_sorted perform several times better
-rw-r--r--gnome-base/nautilus/ChangeLog8
-rw-r--r--gnome-base/nautilus/Manifest20
-rw-r--r--gnome-base/nautilus/files/digest-nautilus-2.16.33
-rw-r--r--gnome-base/nautilus/files/nautilus-2.16.0-idl_include.patch12
-rw-r--r--gnome-base/nautilus/files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch191
-rw-r--r--gnome-base/nautilus/nautilus-2.16.3.ebuild80
6 files changed, 314 insertions, 0 deletions
diff --git a/gnome-base/nautilus/ChangeLog b/gnome-base/nautilus/ChangeLog
new file mode 100644
index 0000000..4f80819
--- /dev/null
+++ b/gnome-base/nautilus/ChangeLog
@@ -0,0 +1,8 @@
+# ChangeLog for gnome-base/nautilus
+# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+ 05 Feb 2007; Mart Raudsepp <leio@gentoo.org> ChangeLog:
+ Pull in revision 12624 to make g_sequence_insert_sorted perform several
+ times better, Gnome bug 350579
+
diff --git a/gnome-base/nautilus/Manifest b/gnome-base/nautilus/Manifest
new file mode 100644
index 0000000..e06c1af
--- /dev/null
+++ b/gnome-base/nautilus/Manifest
@@ -0,0 +1,20 @@
+AUX nautilus-2.16.0-idl_include.patch 575 RMD160 8ee41c84f597683e2d34eea5acdb43f5592d3262 SHA1 738a2e9bb13aab07ed256e37af3ddc10fa2dfe0e SHA256 07cd75e4cf1c34c5fcd3f4d2257ae1d9c578cb2c2f014e69280e511de28862f0
+MD5 c496549444ef2727f6c0555b590ef4fe files/nautilus-2.16.0-idl_include.patch 575
+RMD160 8ee41c84f597683e2d34eea5acdb43f5592d3262 files/nautilus-2.16.0-idl_include.patch 575
+SHA256 07cd75e4cf1c34c5fcd3f4d2257ae1d9c578cb2c2f014e69280e511de28862f0 files/nautilus-2.16.0-idl_include.patch 575
+AUX nautilus-2.16.3-g_sequence_insert_sorted-perf.patch 6024 RMD160 2098d43fa9cbeb0d81a8f0108440fe82c93a4df7 SHA1 0151b4ecab2ef7e89738ea5f196e8143c47cc2d0 SHA256 26d6a457c87fa97a52e9347e252b92cd382380f11b5c826fddca5841fdfddcad
+MD5 d281d15e4a2d11f29e4c8aff8989286f files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch 6024
+RMD160 2098d43fa9cbeb0d81a8f0108440fe82c93a4df7 files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch 6024
+SHA256 26d6a457c87fa97a52e9347e252b92cd382380f11b5c826fddca5841fdfddcad files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch 6024
+DIST nautilus-2.16.3.tar.bz2 4268274 RMD160 a7723054cacb954f48376e68de66dd144b36d3c5 SHA1 329e11d4c5e77346350b69f34cf2eb749807b12e SHA256 af2ff5ad922e28cc831b4ac3d83f0f35eedcf7a3230d3df76aa9f91c3ffbc36c
+EBUILD nautilus-2.16.3.ebuild 2375 RMD160 70d6322d37059691b3010961e69978f68e8aa08b SHA1 c7326e48cd5556f681562b7bc5499e0647a7bc4c SHA256 3b268322201ca4cdd840beabd4180ff058dd0872ad5e46fddbf20f926703eea1
+MD5 8364df7f3d444d3aec0c0db13bc142bb nautilus-2.16.3.ebuild 2375
+RMD160 70d6322d37059691b3010961e69978f68e8aa08b nautilus-2.16.3.ebuild 2375
+SHA256 3b268322201ca4cdd840beabd4180ff058dd0872ad5e46fddbf20f926703eea1 nautilus-2.16.3.ebuild 2375
+MISC ChangeLog 286 RMD160 1ce23540a17584053aefe1316870b912196ddad7 SHA1 6dfecfb4ff6713554d636c560c9e07e9bb761a0e SHA256 0145ddec0565f856ec414011591131261fc030afa69e02cf16c7a39cd21a1a1a
+MD5 83f9e7211e5d1ec930c1895d1db46d04 ChangeLog 286
+RMD160 1ce23540a17584053aefe1316870b912196ddad7 ChangeLog 286
+SHA256 0145ddec0565f856ec414011591131261fc030afa69e02cf16c7a39cd21a1a1a ChangeLog 286
+MD5 a7b9bb53870e1c7064d989e245404811 files/digest-nautilus-2.16.3 253
+RMD160 cf7a09b61dae1e1c0e96b53004ab80b14d4dff56 files/digest-nautilus-2.16.3 253
+SHA256 ca8f76281e887de02c557f18a1ebd97066875a6331e0b460d959bb301f6def6c files/digest-nautilus-2.16.3 253
diff --git a/gnome-base/nautilus/files/digest-nautilus-2.16.3 b/gnome-base/nautilus/files/digest-nautilus-2.16.3
new file mode 100644
index 0000000..0d2dc91
--- /dev/null
+++ b/gnome-base/nautilus/files/digest-nautilus-2.16.3
@@ -0,0 +1,3 @@
+MD5 05a0fe98d524ca5287da21845ab8490c nautilus-2.16.3.tar.bz2 4268274
+RMD160 a7723054cacb954f48376e68de66dd144b36d3c5 nautilus-2.16.3.tar.bz2 4268274
+SHA256 af2ff5ad922e28cc831b4ac3d83f0f35eedcf7a3230d3df76aa9f91c3ffbc36c nautilus-2.16.3.tar.bz2 4268274
diff --git a/gnome-base/nautilus/files/nautilus-2.16.0-idl_include.patch b/gnome-base/nautilus/files/nautilus-2.16.0-idl_include.patch
new file mode 100644
index 0000000..27d7507
--- /dev/null
+++ b/gnome-base/nautilus/files/nautilus-2.16.0-idl_include.patch
@@ -0,0 +1,12 @@
+diff --exclude-from=/home/dang/.diffrc -u -ruN nautilus-2.16.0.orig/src/nautilus-shell-interface.idl nautilus-2.16.0/src/nautilus-shell-interface.idl
+--- nautilus-2.16.0.orig/src/nautilus-shell-interface.idl 2006-07-21 13:18:59.000000000 -0400
++++ nautilus-2.16.0/src/nautilus-shell-interface.idl 2006-09-07 14:08:49.000000000 -0400
+@@ -5,7 +5,7 @@
+
+ #include <Bonobo.idl>
+ /* For URI define */
+-#include <../libnautilus-private/nautilus-metafile-server.idl>
++#include <libnautilus-private/nautilus-metafile-server.idl>
+
+ module Nautilus {
+ typedef sequence<URI> URIList;
diff --git a/gnome-base/nautilus/files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch b/gnome-base/nautilus/files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch
new file mode 100644
index 0000000..9114d9c
--- /dev/null
+++ b/gnome-base/nautilus/files/nautilus-2.16.3-g_sequence_insert_sorted-perf.patch
@@ -0,0 +1,191 @@
+http://svn.gnome.org/viewcvs/nautilus?rev=12624&view=rev
+http://bugzilla.gnome.org/show_bug.cgi?id=350579
+
+Index: cut-n-paste-code/gsequence/gsequence.c
+===================================================================
+--- cut-n-paste-code/gsequence/gsequence.c (revision 12623)
++++ cut-n-paste-code/gsequence/gsequence.c (revision 12624)
+@@ -51,6 +51,7 @@
+ gint pos);
+ static GSequenceNode *node_find_closest (GSequenceNode *haystack,
+ GSequenceNode *needle,
++ GSequenceNode *end,
+ GSequenceIterCompareFunc cmp,
+ gpointer user_data);
+ static gint node_get_length (GSequenceNode *node);
+@@ -64,6 +65,7 @@
+ static void node_unlink (GSequenceNode *node);
+ static void node_insert_sorted (GSequenceNode *node,
+ GSequenceNode *new,
++ GSequenceNode *end,
+ GSequenceIterCompareFunc cmp_func,
+ gpointer cmp_data);
+
+@@ -411,6 +413,7 @@
+ {
+ GCompareDataFunc cmp_func;
+ gpointer cmp_data;
++ GSequenceNode *end_node;
+ } SortInfo;
+
+ /* This function compares two iters using a normal compare
+@@ -424,10 +427,10 @@
+ const SortInfo *info = data;
+ gint retval;
+
+- if (is_end (node1))
++ if (node1 == info->end_node)
+ return 1;
+
+- if (is_end (node2))
++ if (node2 == info->end_node)
+ return -1;
+
+ retval = info->cmp_func (node1->data, node2->data, info->cmp_data);
+@@ -452,7 +455,7 @@
+ GCompareDataFunc cmp_func,
+ gpointer cmp_data)
+ {
+- SortInfo info = { cmp_func, cmp_data };
++ SortInfo info = { cmp_func, cmp_data, seq->end_node };
+
+ check_seq_access (seq);
+
+@@ -480,11 +483,12 @@
+ GCompareDataFunc cmp_func,
+ gpointer cmp_data)
+ {
+- SortInfo info = { cmp_func, cmp_data };
++ SortInfo info = { cmp_func, cmp_data, NULL };
+
+ g_return_val_if_fail (seq != NULL, NULL);
+ g_return_val_if_fail (cmp_func != NULL, NULL);
+
++ info.end_node = seq->end_node;
+ check_seq_access (seq);
+
+ return g_sequence_insert_sorted_iter (seq, data, iter_compare, &info);
+@@ -495,10 +499,11 @@
+ GCompareDataFunc cmp_func,
+ gpointer cmp_data)
+ {
+- SortInfo info = { cmp_func, cmp_data };
++ SortInfo info = { cmp_func, cmp_data, NULL };
+
+ g_return_if_fail (!is_end (iter));
+
++ info.end_node = get_sequence (iter)->end_node;
+ check_iter_access (iter);
+
+ g_sequence_sort_changed_iter (iter, iter_compare, &info);
+@@ -533,7 +538,7 @@
+
+ node_unlink (node);
+
+- node_insert_sorted (seq->end_node, node, cmp_func, cmp_data);
++ node_insert_sorted (seq->end_node, node, seq->end_node, cmp_func, cmp_data);
+ }
+
+ tmp->access_prohibited = FALSE;
+@@ -558,7 +563,7 @@
+ seq->access_prohibited = TRUE;
+
+ node_unlink (iter);
+- node_insert_sorted (seq->end_node, iter, iter_cmp, cmp_data);
++ node_insert_sorted (seq->end_node, iter, seq->end_node, iter_cmp, cmp_data);
+
+ seq->access_prohibited = FALSE;
+ }
+@@ -574,7 +579,7 @@
+ check_seq_access (seq);
+
+ new_node = node_new (data);
+- node_insert_sorted (seq->end_node, new_node, iter_cmp, cmp_data);
++ node_insert_sorted (seq->end_node, new_node, seq->end_node, iter_cmp, cmp_data);
+ return new_node;
+ }
+
+@@ -595,7 +600,7 @@
+
+ dummy = node_new (data);
+
+- node = node_find_closest (seq->end_node, dummy, cmp_func, cmp_data);
++ node = node_find_closest (seq->end_node, dummy, seq->end_node, cmp_func, cmp_data);
+
+ node_free (dummy, NULL);
+
+@@ -624,10 +629,11 @@
+ GCompareDataFunc cmp_func,
+ gpointer cmp_data)
+ {
+- SortInfo info = { cmp_func, cmp_data };
++ SortInfo info = { cmp_func, cmp_data, NULL };
+
+ g_return_val_if_fail (seq != NULL, NULL);
+
++ info.end_node = seq->end_node;
+ check_seq_access (seq);
+
+ return g_sequence_search_iter (seq, data, iter_compare, &info);
+@@ -1109,6 +1115,7 @@
+ static GSequenceNode *
+ node_find_closest (GSequenceNode *haystack,
+ GSequenceNode *needle,
++ GSequenceNode *end,
+ GSequenceIterCompareFunc cmp_func,
+ gpointer cmp_data)
+ {
+@@ -1123,7 +1130,7 @@
+ {
+ best = haystack;
+
+- if (is_end (haystack))
++ if (haystack == end)
+ c = 1;
+ else
+ c = cmp_func (haystack, needle, cmp_data);
+@@ -1285,12 +1292,13 @@
+ static void
+ node_insert_sorted (GSequenceNode *node,
+ GSequenceNode *new,
++ GSequenceNode *end,
+ GSequenceIterCompareFunc cmp_func,
+ gpointer cmp_data)
+ {
+ GSequenceNode *closest;
+
+- closest = node_find_closest (node, new, cmp_func, cmp_data);
++ closest = node_find_closest (node, new, end, cmp_func, cmp_data);
+
+ node_insert_before (closest, new);
+ }
+Index: cut-n-paste-code/gsequence/gsequence.h
+===================================================================
+--- cut-n-paste-code/gsequence/gsequence.h (revision 12623)
++++ cut-n-paste-code/gsequence/gsequence.h (revision 12624)
+@@ -26,6 +26,7 @@
+ typedef struct _GSequenceNode GSequenceIter;
+
+
++
+ typedef gint (* GSequenceIterCompareFunc) (GSequenceIter *a,
+ GSequenceIter *b,
+ gpointer data);
+@@ -65,6 +66,8 @@
+ gpointer data);
+ void g_sequence_move (GSequenceIter * src,
+ GSequenceIter * dest);
++void g_sequence_swap (GSequenceIter * a,
++ GSequenceIter * b);
+ GSequenceIter *g_sequence_insert_sorted (GSequence *seq,
+ gpointer data,
+ GCompareDataFunc cmp_func,
+@@ -110,8 +113,6 @@
+ GSequenceIter *g_sequence_iter_move (GSequenceIter * iter,
+ gint leap);
+ GSequence * g_sequence_iter_get_sequence (GSequenceIter * iter);
+-void g_sequence_swap (GSequenceIter *a,
+- GSequenceIter *b);
+
+
+ /* search */
diff --git a/gnome-base/nautilus/nautilus-2.16.3.ebuild b/gnome-base/nautilus/nautilus-2.16.3.ebuild
new file mode 100644
index 0000000..3ce539c
--- /dev/null
+++ b/gnome-base/nautilus/nautilus-2.16.3.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/nautilus-2.16.3.ebuild,v 1.11 2007/02/05 01:30:29 leio Exp $
+
+inherit virtualx eutils gnome2
+
+DESCRIPTION="A file manager for the GNOME desktop"
+HOMEPAGE="http://www.gnome.org/projects/nautilus/"
+
+LICENSE="GPL-2 LGPL-2 FDL-1.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86"
+IUSE="beagle gnome"
+# cups flac gstreamer mad ogg vorbis
+
+RDEPEND=">=media-libs/libart_lgpl-2.3.10
+ >=gnome-base/libbonobo-2.1
+ >=gnome-base/eel-2.15.92
+ >=media-sound/esound-0.2.27
+ >=dev-libs/glib-2.6
+ >=gnome-base/gnome-desktop-2.9.91
+ >=gnome-base/libgnome-2.14
+ >=gnome-base/libgnomeui-2.6
+ >=gnome-base/gnome-vfs-2.15
+ >=gnome-base/orbit-2.4
+ >=x11-libs/pango-1.1.2
+ >=x11-libs/gtk+-2.10
+ >=gnome-base/librsvg-2.0.1
+ >=dev-libs/libxml2-2.4.7
+ >=x11-libs/startup-notification-0.8
+ >=media-libs/libexif-0.5.12
+ >=gnome-base/gconf-2
+ beagle? ( >=app-misc/beagle-0.0.12 )
+ x11-libs/libICE
+ x11-libs/libSM
+ virtual/eject"
+# !gstreamer? ( vorbis? ( media-sound/vorbis-tools ) )
+# gstreamer? (
+# >=media-libs/gstreamer-0.8
+# >=media-libs/gst-plugins-0.8
+# >=media-plugins/gst-plugins-gnomevfs-0.8
+# mad? ( >=media-plugins/gst-plugins-mad-0.8 )
+# ogg? ( >=media-plugins/gst-plugins-ogg-0.8 )
+# vorbis? ( >=media-plugins/gst-plugins-vorbis-0.8 )
+# flac? ( >=media-plugins/gst-plugins-flac-0.8 ) )"
+
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ >=dev-util/intltool-0.35
+ >=dev-util/pkgconfig-0.9"
+
+PDEPEND="gnome? ( >=x11-themes/gnome-icon-theme-1.1.91 )"
+
+DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO"
+
+
+pkg_setup() {
+ G2CONF="--disable-update-mimedb $(use_enable beagle)"
+}
+
+src_test() {
+ addwrite "/root/.gnome2_private"
+ Xmake check || die "Test phase failed"
+}
+
+src_unpack() {
+ gnome2_src_unpack
+
+ # fix relative include path breaking libIDL (#129366)
+ epatch "${FILESDIR}"/${PN}-2.16.0-idl_include.patch
+
+ # Make g_sequence_insert_sorted several times faster, gnome bug #350579
+ epatch "${FILESDIR}/${P}-g_sequence_insert_sorted-perf.patch"
+}
+
+pkg_postinst() {
+ einfo "nautilus can use mpg123 (media-sound/mpg123 or media-sound/mpg321)"
+ einfo "to preview mp3 files, and ogg123 (media-sound/vorbis-tools) to"
+ einfo "preview ogg files. If you want such previews, emerge those packages"
+}