evolution does not build with latest libxml2

Sergio de Almeida Lenzi lenzi.sergio at gmail.com
Wed May 14 21:49:40 UTC 2014


Em Qua, 2014-05-14 às 13:56 -0700, Don Lewis escreveu:

> On 14 May, Sergio de Almeida Lenzi wrote:
> > FreeBSD 10  and 9.2 does not build
> > evolution with latest libxml2
> > 
> > ====================================
> > e-cal-backend-caldav.c:1533:28: error: incomplete definition of type
> > 'struct _xmlBuf'
> >                                   (gchar *) buf->buffer->content,
> >                                             ~~~~~~~~~~~^
> > /usr/local/include/libxml2/libxml/tree.h:104:16: note: forward
> > declaration of 'struct _xmlBuf'
> > typedef struct _xmlBuf xmlBuf;
> >                ^
> > e-cal-backend-caldav.c:1583:28: error: incomplete definition of type
> > 'struct _xmlBuf'
> >                                   (gchar *) buf->buffer->content,
> >                                             ~~~~~~~~~~~^
> > /usr/local/include/libxml2/libxml/tree.h:104:16: note: forward
> > declaration of 'struct _xmlBuf'
> > typedef struct _xmlBuf xmlBuf;
> > ======================================
> 
> I ran into the same problem and came up with this patch that at least
> allows the port to build.  I'm unable to actually test it, so it might
> destroy all of your files or do something else that's evil.
> 
> --- plugins/caldav/caldav-browse-server.c.orig	2010-09-21 00:26:29.000000000 -0700
> +++ plugins/caldav/caldav-browse-server.c	2014-05-14 12:55:29.000000000 -0700
> @@ -979,7 +979,7 @@
>  
>  	soup_message_headers_append (message->request_headers, "User-Agent", "Evolution/" VERSION);
>  	soup_message_headers_append (message->request_headers, "Depth", depth_1 ? "1" : "0");
> -	soup_message_set_request (message, "application/xml", SOUP_MEMORY_COPY, (const gchar *) buf->buffer->content, buf->buffer->use);
> +	soup_message_set_request (message, "application/xml", SOUP_MEMORY_COPY, (const gchar *) xmlBufContent(buf->buffer), xmlBufUse(buf->buffer));
>  
>  	/* Clean up the memory */
>  	xmlOutputBufferClose (buf);
> 

It worked, also to patch databases/evolution-data-server too

Thanks




More information about the freebsd-ports mailing list