[cairo] cairo 1.12.4 and 1.12.6 fail to build on OSX 10.6.8

Thomas Klausner wiz at NetBSD.org
Wed Oct 31 06:11:05 PDT 2012


On Sun, Oct 28, 2012 at 10:15:50AM +0000, Chris Wilson wrote:
> Thank you for your report. I've included the necessary checks in
> configure to detect which version of the headers to use:
> 
> commit f18199fcfb3b052c198041fc05156ae3d9e6aee7
> Author: Chris Wilson <chris at chris-wilson.co.uk>
> Date:   Sun Oct 28 10:04:12 2012 +0000
> 
>     xlib/shm: Check for XShm headers
>     
>     Not all version of libXext ship the same set of headers, so play safe
>     and check during configure that we have the headers we depend upon in
>     the code.
>     
>     Reported-by: Sebastian Haas <sehaas at gmail.com>
>     Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> 
> commit 0e2458697848cf8c89c9d57fa9b64f0ea7bd0877
> Author: Chris Wilson <chris at chris-wilson.co.uk>
> Date:   Sun Oct 28 10:08:39 2012 +0000
> 
>     xlib/shm: Use shmstr.h instead of shmproto.h if available
>     
>     Before it was known as shmproto.h, the wire protocol definition was to
>     be found in shmstr.h, so if we don't have the current version of libXext
>     try to use the older includes.
>     
>     Reported-by: Sebastian Haas <sehaas at gmail.com>
>     Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

I've added these patches to pkgsrc to get further in the build
breakage on NetBSD-5[1], but this breaks startup of firefox and others on
NetBSD-6 with:
assertion "!"reached"" failed: file "cairo-xlib-surface-shm.c", line 58,
function "_cairo_xlib_surface_put_shm"

The programs work fine with cairo-1.12.6 + the "Xorg"-recognition fix
but without those patches.
 Thomas



[1] The build on NetBSD-5 later fails with
    CC     cairo-gl-device.lo
  cairo-gl-device.c: In function '_cairo_gl_context_init':
  cairo-gl-device.c:285: error: 'GL_MAX_RENDERBUFFER_SIZE' undeclared (first use in this function)
  cairo-gl-device.c:285: error: (Each undeclared identifier is reported only once
  cairo-gl-device.c:285: error: for each function it appears in.)
  cairo-gl-device.c: In function '_get_depth_stencil_format':
  cairo-gl-device.c:319: error: 'GL_DEPTH_STENCIL' undeclared (first use in this function)
  cairo-gl-device.c: In function '_cairo_gl_ensure_multisampling':
  cairo-gl-device.c:426: error: 'GL_RENDERBUFFER' undeclared (first use in this function)
  cairo-gl-device.c: In function '_cairo_gl_ensure_msaa_depth_stencil_buffer':
  cairo-gl-device.c:463: error: 'GL_RENDERBUFFER' undeclared (first use in this function)
  cairo-gl-device.c:475: error: 'GL_DEPTH_STENCIL_ATTACHMENT' undeclared (first use in this function)
  cairo-gl-device.c: In function '_cairo_gl_ensure_depth_stencil_buffer':
  cairo-gl-device.c:515: error: 'GL_RENDERBUFFER' undeclared (first use in this function)
  cairo-gl-device.c:520: error: 'GL_STENCIL_ATTACHMENT' undeclared (first use in this function)
  cairo-gl-device.c:522: error: 'GL_DEPTH_ATTACHMENT' undeclared (first use in this function)
  cairo-gl-device.c: In function '_cairo_gl_activate_surface_as_multisampling':
  cairo-gl-device.c:612: error: 'GL_DRAW_FRAMEBUFFER' undeclared (first use in this function)
  cairo-gl-device.c:613: error: 'GL_READ_FRAMEBUFFER' undeclared (first use in this function)
  cairo-gl-device.c: In function '_cairo_gl_activate_surface_as_nonmultisampling':
  cairo-gl-device.c:642: error: 'GL_DRAW_FRAMEBUFFER' undeclared (first use in this function)
  cairo-gl-device.c:643: error: 'GL_READ_FRAMEBUFFER' undeclared (first use in this function)
  *** Error code 1
because of the ancient MesaLib.


More information about the cairo mailing list