summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2013-01-22 19:59:23 +0000
committerPacho Ramos <pacho@gentoo.org>2013-01-22 19:59:23 +0000
commit731c02bc4d513149cb8025f6376cb23f28f79d25 (patch)
tree83cbb4ca85e925f1404239f1cb22acbc573d39c2 /gnome-extra
parentStable for HPPA (bug #452934). (diff)
downloadgentoo-2-731c02bc4d513149cb8025f6376cb23f28f79d25.tar.gz
gentoo-2-731c02bc4d513149cb8025f6376cb23f28f79d25.tar.bz2
gentoo-2-731c02bc4d513149cb8025f6376cb23f28f79d25.zip
Fix incompatibility with libical-0.48 (#453546 by lor)
(Portage version: 2.1.11.47/cvs/Linux x86_64, signed Manifest commit with key A188FBD4)
Diffstat (limited to 'gnome-extra')
-rw-r--r--gnome-extra/evolution-data-server/ChangeLog9
-rw-r--r--gnome-extra/evolution-data-server/evolution-data-server-2.32.3-r3.ebuild167
-rw-r--r--gnome-extra/evolution-data-server/files/evolution-data-server-2.32.3-libical-0.48.patch37
3 files changed, 212 insertions, 1 deletions
diff --git a/gnome-extra/evolution-data-server/ChangeLog b/gnome-extra/evolution-data-server/ChangeLog
index 7fce91f3d003..91c7013a87b4 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-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.351 2013/01/22 03:47:14 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.352 2013/01/22 19:59:23 pacho Exp $
+
+*evolution-data-server-2.32.3-r3 (22 Jan 2013)
+
+ 22 Jan 2013; Pacho Ramos <pacho@gentoo.org>
+ +evolution-data-server-2.32.3-r3.ebuild,
+ +files/evolution-data-server-2.32.3-libical-0.48.patch:
+ Fix incompatibility with libical-0.48 (#453546 by lor)
*evolution-data-server-3.6.3 (22 Jan 2013)
diff --git a/gnome-extra/evolution-data-server/evolution-data-server-2.32.3-r3.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-2.32.3-r3.ebuild
new file mode 100644
index 000000000000..fe254129e297
--- /dev/null
+++ b/gnome-extra/evolution-data-server/evolution-data-server-2.32.3-r3.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2013 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-r3.ebuild,v 1.1 2013/01/22 19:59:23 pacho Exp $
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+WANT_AUTOMAKE="1.11"
+
+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"
+
+# Note: explicitly "|| ( LGPL-2 LGPL-3 )", not "LGPL-2+".
+LICENSE="|| ( LGPL-2 LGPL-3 ) BSD Sleepycat"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-solaris"
+
+IUSE="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/libgnome-keyring )
+ kerberos? ( virtual/krb5 )
+ ldap? ( >=net-nds/openldap-2:= )
+ weather? (
+ >=dev-libs/libgweather-2.25.4:2
+ <dev-libs/libgweather-2.91:2 )
+"
+DEPEND="${RDEPEND}
+ dev-util/gperf
+ virtual/pkgconfig
+ >=dev-util/intltool-0.35.5
+ sys-devel/bison
+ >=gnome-base/gnome-common-2
+ >=dev-util/gtk-doc-am-1.9"
+# eautoreconf needs:
+# >=gnome-base/gnome-common-2
+
+src_prepare() {
+ 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"
+
+ # 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
+ #
+ # 009 and 010 patches are broken, bug #372651
+ rm "${WORKDIR}/${P}-patches"/009*.patch || die
+ rm "${WORKDIR}/${P}-patches"/010*.patch || die
+ epatch "${WORKDIR}/${P}-patches"/*.patch
+
+ # Upstream bug #655167 - Messages moved from IMAP Inbox reappear
+ epatch "${FILESDIR}/${P}-imap-move.patch"
+
+ # Fix building with glib-2.32, bug #412109
+ epatch "${FILESDIR}/${P}-gmodule-explicit.patch"
+ epatch "${FILESDIR}/${P}-g_thread_init.patch"
+
+ # Upstream bug #669003 - CalDAV: Cannot modify calendar object (libical 0.48)
+ epatch "${FILESDIR}/${P}-libical-0.48.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"
+
+ sed -e "/AM_INIT_AUTOMAKE/s/-Werror//" -i configure.ac || die
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+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/evolution-data-server-2.32.3-libical-0.48.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-2.32.3-libical-0.48.patch
new file mode 100644
index 000000000000..dd4e20b06a78
--- /dev/null
+++ b/gnome-extra/evolution-data-server/files/evolution-data-server-2.32.3-libical-0.48.patch
@@ -0,0 +1,37 @@
+From 830fa86226aa2c4fd0687aef605c93920888e3c4 Mon Sep 17 00:00:00 2001
+From: Milan Crha <mcrha@redhat.com>
+Date: Mon, 30 Jan 2012 18:25:41 +0000
+Subject: 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;
+ }
+
+--
+cgit v0.9.0.2