Patchwork [meta-oe,meta-gnome] evolution-data-server: fix build with libxml2-2.9.0

login
register
mail settings
Submitter Martin Jansa
Date Nov. 27, 2012, 7:54 a.m.
Message ID <1354002880-9815-1-git-send-email-Martin.Jansa@gmail.com>
Download mbox | patch
Permalink /patch/39641/
State Accepted
Commit b670b48220004890055e0a869794e67e51cfce71
Headers show

Comments

Martin Jansa - Nov. 27, 2012, 7:54 a.m.
* newer eds versions depend on external libgdata
  http://git.gnome.org/browse/evolution-data-server/commit/servers?h=gnome-2-32&id=28897beab5dcd4aab3586322a96280be92585db6
  but for this one, we need this patch

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 ...-soup-adapt-to-new-libxml2-API-from-2.9.0.patch | 100 +++++++++++++++++++++
 .../recipes-gnome/eds/evolution-data-server_git.bb |   3 +-
 2 files changed, 102 insertions(+), 1 deletion(-)
 create mode 100644 meta-gnome/recipes-gnome/eds/evolution-data-server/0001-soup-adapt-to-new-libxml2-API-from-2.9.0.patch

Patch

diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-soup-adapt-to-new-libxml2-API-from-2.9.0.patch b/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-soup-adapt-to-new-libxml2-API-from-2.9.0.patch
new file mode 100644
index 0000000..7905801
--- /dev/null
+++ b/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-soup-adapt-to-new-libxml2-API-from-2.9.0.patch
@@ -0,0 +1,100 @@ 
+From 5083b22669f0d2102b72956a2b8afd9432303ce5 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Tue, 27 Nov 2012 08:46:51 +0100
+Subject: [PATCH] soup: adapt to new libxml2 API from 2.9.0
+
+* for more info see
+  https://mail.gnome.org/archives/xml/2012-August/msg00005.html
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ calendar/backends/caldav/e-cal-backend-caldav.c | 21 +++++++++++++++++++++
+ servers/google/libgdata/gdata-entry.c           |  8 ++++++++
+ 2 files changed, 29 insertions(+)
+
+diff --git a/calendar/backends/caldav/e-cal-backend-caldav.c b/calendar/backends/caldav/e-cal-backend-caldav.c
+index 5e7ecc4..b7f4afb 100644
+--- a/calendar/backends/caldav/e-cal-backend-caldav.c
++++ b/calendar/backends/caldav/e-cal-backend-caldav.c
+@@ -1038,8 +1038,13 @@ check_calendar_changed_on_server (ECalBackendCalDAV *cbdav)
+ 	soup_message_set_request (message,
+ 				  "application/xml",
+ 				  SOUP_MEMORY_COPY,
++#ifdef LIBXML2_NEW_BUFFER
++				  (gchar *) xmlOutputBufferGetContent(buf),
++				  xmlOutputBufferGetSize(buf));
++#else
+ 				  (gchar *) buf->buffer->content,
+ 				  buf->buffer->use);
++#endif
+ 
+ 	/* Send the request now */
+ 	send_and_handle_redirection (priv->session, message, NULL);
+@@ -1180,8 +1185,13 @@ caldav_server_list_objects (ECalBackendCalDAV *cbdav, CalDAVObject **objs, gint
+ 	soup_message_set_request (message,
+ 				  "application/xml",
+ 				  SOUP_MEMORY_COPY,
++#ifdef LIBXML2_NEW_BUFFER
++				  (gchar *) xmlOutputBufferGetContent(buf),
++				  xmlOutputBufferGetSize(buf));
++#else
+ 				  (gchar *) buf->buffer->content,
+ 				  buf->buffer->use);
++#endif
+ 
+ 	/* Send the request now */
+ 	send_and_handle_redirection (priv->session, message, NULL);
+@@ -1502,8 +1512,14 @@ caldav_receive_schedule_outbox_url (ECalBackendCalDAV *cbdav)
+ 	soup_message_set_request (message,
+ 				  "application/xml",
+ 				  SOUP_MEMORY_COPY,
++#ifdef LIBXML2_NEW_BUFFER
++				  (gchar *) xmlOutputBufferGetContent(buf),
++				  xmlOutputBufferGetSize(buf));
++#else
+ 				  (gchar *) buf->buffer->content,
+ 				  buf->buffer->use);
++#endif
++
+ 
+ 	/* Send the request now */
+ 	send_and_handle_redirection (priv->session, message, NULL);
+@@ -1552,8 +1568,13 @@ caldav_receive_schedule_outbox_url (ECalBackendCalDAV *cbdav)
+ 		soup_message_set_request (message,
+ 				  "application/xml",
+ 				  SOUP_MEMORY_COPY,
++#ifdef LIBXML2_NEW_BUFFER
++				  (gchar *) xmlOutputBufferGetContent(buf),
++				  xmlOutputBufferGetSize(buf));
++#else
+ 				  (gchar *) buf->buffer->content,
+ 				  buf->buffer->use);
++#endif
+ 
+ 		/* Send the request now */
+ 		send_and_handle_redirection (priv->session, message, NULL);
+diff --git a/servers/google/libgdata/gdata-entry.c b/servers/google/libgdata/gdata-entry.c
+index ab69eb0..3f05b17 100644
+--- a/servers/google/libgdata/gdata-entry.c
++++ b/servers/google/libgdata/gdata-entry.c
+@@ -877,9 +877,17 @@ gdata_entry_new_from_xmlptr (xmlDocPtr doc, xmlNodePtr cur)
+ 		xmlOutputBufferFlush (buf);
+ 
+ 		if (buf->conv == NULL)
++#ifdef LIBXML2_NEW_BUFFER
++			xmlString = g_strdup ((gchar *) xmlOutputBufferGetContent(buf));
++#else
+ 			xmlString = g_strdup ((gchar *)buf->buffer->content);
++#endif
+ 		else
++#ifdef LIBXML2_NEW_BUFFER
++			xmlString = g_strdup ((gchar *) xmlBufContent(buf));
++#else
+ 			xmlString = g_strdup ((gchar *)buf->conv->content);
++#endif
+ 		xmlOutputBufferClose (buf);
+ 	}
+ 
+-- 
+1.8.0
+
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server_git.bb b/meta-gnome/recipes-gnome/eds/evolution-data-server_git.bb
index 9064251..958a90c 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server_git.bb
+++ b/meta-gnome/recipes-gnome/eds/evolution-data-server_git.bb
@@ -13,7 +13,7 @@  DEPENDS = "intltool-native glib-2.0 gtk+ gconf dbus db gnome-common virtual/libi
 SRCREV = "3ca578d968d09785933ebbb45b66b3bccdbd5832"
 
 PV = "2.30+git${SRCPV}"
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "git://git.gnome.org/evolution-data-server;protocol=git \
            file://oh-contact.patch;striplevel=0 \
@@ -24,6 +24,7 @@  SRC_URI = "git://git.gnome.org/evolution-data-server;protocol=git \
            file://depbuildfix.patch \
            file://fix_for_automake-1.12.x.patch \
            file://avoid_automake_errors.patch \
+           file://0001-soup-adapt-to-new-libxml2-API-from-2.9.0.patch \
            file://iconv-detect.h"
 
 S = "${WORKDIR}/git"