diff options
author | Pacho Ramos <pacho@gentoo.org> | 2011-06-19 21:32:43 +0000 |
---|---|---|
committer | Pacho Ramos <pacho@gentoo.org> | 2011-06-19 21:32:43 +0000 |
commit | b9146a98945247c1c3e29781f5f2ea3bbc2da7ef (patch) | |
tree | 02ecd6391f8376125557b61b02d862f423cd268f /gnome-extra | |
parent | Fix hang from KDE bug 274940; find blas using PkgConfig (diff) | |
download | historical-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')
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); |