diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-02-24 23:22:11 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-02-24 23:22:11 +0000 |
commit | 3ee42d41487edb4785c26c68cac624a7a57971b0 (patch) | |
tree | c1194f22dbd0fd02756b05661940d7570e4057ad | |
parent | Updates from Richard Yao for bug 405203. (diff) | |
download | gentoo-2-3ee42d41487edb4785c26c68cac624a7a57971b0.tar.gz gentoo-2-3ee42d41487edb4785c26c68cac624a7a57971b0.tar.bz2 gentoo-2-3ee42d41487edb4785c26c68cac624a7a57971b0.zip |
Fix quoting problems with libical-0.48 (i.e. the 'existing event has different ETag' error), bug #405647 (thanks to Ole Craig for reporting).
(Portage version: 2.2.0_alpha88/cvs/Linux x86_64)
3 files changed, 188 insertions, 1 deletions
diff --git a/gnome-extra/evolution-data-server/ChangeLog b/gnome-extra/evolution-data-server/ChangeLog index 4f3e9885ef03..f97ed67d95d7 100644 --- a/gnome-extra/evolution-data-server/ChangeLog +++ b/gnome-extra/evolution-data-server/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for gnome-extra/evolution-data-server # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.325 2012/02/12 17:25:02 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.326 2012/02/24 23:22:11 tetromino Exp $ + +*evolution-data-server-3.2.3-r1 (24 Feb 2012) + + 24 Feb 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + +evolution-data-server-3.2.3-r1.ebuild, + +files/evolution-data-server-3.2.3-caldav-cannot-modify.patch: + Fix quoting problems with libical-0.48 (i.e. the 'existing event has + different ETag' error), bug #405647 (thanks to Ole Craig for reporting). *evolution-data-server-2.32.3-r2 (12 Feb 2012) diff --git a/gnome-extra/evolution-data-server/evolution-data-server-3.2.3-r1.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.2.3-r1.ebuild new file mode 100644 index 000000000000..4c5cfb8bd8db --- /dev/null +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.2.3-r1.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2012 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-3.2.3-r1.ebuild,v 1.1 2012/02/24 23:22:11 tetromino Exp $ + +EAPI="4" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" + +inherit autotools db-use eutils flag-o-matic gnome2 versionator virtualx + +DESCRIPTION="Evolution groupware backend" +HOMEPAGE="http://www.gnome.org/projects/evolution/" + +LICENSE="LGPL-2 BSD DB" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-solaris" +IUSE="doc +gnome-online-accounts +introspection ipv6 ldap kerberos vala +weather" + +# GNOME3: How do we slot libedataserverui-3.0.so? +# Also, libedata-cal-1.2.so and libecal-1.2.so use gtk-3, but aren't slotted +RDEPEND=">=dev-libs/glib-2.28:2 + >=x11-libs/gtk+-3.0:3 + >=gnome-base/gconf-2 + >=dev-db/sqlite-3.5 + >=dev-libs/libgdata-0.9.1 + >=gnome-base/gnome-keyring-2.20.1 + >=dev-libs/libical-0.43 + >=net-libs/libsoup-2.31.2:2.4 + >=dev-libs/libxml2-2 + >=dev-libs/nspr-4.4 + >=dev-libs/nss-3.9 + >=sys-libs/db-4 + sys-libs/zlib + virtual/libiconv + gnome-online-accounts? ( + >=net-libs/gnome-online-accounts-3.1.1 + >=net-libs/liboauth-0.9.4 ) + introspection? ( >=dev-libs/gobject-introspection-0.9.12 ) + kerberos? ( virtual/krb5 ) + ldap? ( >=net-nds/openldap-2 ) + weather? ( >=dev-libs/libgweather-2.90.0:2 ) +" +DEPEND="${RDEPEND} + dev-lang/perl + 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 + >=sys-devel/gettext-0.17 + doc? ( >=dev-util/gtk-doc-1.9 ) + vala? ( >=dev-lang/vala-0.13.0:0.14[vapigen] )" +# eautoreconf needs: +# >=gnome-base/gnome-common-2 +# >=dev-util/gtk-doc-am-1.9 + +REQUIRED_USE="vala? ( introspection )" + +# FIXME +RESTRICT="test" + +pkg_setup() { + DOCS="ChangeLog MAINTAINERS NEWS TODO" + # Uh, what to do about dbus-call-timeout ? + # Fails to build with --disable-ssl; bug #392679, https://bugzilla.gnome.org/show_bug.cgi?id=642984 + G2CONF="${G2CONF} + VALAC=$(type -P valac-0.14) + VAPIGEN=$(type -P vapigen-0.14) + $(use_enable gnome-online-accounts goa) + $(use_enable introspection) + $(use_enable ipv6) + $(use_with kerberos krb5 ${EPREFIX}/usr) + $(use_with ldap openldap) + $(use_enable vala vala-bindings) + $(use_enable weather) + --enable-calendar + --enable-largefile + --enable-nntp + --enable-ssl + --enable-smime + --with-libdb=${EPREFIX}/usr" +} + +src_prepare() { + # fix linking with glib-2.31, bug #395777 + epatch "${FILESDIR}/${PN}-3.2.2-gmodule-explicit.patch" + epatch "${FILESDIR}/${PN}-3.2.2-g_thread_init.patch" + # fix caldav quoting problems with libical-0.48, bug #405647 + epatch "${FILESDIR}/${P}-caldav-cannot-modify.patch" + + eautoreconf + + gnome2_src_prepare + + # GNOME bug 611353 (skips failing test atm) + # XXX: uncomment when there's a proper fix + #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" + + # /usr/include/db.h is always db-1 on FreeBSD + # so include the right dir in CPPFLAGS + append-cppflags "-I$(db_includedir)" +} + +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_postinst() { + gnome2_pkg_postinst + + 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/evolution-data-server-3.2.3-caldav-cannot-modify.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.3-caldav-cannot-modify.patch new file mode 100644 index 000000000000..47a7ed8b1e0e --- /dev/null +++ b/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.3-caldav-cannot-modify.patch @@ -0,0 +1,35 @@ +commit 830fa86226aa2c4fd0687aef605c93920888e3c4 +Author: Milan Crha <mcrha@redhat.com> +Date: Mon Jan 30 19:25:41 2012 +0100 + + Bug #669003 - CalDAV: Cannot modify calendar object (libical 0.48) + +diff --git a/calendar/backends/caldav/e-cal-backend-caldav.c b/calendar/backends/caldav/e-cal-backend-caldav.c +index 694e64a..50cece5 100644 +--- a/calendar/backends/caldav/e-cal-backend-caldav.c ++++ b/calendar/backends/caldav/e-cal-backend-caldav.c +@@ -422,6 +422,24 @@ ecalcomp_get_etag (ECalComponent *comp) + + str = icomp_x_prop_get (icomp, X_E_CALDAV "ETAG"); + ++ /* libical 0.48 escapes quotes, thus unescape them */ ++ if (str && strchr (str, '\\')) { ++ gint ii, jj; ++ ++ for (ii = 0, jj = 0; str[ii]; ii++) { ++ if (str[ii] == '\\') { ++ ii++; ++ if (!str[ii]) ++ break; ++ } ++ ++ str[jj] = str[ii]; ++ jj++; ++ } ++ ++ str[jj] = 0; ++ } ++ + return str; + } + |