summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2011-06-19 21:32:43 +0000
committerPacho Ramos <pacho@gentoo.org>2011-06-19 21:32:43 +0000
commitb9146a98945247c1c3e29781f5f2ea3bbc2da7ef (patch)
tree02ecd6391f8376125557b61b02d862f423cd268f /gnome-extra
parentFix hang from KDE bug 274940; find blas using PkgConfig (diff)
downloadhistorical-b9146a98945247c1c3e29781f5f2ea3bbc2da7ef.tar.gz
historical-b9146a98945247c1c3e29781f5f2ea3bbc2da7ef.tar.bz2
historical-b9146a98945247c1c3e29781f5f2ea3bbc2da7ef.zip
Version bump, also fix bug #349782 (linking problems) with tetromino's solution.
Package-Manager: portage-2.1.9.50/cvs/Linux x86_64
Diffstat (limited to 'gnome-extra')
-rw-r--r--gnome-extra/evolution-data-server/ChangeLog9
-rw-r--r--gnome-extra/evolution-data-server/Manifest12
-rw-r--r--gnome-extra/evolution-data-server/evolution-data-server-2.32.3.ebuild155
-rw-r--r--gnome-extra/evolution-data-server/files/fix_relink_command.pl108
4 files changed, 279 insertions, 5 deletions
diff --git a/gnome-extra/evolution-data-server/ChangeLog b/gnome-extra/evolution-data-server/ChangeLog
index 52096cbe48cc..1c1bd7e2f22b 100644
--- a/gnome-extra/evolution-data-server/ChangeLog
+++ b/gnome-extra/evolution-data-server/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for gnome-extra/evolution-data-server
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.301 2011/04/13 16:38:53 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.302 2011/06/19 21:32:43 pacho Exp $
+
+*evolution-data-server-2.32.3 (19 Jun 2011)
+
+ 19 Jun 2011; Pacho Ramos <pacho@gentoo.org>
+ +evolution-data-server-2.32.3.ebuild, +files/fix_relink_command.pl:
+ Version bump, also fix bug #349782 (linking problems) with tetromino's
+ solution.
13 Apr 2011; Pacho Ramos <pacho@gentoo.org>
evolution-data-server-2.32.2-r1.ebuild:
diff --git a/gnome-extra/evolution-data-server/Manifest b/gnome-extra/evolution-data-server/Manifest
index f4babe41de67..8ad552a8f1d0 100644
--- a/gnome-extra/evolution-data-server/Manifest
+++ b/gnome-extra/evolution-data-server/Manifest
@@ -5,16 +5,20 @@ AUX calentry.schema 3661 RMD160 68dfc3a8bbf08a1cf2713727c6617b2de613cb7c SHA1 06
AUX e-d-s-camel-skip-failing-test.patch 660 RMD160 0907bb916a124d689f1880016eb8013971944016 SHA1 7ef6fd67bddbba16b3c6dd24a9b50ea9f8f5aa86 SHA256 f89f7635e9a5ddc2aa2f713a6d7eb9322f3416f8f9ad1cba1a113f65a1eaacb5
AUX evolution-data-server-2.31-gentoo_etc_services.patch 1350 RMD160 a2fe65e31e3dad58fd5aef1e9bf7cdd02b540f8c SHA1 aef1a5fc05262c1049306c50a5c91ad9111f9b22 SHA256 1dae07ed5cb124c2da6e0d28f4e64555b6fb2bc012ceee3506f0af6e3e41102a
AUX evolution-data-server-2.32.1-libgdata07.patch 7683 RMD160 d025f3a8a819f0d7fae5b679c598e90e04a0e3ba SHA1 7c9c1d3ba78afad5e5da59bf8d22657d8cfabaf2 SHA256 8d76763e249c3a0cfd250cc24f2fb773f74480a0f353a118f9bd87485d7fac5f
+AUX fix_relink_command.pl 4074 RMD160 517048bd503d3c0cd5a37db6fb50d37f67f66ac5 SHA1 efc9936fb8a0a67711c7e9949df87a6bb3fe0344 SHA256 f6da0e687f7e64eab82671def4b7445602d1bf64e9b56c3c188d43fadc7dabc2
DIST evolution-data-server-2.32.2-patches.tar.bz2 7910 RMD160 cadba4cec671aed612e375176de82341da86652a SHA1 f3559c3265901daff7b998a6cd5bbf6c4f4d31ae SHA256 69a2e2a3cd2dcbe48b5db5af4b3958aea4324698cf3158da2f5cc098ec483535
DIST evolution-data-server-2.32.2.tar.bz2 4290879 RMD160 a024d3032d12c3cfe31e2471218c7c6817e2168f SHA1 a8d1820d7b89fabed8dc44ad51eb90fc5a61e9da SHA256 d22fcd9e6f1cee7b4b11a25ae3c3d19e6a454e4f09b983a954ff2d7640bf1c36
+DIST evolution-data-server-2.32.3-patches.tar.xz 24072 RMD160 2508b5b101f59bb383020728a8abb9ee2eb7836d SHA1 76b86f747415c117c660ec70561a786ff772d2b2 SHA256 7b1f29fad87a7e868736380c69880a29ddf5d4bd365734df53042e4bc9e8b0fa
+DIST evolution-data-server-2.32.3.tar.bz2 4322281 RMD160 adc8b07aef41a89d16fc426541c12190a3688b8f SHA1 cbf32c3438c4f1650b35b87007a337ebc1c56cec SHA256 744026a745b711b3e393b61fed21c4926d1b10a3aa7da64f4b33a3e3bf5b085c
EBUILD evolution-data-server-2.32.2-r1.ebuild 4155 RMD160 ca9745f76658accc08ed335e31d8d60b0f0dec1e SHA1 783e3fcb7274f26542030e7c53fa29afef424a5a SHA256 659a53b1e58432fac100aae0b83bbe335e212c5009f4589dac81b2278701189e
EBUILD evolution-data-server-2.32.2.ebuild 3925 RMD160 40696eead31cd6967cee24757284322a03ad54dc SHA1 7982a446e8b556abf0d549a4de9a9faa1966c74b SHA256 1bbf97c42b44a2a47e7bf2d2271694ef1c9f8fe86375da418d73dafd02ec193c
-MISC ChangeLog 58026 RMD160 27b3e356885884444b5df29bdcf36569b7c821bd SHA1 2cedc920a4779fd43f2dad86b49fdcba50d2a79a SHA256 d61aa24cd24c22970defb7c034d4f74541a122a706954c9b0d389f65019e857c
+EBUILD evolution-data-server-2.32.3.ebuild 4502 RMD160 262f6faa999dbc937a81677673dc725db3896476 SHA1 a80d1d5b9340326f156de4c6f1019c5576ab1e4d SHA256 099b631abe1855705568d19b2ec4931427066e5a8ae73ce966eecf5a7cc3e891
+MISC ChangeLog 58273 RMD160 8786fd38fdecacd1953a50cbc7b31bb8e766e158 SHA1 75b58dc1606070f221e1586f8adde95565b928d7 SHA256 2cff3ac0821bb474bf4973db83d15647c7cbd30c1eb95168daa4e06046166964
MISC metadata.xml 242 RMD160 930a0247c2ceed0dfad103c8e18493d54fa77382 SHA1 d332c62f5dff3da42709228dfcd0131d81a7048c SHA256 cea2d969f6f71bb465d787a64966e9bafd3706b2d2f8fe3b81cb85c409b74104
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iEYEARECAAYFAk2l0aQACgkQCaWpQKGI+9RL4ACePkxcnxSc8pzeNwI6G/hWwyUP
-H64AniXXuMKnQYtLf8kd8k15fdYVLCy/
-=oZlc
+iEYEARECAAYFAk3+awEACgkQCaWpQKGI+9SM8gCfXzBMWk33Mv9bkY1SsZsVSxSQ
+8BUAn20s5pTucjYgsan/ul8CfxPxm6cV
+=2khP
-----END PGP SIGNATURE-----
diff --git a/gnome-extra/evolution-data-server/evolution-data-server-2.32.3.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-2.32.3.ebuild
new file mode 100644
index 000000000000..739e9dcc39f8
--- /dev/null
+++ b/gnome-extra/evolution-data-server/evolution-data-server-2.32.3.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/evolution-data-server-2.32.3.ebuild,v 1.1 2011/06/19 21:32:43 pacho Exp $
+
+EAPI="4"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit autotools db-use eutils flag-o-matic gnome2 versionator virtualx
+
+DESCRIPTION="Evolution groupware backend"
+HOMEPAGE="http://projects.gnome.org/evolution/"
+
+SRC_URI="${SRC_URI} http://dev.gentoo.org/~pacho/gnome/${P}-patches.tar.xz"
+
+LICENSE="LGPL-2 BSD DB"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-solaris"
+
+IUSE="doc ipv6 kerberos gnome-keyring ldap +weather"
+
+RDEPEND=">=dev-libs/glib-2.25.12:2
+ >=x11-libs/gtk+-2.24:2
+ >=gnome-base/gconf-2
+ >=dev-db/sqlite-3.5
+ >=dev-libs/libgdata-0.6.3
+ >=dev-libs/libical-0.43
+ >=net-libs/libsoup-2.4:2.4
+ >=dev-libs/libxml2-2
+ >=sys-libs/db-4
+ sys-libs/zlib
+ virtual/libiconv
+ >=dev-libs/nspr-4.4
+ >=dev-libs/nss-3.9
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.20.1 )
+ kerberos? ( virtual/krb5 )
+ ldap? ( >=net-nds/openldap-2 )
+ weather? ( >=dev-libs/libgweather-2.25.4:2 )
+"
+DEPEND="${RDEPEND}
+ dev-util/gperf
+ >=dev-util/pkgconfig-0.9
+ >=dev-util/intltool-0.35.5
+ sys-devel/bison
+ >=gnome-base/gnome-common-2
+ >=dev-util/gtk-doc-am-1.9
+ doc? ( >=dev-util/gtk-doc-1.9 )"
+# eautoreconf needs:
+# >=gnome-base/gnome-common-2
+# >=dev-util/gtk-doc-am-1.9
+
+pkg_setup() {
+ DOCS="ChangeLog MAINTAINERS NEWS TODO"
+
+ # ssl stuff always enabled as recommended in upstream bug #642984
+ G2CONF="${G2CONF}
+ $(use_enable gnome-keyring)
+ $(use_enable ipv6)
+ $(use_with kerberos krb5 /usr)
+ $(use_with ldap openldap)
+ $(use_with weather)
+ --disable-gtk3
+ --enable-largefile
+ --with-libdb=/usr
+ --enable-ssl
+ --enable-smime"
+
+}
+
+src_prepare() {
+ gnome2_src_prepare
+
+ # Adjust to gentoo's /etc/service
+ epatch "${FILESDIR}/${PN}-2.31-gentoo_etc_services.patch"
+
+ # GNOME bug 611353 (skips failing test atm)
+ epatch "${FILESDIR}/e-d-s-camel-skip-failing-test.patch"
+
+ # GNOME bug 621763 (skip failing test-ebook-stress-factory--fifo)
+ sed -e 's/\(SUBDIRS =.*\)ebook/\1/' \
+ -i addressbook/tests/Makefile.{am,in} \
+ || die "failing test sed 1 failed"
+
+ # Apply multiple backports and fixed from master and 2.32 branches
+ epatch "${WORKDIR}/${P}-patches"/*.patch
+
+ # /usr/include/db.h is always db-1 on FreeBSD
+ # so include the right dir in CPPFLAGS
+ append-cppflags "-I$(db_includedir)"
+
+ # FIXME: Fix compilation flags crazyness
+ sed 's/^\(AM_CPPFLAGS="\)$WARNING_FLAGS/\1/' \
+ -i configure.ac configure || die "sed 3 failed"
+
+ intltoolize --force --copy --automake || die "intltoolize failed"
+ eautoreconf
+}
+
+src_install() {
+ # Prevent this evolution-data-server from linking to libs in the installed
+ # evolution-data-server libraries by adding -L arguments for build dirs to
+ # every .la file's relink_command field, forcing libtool to look there
+ # first during relinking. This will mangle the .la files installed by
+ # make install, but we don't care because we will be punting them anyway.
+ perl "${FILESDIR}/fix_relink_command.pl" . \
+ || die "fix_relink_command.pl failed"
+
+ gnome2_src_install
+
+ if use ldap; then
+ MY_MAJORV=$(get_version_component_range 1-2)
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/calentry.schema || die "doins failed"
+ dosym /usr/share/${PN}-${MY_MAJORV}/evolutionperson.schema /etc/openldap/schema/evolutionperson.schema
+ fi
+}
+
+src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS
+ unset ORBIT_SOCKETDIR
+ unset SESSION_MANAGER
+ export XDG_DATA_HOME="${T}"
+ unset DISPLAY
+ Xemake check || die "Tests failed."
+}
+
+pkg_preinst() {
+ gnome2_pkg_preinst
+
+ for lib in libcamel-provider-1.2.so.14 libedata-cal-1.2.so.7 \
+ libgdata-1.2.so libgdata-google-1.2.so libcamel-1.2.so.14 \
+ libedata-book-1.2.so.2 libebook-1.2.so.9 \
+ libedataserver-1.2.so.13 libecal-1.2.so.7 libedataserverui-1.2.so.8
+ do
+ preserve_old_lib /usr/$(get_libdir)/$lib
+ done
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ for lib in libcamel-provider-1.2.so.14 libedata-cal-1.2.so.7 \
+ libgdata-1.2.so libgdata-google-1.2.so libcamel-1.2.so.14 \
+ libedata-book-1.2.so.2 libebook-1.2.so.9 \
+ libedataserver-1.2.so.13 libecal-1.2.so.7 libedataserverui-1.2.so.8
+ do
+ preserve_old_lib_notify /usr/$(get_libdir)/$lib
+ done
+
+ if use ldap; then
+ elog ""
+ elog "LDAP schemas needed by evolution are installed in /etc/openldap/schema"
+ fi
+}
diff --git a/gnome-extra/evolution-data-server/files/fix_relink_command.pl b/gnome-extra/evolution-data-server/files/fix_relink_command.pl
new file mode 100644
index 000000000000..12106c3856d6
--- /dev/null
+++ b/gnome-extra/evolution-data-server/files/fix_relink_command.pl
@@ -0,0 +1,108 @@
+#!/usr/bin/perl
+# Fix the relink_command field of .la files in the specified directory tree
+# to add "-L$dir/.libs" for every .la file that is specified in a relative
+# $dir; place these new -L directives before the first relative .la file.
+#
+# E.g. :
+# relink_command="(cd /tmp/foo/libfoo; /bin/sh /tmp/foo/libtool --silent --tag CC --mode=relink gcc -O2 foo.lo bar/libbar.la ../baz/libbaz.la /usr/lib/libfrob.la -lm)"
+# will become
+# relink_command="(cd /tmp/foo/libfoo; /bin/sh /tmp/foo/libtool --silent --tag CC --mode=relink gcc -O2 foo.lo -Lbar/.libs -L../baz/.libs bar/libbar.la ../baz/libbaz.la /usr/lib/libfrob.la -lm)"
+#
+# Such a procedure should ensure that during relinking, libraries in the
+# local build tree will be looked at before libraries installed systemwide.
+#
+# Limitations: it is assumed that relink_command is one line. It is assumed
+# that any spaces in paths are escaped using '\'.
+#
+# Copyright (c) 2011 Alexandre Rostovtsev <tetromino@gmail.com>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+use strict;
+use warnings;
+
+use Cwd qw(realpath);
+use File::Basename;
+use File::Find;
+
+my %processed = ();
+sub process_la_file {
+ my $filename = $_; # relative to cwd
+ my $pretty_filename = $File::Find::name; # relative to initial cwd
+ if (-d $filename) { return; }
+
+ # don't process a single .la file multiple times (e.g. if symlinked)
+ my $realpath = realpath($filename);
+ if ($processed{$realpath}) {
+ print "$pretty_filename ($realpath) was already processed\n";
+ return;
+ } else {
+ $processed{$realpath}++;
+ }
+
+ # preserve the .la file's mtime in order to avoid triggering make rules
+ my $mtime = (stat $filename)[9];
+ open(my $fh, '<', $filename) or die $!;
+ my $text;
+ my $changes; # whether the file has been changed
+ while (<$fh>) {
+ if (/relink_command=/) {
+ my ($start, $added, $end);
+ my $ignore = 0; # number of words to not check for similariy to
+ # an .la filename, following and including the
+ # current word
+ # split by unescaped spaces
+ for my $word (split /(?<!\\) /) {
+ if ($word =~ /^-/) {
+ # ignore command-line options; ignore filename after -o
+ $ignore++;
+ $ignore++ if $word eq '-o' ;
+ }
+ if ($word =~ m:^[^/].*\.la\W*$: and not $ignore) {
+ $added .= "-L" . dirname($word) . "/.libs ";
+ $end .= "$word ";
+ $changes++;
+ } else {
+ if ($end) {
+ $end .= "$word ";
+ } else {
+ $start .= "$word ";
+ }
+ }
+ $ignore-- if $ignore > 0;
+ }
+ $_ = "$start$added$end";
+ print "Added '$added' to relink_command in $pretty_filename\n" if $changes;
+ }
+ $text .= $_;
+ }
+ close $fh;
+ if ($changes) {
+ open($fh, '>', $filename) or die $!;
+ print $fh $text;
+ close $fh;
+ # Perl's utime does not support sub-second time :/
+ # And Time::HiRes doesn't help. As a workaround, round up the number of
+ # seconds in order to avoid triggering make rules.
+ utime $mtime + 1, $mtime + 1, $filename;
+ }
+}
+
+if (not @ARGV or $ARGV[0] eq '-h' or $ARGV[0] eq '--help') {
+ warn <<endhelp;
+Usage: fix_relink_command.pl [LAFILENAMES or DIRECTORIES]
+
+Adds extra -L\$dir/.libs arguments to the relink_command field of .la files
+in order to ensure that during relinking, libraries in the local build tree
+will be looked at before ones installed systemwide.
+
+If a filename is given, will process that .la file. If a directory is given,
+will recursively process all .la files in it (but will not recurse into
+symlinked or hidden directories).
+endhelp
+ exit;
+}
+
+find({ wanted => \&process_la_file,
+ preprocess => sub {grep { if (-d $_) { /^[^.]/ } else { /\.la$/ } } sort @_}
+ }, @ARGV);