Index: head/graphics/cairo/Makefile =================================================================== --- head/graphics/cairo/Makefile (revision 401101) +++ head/graphics/cairo/Makefile (revision 401102) @@ -1,81 +1,92 @@ # Created by: Michael Johnson # $FreeBSD$ PORTNAME= cairo PORTVERSION= 1.14.2 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= graphics MASTER_SITES= http://cairographics.org/releases/ MAINTAINER= gnome@FreeBSD.org COMMENT= Vector graphics library with cross-device output support +LICENSE= LGPL21 MPL +LICENSE_COMB= multi + USES= tar:xz .if !defined(REFERENCE_PORT) LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2 \ libpng.so:${PORTSDIR}/graphics/png \ libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig PORTSCOUT= skipv:5c-1.1,5c-1.2,5c-1.5 GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-html-dir=${DOCSDIR} \ --disable-directfb \ --enable-tee USES+= cpe libtool pathfix pkgconfig CPE_VENDOR= cairographics USE_XORG= pixman USE_GNOME= referencehack USE_LDCONFIG= yes INSTALL_TARGET= install-strip CONFIGURE_ARGS= --with-html-dir=${DOCSDIR} \ --disable-directfb \ --disable-gallium \ --disable-glesv2 \ --disable-wgl \ --enable-tee OPTIONS_DEFINE= OPENGL XCB GLIB X11 OPTIONS_DEFAULT=OPENGL XCB GLIB X11 XCB_DESC= Enable XCB (X C-language Binding) Support GLIB_DESC= Enable GObject Functions Feature OPTIONS_SUB= yes X11_USE= xorg=xrender,xext X11_CONFIGURE_ENABLE=xlib OPENGL_USE= gl=gl,egl xorg=glproto:both,dri2proto:both OPENGL_CONFIGURE_ENABLE=gl egl GLIB_USE= gnome=glib20 GLIB_CONFIGURE_ENABLE= gobject XCB_BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/xcb-renderutil.pc:${PORTSDIR}/x11/xcb-util-renderutil XCB_RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/xcb-renderutil.pc:${PORTSDIR}/x11/xcb-util-renderutil XCB_CONFIGURE_ENABLE= xcb # this has another option --enable-xlib-xcb=auto but it is buggy. PLIST_SUB+= LIBVER=2.11400.2 .include +.if ${ARCH} == "mips" +BUILD_DEPENDS+= ${LOCALBASE}/include/atomic_ops.h:${PORTSDIR}/devel/libatomic_ops +CPPFLAGS+= -I${LOCALBASE}/include +LDFLAGS+= -L${LOCALBASE}/lib +CONFIGURE_ENV= cairo_cv_atomic_primitives="libatomic-ops" +.endif + .if ${PORT_OPTIONS:MOPENGL} && !${PORT_OPTIONS:MX11} BROKEN= OpenGL option needs X11 support .endif post-patch: @${REINPLACE_CMD} -e '/strings/s/ - / -a /' \ -e '/test/s/==/=/g' \ -e '/LIBS/s/-lrt//' -e '/LIBS/s|-ldld||' \ -e '/LIBS/s|-ldl||' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|-lcairo|-lcairo -lpthread|' \ ${WRKSRC}/src/*.pc.in @${REINPLACE_CMD} -e '/@CAIRO_HAS_PNG_FUNCTIONS_TRUE@.*=/d' \ ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e 's|-ldl||g' \ ${WRKSRC}/util/*/Makefile.in \ ${WRKSRC}/boilerplate/Makefile.in -.include - .endif + +.include Index: head/graphics/cairo/files/patch-src_cairo-gl.h =================================================================== --- head/graphics/cairo/files/patch-src_cairo-gl.h (revision 401101) +++ head/graphics/cairo/files/patch-src_cairo-gl.h (revision 401102) @@ -1,29 +1,29 @@ ---- src/cairo-gl.h.orig 2013-03-15 21:29:27.000000000 +0100 -+++ src/cairo-gl.h 2015-01-05 10:30:46.611768380 +0100 -@@ -92,7 +92,7 @@ +--- src/cairo-gl.h.orig 2015-03-10 22:21:07 UTC ++++ src/cairo-gl.h +@@ -92,7 +92,7 @@ cairo_public void cairo_gl_device_set_thread_aware (cairo_device_t *device, cairo_bool_t thread_aware); -#if CAIRO_HAS_GLX_FUNCTIONS +#if defined(CAIRO_HAS_GLX_FUNCTIONS) #include cairo_public cairo_device_t * -@@ -110,7 +110,7 @@ +@@ -110,7 +110,7 @@ cairo_gl_surface_create_for_window (cair int width, int height); #endif -#if CAIRO_HAS_WGL_FUNCTIONS +#if defined(CAIRO_HAS_WGL_FUNCTIONS) #include cairo_public cairo_device_t * -@@ -126,7 +126,7 @@ +@@ -126,7 +126,7 @@ cairo_gl_surface_create_for_dc (cairo_de int height); #endif -#if CAIRO_HAS_EGL_FUNCTIONS +#if defined(CAIRO_HAS_EGL_FUNCTIONS) #include cairo_public cairo_device_t * Index: head/graphics/cairo/files/patch-src_cairo-xlib-display.c =================================================================== --- head/graphics/cairo/files/patch-src_cairo-xlib-display.c (revision 401101) +++ head/graphics/cairo/files/patch-src_cairo-xlib-display.c (revision 401102) @@ -1,14 +1,14 @@ ---- src/cairo-xlib-display.c.orig 2010-11-21 14:41:31.000000000 -0500 -+++ src/cairo-xlib-display.c 2010-11-21 14:42:12.000000000 -0500 -@@ -353,11 +353,7 @@ _cairo_xlib_device_create (Display *dpy) +--- src/cairo-xlib-display.c.orig 2015-03-10 22:21:07 UTC ++++ src/cairo-xlib-display.c +@@ -263,11 +263,7 @@ _cairo_xlib_device_create (Display *dpy) /* Prior to Render 0.10, there is no protocol support for gradients and * we call function stubs instead, which would silently consume the drawing. */ -#if RENDER_MAJOR == 0 && RENDER_MINOR < 10 display->buggy_gradients = TRUE; -#else - display->buggy_gradients = FALSE; -#endif display->buggy_pad_reflect = FALSE; display->buggy_repeat = FALSE; Index: head/graphics/cairo/files/patch-util_cairo-sphinx_sphinx.c =================================================================== --- head/graphics/cairo/files/patch-util_cairo-sphinx_sphinx.c (revision 401101) +++ head/graphics/cairo/files/patch-util_cairo-sphinx_sphinx.c (revision 401102) @@ -1,11 +1,11 @@ ---- util/cairo-sphinx/sphinx.c.orig 2014-10-06 15:22:24.000000000 -0400 -+++ util/cairo-sphinx/sphinx.c 2014-10-06 15:23:04.000000000 -0400 -@@ -1325,7 +1325,7 @@ client_shm (const char *shm_path) +--- util/cairo-sphinx/sphinx.c.orig 2015-03-10 22:21:07 UTC ++++ util/cairo-sphinx/sphinx.c +@@ -1337,7 +1337,7 @@ client_shm (const char *shm_path) base = mmap (NULL, DATA_SIZE, PROT_READ | PROT_WRITE, - MAP_SHARED | MAP_NORESERVE, + MAP_SHARED, fd, 0); close (fd); Index: head/graphics/cairo/pkg-descr =================================================================== --- head/graphics/cairo/pkg-descr (revision 401101) +++ head/graphics/cairo/pkg-descr (revision 401102) @@ -1,13 +1,13 @@ Cairo is a vector graphics library with cross-device output support. Currently supported output targets include the X Window System and in-memory image buffers. PostScript and PDF file output is planned. Cairo is designed to produce identical output on all output media while taking advantage of display hardware acceleration when available (eg. through the X Render Extension). Cairo provides a stateful user-level API with capabilities similar to the PDF 1.4 imaging model. Cairo provides operations including stroking and filling Bezier cubic splines, transforming and compositing translucent images, and antialiased text rendering. -WWW: http://www.cairographics.org +WWW: http://www.cairographics.org