diff options
8 files changed, 11 insertions, 871 deletions
diff --git a/gnome-extra/evolution-data-server/ChangeLog b/gnome-extra/evolution-data-server/ChangeLog index a5e9b26dfa7c..2d96199f9d81 100644 --- a/gnome-extra/evolution-data-server/ChangeLog +++ b/gnome-extra/evolution-data-server/ChangeLog @@ -1,6 +1,16 @@ # 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.323 2012/01/20 23:26:38 tetromino Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-extra/evolution-data-server/ChangeLog,v 1.324 2012/02/01 02:57:25 leio Exp $ + + 01 Feb 2012; Mart Raudsepp <leio@gentoo.org> + -files/evolution-data-server-2.32.1-libgdata07.patch, + -evolution-data-server-2.32.2.ebuild, + -evolution-data-server-2.32.2-r1.ebuild, + -evolution-data-server-3.2.2-r1.ebuild, + -files/evolution-data-server-3.2.2-libical-timezones.patch, + -files/evolution-data-server-3.2.2-new-folder-imap.patch, + -files/evolution-data-server-3.2.2-retrieval_done-crash.patch: + Remove old *evolution-data-server-3.2.3 (20 Jan 2012) diff --git a/gnome-extra/evolution-data-server/evolution-data-server-2.32.2-r1.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-2.32.2-r1.ebuild deleted file mode 100644 index 7806a29aee94..000000000000 --- a/gnome-extra/evolution-data-server/evolution-data-server-2.32.2-r1.ebuild +++ /dev/null @@ -1,150 +0,0 @@ -# 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.2-r1.ebuild,v 1.9 2011/12/07 07:33:02 tetromino Exp $ - -EAPI="3" -GCONF_DEBUG="no" - -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.bz2" - -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 - <dev-libs/libgweather-2.91: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() { - # 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" - - # Fix build with >=libgdata-0.7 - epatch "${FILESDIR}/${PN}-2.32.1-libgdata07.patch" - - # 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 - gnome2_src_prepare -} - -src_install() { - gnome2_src_install - find "${ED}" -name "*.la" -delete || die "la files removal failed" - - 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/evolution-data-server-2.32.2.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-2.32.2.ebuild deleted file mode 100644 index 5c41aa833b41..000000000000 --- a/gnome-extra/evolution-data-server/evolution-data-server-2.32.2.ebuild +++ /dev/null @@ -1,143 +0,0 @@ -# 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.2.ebuild,v 1.9 2011/12/07 07:33:02 tetromino Exp $ - -EAPI="3" -GCONF_DEBUG="no" - -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="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 ssl +weather" - -RDEPEND=">=dev-libs/glib-2.25.12:2 - >=x11-libs/gtk+-2.20: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 - gnome-keyring? ( >=gnome-base/gnome-keyring-2.20.1 ) - kerberos? ( virtual/krb5 ) - ldap? ( >=net-nds/openldap-2 ) - ssl? ( - >=dev-libs/nspr-4.4 - >=dev-libs/nss-3.9 ) - weather? ( - >=dev-libs/libgweather-2.25.4:2 - <dev-libs/libgweather-2.91: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" - G2CONF="${G2CONF} - $(use_enable gnome-keyring) - $(use_enable ipv6) - $(use_with kerberos krb5 /usr) - $(use_with ldap openldap) - $(use_enable ssl ssl) - $(use_enable ssl smime) - $(use_with weather) - --disable-gtk3 - --enable-largefile - --with-libdb=/usr" -} - -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" - - # Fix build with >=libgdata-0.7 - epatch "${FILESDIR}/${PN}-2.32.1-libgdata07.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 - gnome2_src_prepare -} - -src_install() { - gnome2_src_install - find "${ED}" -name "*.la" -delete || die "la files removal failed" - - 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/evolution-data-server-3.2.2-r1.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.2.2-r1.ebuild deleted file mode 100644 index 82301a8757fe..000000000000 --- a/gnome-extra/evolution-data-server/evolution-data-server-3.2.2-r1.ebuild +++ /dev/null @@ -1,152 +0,0 @@ -# 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.2-r1.ebuild,v 1.2 2012/01/06 06:43:02 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() { - # Useful upstream patches, will be in next release - epatch "${FILESDIR}/${P}-libical-timezones.patch" - epatch "${FILESDIR}/${P}-new-folder-imap.patch" - epatch "${FILESDIR}/${P}-retrieval_done-crash.patch" - - # 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" - - 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)" - - # FIXME: Fix compilation flags crazyness - # Touch configure.ac if doing eautoreconf - sed 's/^\(AM_CPPFLAGS="\)$WARNING_FLAGS/\1/' \ - -i configure || die "sed failed" -} - -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-2.32.1-libgdata07.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-2.32.1-libgdata07.patch deleted file mode 100644 index 7c33d9f8dae5..000000000000 --- a/gnome-extra/evolution-data-server/files/evolution-data-server-2.32.1-libgdata07.patch +++ /dev/null @@ -1,221 +0,0 @@ -From a4d5bf861af058b02e9ebf97136126643da0b738 Mon Sep 17 00:00:00 2001 -From: Milan Crha <mcrha@redhat.com> -Date: Wed, 13 Oct 2010 12:22:21 +0200 -Subject: [PATCH] Bug #630358 - Google contacts doesn't sync birthday and URL - ---- - .../backends/google/e-book-backend-google.c | 20 ++++- - addressbook/backends/google/util.c | 82 ++++++++++++++++++++ - configure.ac | 8 +- - 3 files changed, 105 insertions(+), 5 deletions(-) - -diff --git a/addressbook/backends/google/e-book-backend-google.c b/addressbook/backends/google/e-book-backend-google.c -index 58302e3..2498f67 100644 ---- a/addressbook/backends/google/e-book-backend-google.c -+++ b/addressbook/backends/google/e-book-backend-google.c -@@ -511,7 +511,11 @@ get_new_contacts_in_chunks (EBookBackend *backend, gint chunk_size, GError **err - GTimeVal updated; - - g_assert (g_time_val_from_iso8601 (last_updated, &updated) == TRUE); -+ #ifdef HAVE_GDATA_07 -+ gdata_query_set_updated_min (query, updated.tv_sec); -+ #else - gdata_query_set_updated_min (query, &updated); -+ #endif - gdata_contacts_query_set_show_deleted (GDATA_CONTACTS_QUERY (query), TRUE); - } - -@@ -788,11 +792,18 @@ e_book_backend_google_modify_contact (EBookBackendSync *backend, EDataBook *book - g_free (xml); - - /* Update the contact on the server */ -+ #ifdef HAVE_GDATA_07 -+ new_entry = gdata_service_update_entry ( -+ GDATA_SERVICE (priv->service), -+ entry, -+ NULL, &error); -+ #else - new_entry = GDATA_ENTRY ( - gdata_contacts_service_update_contact ( - GDATA_CONTACTS_SERVICE (priv->service), - GDATA_CONTACTS_CONTACT (entry), - NULL, &error)); -+ #endif - g_object_unref (entry); - - if (!new_entry) { -@@ -1189,6 +1200,11 @@ e_book_backend_google_get_supported_fields (EBookBackendSync *backend, EDataBook - E_CONTACT_ORG_UNIT, - E_CONTACT_TITLE, - E_CONTACT_ROLE, -+ #ifdef HAVE_GDATA_07 -+ E_CONTACT_HOMEPAGE_URL, -+ E_CONTACT_BLOG_URL, -+ E_CONTACT_BIRTH_DATE, -+ #endif - E_CONTACT_NOTE - }; - -@@ -1470,7 +1486,7 @@ data_book_error_from_gdata_error (GError **dest_err, GError *error) - g_propagate_error (dest_err, EDB_ERROR (REPOSITORY_OFFLINE)); - return; - case GDATA_SERVICE_ERROR_PROTOCOL_ERROR: -- g_propagate_error (dest_err, EDB_ERROR (INVALID_QUERY)); -+ g_propagate_error (dest_err, e_data_book_create_error (E_DATA_BOOK_STATUS_INVALID_QUERY, error->message)); - return; - case GDATA_SERVICE_ERROR_ENTRY_ALREADY_INSERTED: - g_propagate_error (dest_err, EDB_ERROR (CONTACTID_ALREADY_EXISTS)); -@@ -1488,7 +1504,7 @@ data_book_error_from_gdata_error (GError **dest_err, GError *error) - g_propagate_error (dest_err, EDB_ERROR (QUERY_REFUSED)); - return; - case GDATA_SERVICE_ERROR_BAD_QUERY_PARAMETER: -- g_propagate_error (dest_err, EDB_ERROR (INVALID_QUERY)); -+ g_propagate_error (dest_err, e_data_book_create_error (E_DATA_BOOK_STATUS_INVALID_QUERY, error->message)); - return; - default: - break; -diff --git a/addressbook/backends/google/util.c b/addressbook/backends/google/util.c -index e3e7166..56c5367 100644 ---- a/addressbook/backends/google/util.c -+++ b/addressbook/backends/google/util.c -@@ -20,6 +20,7 @@ - * Author: Joergen Scheibengruber <joergen.scheibengruber AT googlemail.com> - */ - -+#include <config.h> - #include <string.h> - #include <libsoup/soup.h> - #include <gdata/gdata.h> -@@ -69,6 +70,10 @@ _gdata_entry_update_from_e_contact (GDataEntry *entry, EContact *contact) - gboolean have_postal_primary = FALSE; - gboolean have_org_primary = FALSE; - const gchar *title, *role, *note; -+ #ifdef HAVE_GDATA_07 -+ EContactDate *bdate; -+ const gchar *url; -+ #endif - - attributes = e_vcard_get_attributes (E_VCARD (contact)); - -@@ -214,6 +219,40 @@ _gdata_entry_update_from_e_contact (GDataEntry *entry, EContact *contact) - gdata_gd_organization_set_job_description (org, role); - } - -+ #ifdef HAVE_GDATA_07 -+ gdata_contacts_contact_remove_all_websites (GDATA_CONTACTS_CONTACT (entry)); -+ -+ url = e_contact_get_const (contact, E_CONTACT_HOMEPAGE_URL); -+ if (url && *url) { -+ GDataGContactWebsite *website = gdata_gcontact_website_new (url, GDATA_GCONTACT_WEBSITE_HOME_PAGE, NULL, FALSE); -+ if (website) { -+ gdata_contacts_contact_add_website (GDATA_CONTACTS_CONTACT (entry), website); -+ g_object_unref (website); -+ } -+ } -+ -+ url = e_contact_get_const (contact, E_CONTACT_BLOG_URL); -+ if (url && *url) { -+ GDataGContactWebsite *website = gdata_gcontact_website_new (url, GDATA_GCONTACT_WEBSITE_BLOG, NULL, FALSE); -+ if (website) { -+ gdata_contacts_contact_add_website (GDATA_CONTACTS_CONTACT (entry), website); -+ g_object_unref (website); -+ } -+ } -+ -+ gdata_contacts_contact_set_birthday (GDATA_CONTACTS_CONTACT (entry), NULL, TRUE); -+ bdate = e_contact_get (contact, E_CONTACT_BIRTH_DATE); -+ if (bdate) { -+ GDate *gdate = g_date_new_dmy (bdate->day, bdate->month, bdate->year); -+ -+ if (gdate) { -+ gdata_contacts_contact_set_birthday (GDATA_CONTACTS_CONTACT (entry), gdate, TRUE); -+ g_date_free (gdate); -+ } -+ e_contact_date_free (bdate); -+ } -+ #endif -+ - return TRUE; - } - -@@ -241,6 +280,11 @@ _e_contact_new_from_gdata_entry (GDataEntry *entry) - GDataGDPostalAddress *postal_address; - GDataGDOrganization *org; - GHashTable *extended_props; -+ #ifdef HAVE_GDATA_07 -+ GList *websites; -+ GDate bdate; -+ gboolean bdate_has_year; -+ #endif - - uid = gdata_entry_get_id (entry); - if (NULL == uid) -@@ -352,6 +396,44 @@ _e_contact_new_from_gdata_entry (GDataEntry *entry) - extended_props = gdata_contacts_contact_get_extended_properties (GDATA_CONTACTS_CONTACT (entry)); - g_hash_table_foreach (extended_props, (GHFunc) foreach_extended_props_cb, vcard); - -+ #ifdef HAVE_GDATA_07 -+ websites = gdata_contacts_contact_get_websites (GDATA_CONTACTS_CONTACT (entry)); -+ for (itr = websites; itr != NULL; itr = itr->next) { -+ GDataGContactWebsite *website = itr->data; -+ const gchar *uri, *reltype; -+ -+ if (!website) -+ continue; -+ -+ uri = gdata_gcontact_website_get_uri (website); -+ reltype = gdata_gcontact_website_get_relation_type (website); -+ -+ if (!uri || !*uri || !reltype) -+ continue; -+ -+ if (g_str_equal (reltype, GDATA_GCONTACT_WEBSITE_HOME_PAGE)) -+ e_contact_set (E_CONTACT (vcard), E_CONTACT_HOMEPAGE_URL, uri); -+ else if (g_str_equal (reltype, GDATA_GCONTACT_WEBSITE_BLOG)) -+ e_contact_set (E_CONTACT (vcard), E_CONTACT_BLOG_URL, uri); -+ } -+ -+ g_date_clear (&bdate, 1); -+ bdate_has_year = gdata_contacts_contact_get_birthday (GDATA_CONTACTS_CONTACT (entry), &bdate); -+ /* ignore birthdays without year */ -+ if (g_date_valid (&bdate) && bdate_has_year) { -+ EContactDate *date = e_contact_date_new (); -+ -+ if (date) { -+ date->day = g_date_get_day (&bdate); -+ date->month = g_date_get_month (&bdate); -+ date->year = g_date_get_year (&bdate); -+ -+ e_contact_set (E_CONTACT (vcard), E_CONTACT_BIRTH_DATE, date); -+ e_contact_date_free (date); -+ } -+ } -+ #endif -+ - return E_CONTACT (vcard); - } - -diff --git a/configure.ac b/configure.ac -index 88b6811..b41fbcc 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -325,11 +325,13 @@ PKG_CHECK_MODULES(GNOME_PLATFORM, - libsoup-2.4 >= libsoup_minimum_version - libgdata >= libgdata_minimum_version]) - --dnl libgdata 0.7 will break API. We're not going to deal with --dnl that on a stable branch, so cap the supported version. -+ac_cv_have_gdata_07=no -+dnl libgdata 0.7 breaks API, thus deal with it. - if $PKG_CONFIG --atleast-version=0.7 libgdata; then -- AC_MSG_ERROR([libgdata 0.7 is not supported, use 0.6 instead]) -+ ac_cv_have_gdata_07=yes -+ AC_DEFINE(HAVE_GDATA_07, 1, [libgdata is 0.7 or higher]) - fi -+AC_MSG_RESULT([$ac_cv_have_gdata_07]) - - LIBICAL_REQUIRED=libical_minimum_version - AC_SUBST(LIBICAL_REQUIRED) --- -1.7.3.4 - diff --git a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch deleted file mode 100644 index b7cf9d614c60..000000000000 --- a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch +++ /dev/null @@ -1,67 +0,0 @@ -From af5d404e57f43e58cac037ad3370e31004347c6e Mon Sep 17 00:00:00 2001 -From: Milan Crha <mcrha@redhat.com> -Date: Wed, 23 Nov 2011 09:31:01 +0100 -Subject: [PATCH] Pre-load all built-in timezones in libical on calendar - factory start - -This is the same fix as was done in evolution within bug #628139 ---- - calendar/libedata-cal/e-data-cal-factory.c | 27 +++++++++++++++++++++++++-- - 1 files changed, 25 insertions(+), 2 deletions(-) - -diff --git a/calendar/libedata-cal/e-data-cal-factory.c b/calendar/libedata-cal/e-data-cal-factory.c -index 4413341..df3e136 100644 ---- a/calendar/libedata-cal/e-data-cal-factory.c -+++ b/calendar/libedata-cal/e-data-cal-factory.c -@@ -52,9 +52,7 @@ - - #include "e-gdbus-cal-factory.h" - --#ifdef HAVE_ICAL_UNKNOWN_TOKEN_HANDLING - #include <libical/ical.h> --#endif - - #ifdef G_OS_WIN32 - #include <windows.h> -@@ -1007,6 +1005,8 @@ main (gint argc, - EDataCalFactory *factory; - guint owner_id; - GError *error = NULL; -+ icalarray *builtin_timezones; -+ gint ii; - - #ifdef G_OS_WIN32 - /* Reduce risks */ -@@ -1057,6 +1057,29 @@ main (gint argc, - ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN); - #endif - -+ /* XXX Pre-load all built-in timezones in libical. -+ * -+ * Built-in time zones in libical 0.43 are loaded on demand, -+ * but not in a thread-safe manner, resulting in a race when -+ * multiple threads call icaltimezone_load_builtin_timezone() -+ * on the same time zone. Until built-in time zone loading -+ * in libical is made thread-safe, work around the issue by -+ * loading all built-in time zones now, so libical's internal -+ * time zone array will be fully populated before any threads -+ * are spawned. -+ */ -+ builtin_timezones = icaltimezone_get_builtin_timezones (); -+ for (ii = 0; ii < builtin_timezones->num_elements; ii++) { -+ icaltimezone *zone; -+ -+ zone = icalarray_element_at (builtin_timezones, ii); -+ -+ /* We don't care about the component right now, -+ * we just need some function that will trigger -+ * icaltimezone_load_builtin_timezone(). */ -+ icaltimezone_get_component (zone); -+ } -+ - factory = g_object_new (E_TYPE_DATA_CAL_FACTORY, NULL); - - loop = g_main_loop_new (NULL, FALSE); --- -1.7.8.1 - diff --git a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch deleted file mode 100644 index d6cbc9376673..000000000000 --- a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 0e421dfb0d9fd1e36a28d8bb47c0ae46ca4925f5 Mon Sep 17 00:00:00 2001 -From: Milan Crha <mcrha@redhat.com> -Date: Fri, 16 Dec 2011 09:15:03 +0100 -Subject: [PATCH] Bug #665253 - "New folder" dialog does not show IMAP - accounts - ---- - camel/providers/imap/camel-imap-store.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c -index c46e575..b5ddf93 100644 ---- a/camel/providers/imap/camel-imap-store.c -+++ b/camel/providers/imap/camel-imap-store.c -@@ -1226,7 +1226,7 @@ imap_store_initable_init (GInitable *initable, - CAMEL_STORE (service)->flags &= ~CAMEL_STORE_VJUNK; - CAMEL_STORE (service)->flags |= CAMEL_STORE_REAL_JUNK_FOLDER; - } else { -- CAMEL_STORE (service)->flags &= CAMEL_STORE_REAL_JUNK_FOLDER; -+ CAMEL_STORE (service)->flags &= ~CAMEL_STORE_REAL_JUNK_FOLDER; - CAMEL_STORE (service)->flags |= CAMEL_STORE_VJUNK; - } - --- -1.7.8.1 - diff --git a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch b/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch deleted file mode 100644 index 31cfa772f3e8..000000000000 --- a/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch +++ /dev/null @@ -1,111 +0,0 @@ -From c1b00584c34b3d6b5784c54256398c4197b23078 Mon Sep 17 00:00:00 2001 -From: Milan Crha <mcrha@redhat.com> -Date: Wed, 14 Dec 2011 17:37:23 +0100 -Subject: [PATCH] Bug #662068 - Crash in e-cal-backend-http.c:retrieval_done - ---- - calendar/backends/http/e-cal-backend-http.c | 19 +++++++++++++++++-- - 1 files changed, 17 insertions(+), 2 deletions(-) - -diff --git a/calendar/backends/http/e-cal-backend-http.c b/calendar/backends/http/e-cal-backend-http.c -index d40bdd3..c053e3b 100644 ---- a/calendar/backends/http/e-cal-backend-http.c -+++ b/calendar/backends/http/e-cal-backend-http.c -@@ -368,6 +368,12 @@ retrieval_done (SoupSession *session, - GHashTable *old_cache; - GSList *comps_in_cache; - -+ if (!msg || msg->status_code == SOUP_STATUS_CANCELLED) { -+ /* the backend probably gone in this case, thus just return */ -+ g_object_unref (cbhttp); -+ return; -+ } -+ - priv = cbhttp->priv; - - priv->is_loading = FALSE; -@@ -376,12 +382,14 @@ retrieval_done (SoupSession *session, - if (!priv->uri) { - /* uri changed meanwhile, retrieve again */ - begin_retrieval_cb (cbhttp); -+ g_object_unref (cbhttp); - return; - } - - if (msg->status_code == SOUP_STATUS_NOT_MODIFIED) { - /* attempts with ETag can result in 304 status code */ - priv->opened = TRUE; -+ g_object_unref (cbhttp); - return; - } - -@@ -399,7 +407,7 @@ retrieval_done (SoupSession *session, - uri_parsed = soup_uri_new (priv->uri); - soup_uri_set_path (uri_parsed, newuri); - soup_uri_set_query (uri_parsed, NULL); -- // g_free (newuri); -+ /* g_free (newuri); */ - - newuri = soup_uri_to_string (uri_parsed, FALSE); - g_message ("Translated URI: %s\n", newuri); -@@ -417,6 +425,7 @@ retrieval_done (SoupSession *session, - } - } - -+ g_object_unref (cbhttp); - return; - } - -@@ -426,6 +435,7 @@ retrieval_done (SoupSession *session, - if (msg->status_code == 401 || msg->status_code == 403) { - priv->requires_auth = TRUE; - e_cal_backend_notify_auth_required (E_CAL_BACKEND (cbhttp), TRUE, priv->credentials); -+ g_object_unref (cbhttp); - return; - } else - e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), -@@ -434,6 +444,7 @@ retrieval_done (SoupSession *session, - } - - empty_cache (cbhttp); -+ g_object_unref (cbhttp); - return; - } - -@@ -453,6 +464,7 @@ retrieval_done (SoupSession *session, - if (!priv->opened) - e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), _("Bad file format.")); - empty_cache (cbhttp); -+ g_object_unref (cbhttp); - return; - } - -@@ -461,6 +473,7 @@ retrieval_done (SoupSession *session, - e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), _("Not a calendar.")); - icalcomponent_free (icalcomp); - empty_cache (cbhttp); -+ g_object_unref (cbhttp); - return; - } - -@@ -543,6 +556,8 @@ retrieval_done (SoupSession *session, - - priv->opened = TRUE; - -+ g_object_unref (cbhttp); -+ - d(g_message ("Retrieval really done.\n")); - } - -@@ -648,7 +663,7 @@ begin_retrieval_cb (ECalBackendHttp *cbhttp) - } - - soup_session_queue_message (priv->soup_session, soup_message, -- (SoupSessionCallback) retrieval_done, cbhttp); -+ (SoupSessionCallback) retrieval_done, g_object_ref (cbhttp)); - - d(g_message ("Retrieval started.\n")); - return FALSE; --- -1.7.8.1 - |