aboutsummaryrefslogtreecommitdiff
path: root/graphics/cairo
diff options
context:
space:
mode:
authorKoop Mast <kwm@FreeBSD.org>2014-09-12 06:34:28 +0000
committerKoop Mast <kwm@FreeBSD.org>2014-09-12 06:34:28 +0000
commitaf3711b2f722eb3009f52b50a55bafff981ce06d (patch)
tree589c5ce8d8fe5b0ba64bbcf2301dceae6bcf8830 /graphics/cairo
parentca47fd0169e94341f6c295a9c4fde773f7868692 (diff)
downloadports-af3711b2f722eb3009f52b50a55bafff981ce06d.tar.gz
ports-af3711b2f722eb3009f52b50a55bafff981ce06d.zip
The cairo port is now updated to 1.12.16.
We delayed the update of cairo to the 1.12 series as long as we possibly could, but 1.10 was blocking updates to other ports, e.g. pango and gtk30. Continued availability of cairo 1.10 would prevent building of any GTK+ applications. Cairo 1.12 exposes some driver bugs in xf86-video-intel 2.7.1, and may expose bugs in other older drivers. These bugs manifest as display artifacts. Conversely, this update fixes some graphical glitches with xorg-server 1.12.
Notes
Notes: svn path=/head/; revision=368007
Diffstat (limited to 'graphics/cairo')
-rw-r--r--graphics/cairo/Makefile95
-rw-r--r--graphics/cairo/distinfo4
-rw-r--r--graphics/cairo/files/patch-src_cairo-xcb-surface-render.c25
-rw-r--r--graphics/cairo/pkg-plist25
4 files changed, 86 insertions, 63 deletions
diff --git a/graphics/cairo/Makefile b/graphics/cairo/Makefile
index bdf8205ee34d..878bfab32259 100644
--- a/graphics/cairo/Makefile
+++ b/graphics/cairo/Makefile
@@ -1,97 +1,82 @@
# Created by: Michael Johnson <ahze@FreeBSD.org>
# $FreeBSD$
-# $MCom: ports/graphics/cairo/Makefile,v 1.101 2010/10/29 15:40:04 kwm Exp $
+# $MCom: ports/trunk/graphics/cairo/Makefile 18928 2013-11-30 02:00:25Z marcus $
PORTNAME= cairo
-PORTVERSION= 1.10.2
-PORTREVISION= 10
-PORTEPOCH?= 2
+PORTVERSION= 1.12.16
+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
+USES= tar:xz
+
.if !defined(REFERENCE_PORT)
LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2 \
libpng15.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= libtool:keepla pathfix pkgconfig
-USE_XORG= pixman
+USES+= libtool:keepla pathfix pkgconfig
+USE_XORG= pixman xext
USE_GNOME= referencehack
USE_LDCONFIG= yes
INSTALL_TARGET= install-strip
-CPPFLAGS+= ${PTHREAD_CFLAGS}
-LDFLAGS+= ${PTHREAD_LIBS}
+CONFIGURE_ARGS= --with-html-dir=${DOCSDIR} \
+ --disable-directfb \
+ --disable-gallium \
+ --disable-glesv2 \
+ --disable-wgl \
+ --disable-egl \
+ --enable-tee
-OPTIONS_DEFINE= OPENGL XCB GLIB X11
-OPTIONS_DEFAULT= XCB GLIB X11
+OPTIONS_DEFINE= OPENGL XCB GLIB X11
+OPTIONS_DEFAULT=XCB GLIB X11
XCB_DESC= Enable XCB (X C-language Binding) Support
GLIB_DESC= Enable GObject Functions Feature
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "arm"
-BROKEN= Does not compile on arm
-.endif
-
-.if ${PORT_OPTIONS:MX11}
-USE_XORG+= xrender
-PLIST_SUB+= X11=""
-.else
-CONFIGURE_ARGS+=--disable-xlib
-PLIST_SUB+= X11="@comment "
-.endif
-
-.if ${PORT_OPTIONS:MOPENGL}
-USE_GL= gl
-USE_XORG+= glproto:both dri2proto:both
-CONFIGURE_ARGS+= --enable-gl
-PLIST_SUB+= GL=""
-.else
-CONFIGURE_ARGS+= --disable-gl
-PLIST_SUB+= GL="@comment "
-.endif
-
-.if ${PORT_OPTIONS:MXCB}
-BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/xcb-renderutil.pc:${PORTSDIR}/x11/xcb-util-renderutil
-RUN_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/xcb-renderutil.pc:${PORTSDIR}/x11/xcb-util-renderutil
-CONFIGURE_ARGS+= --enable-xcb
-# this option exposes a bug --enable-xlib-xcb=auto
-PLIST_SUB+= XCB=""
-.else
-CONFIGURE_ARGS+= --disable-xcb
-PLIST_SUB+= XCB="@comment "
-.endif
-
-.if ${PORT_OPTIONS:MGLIB}
-USE_GNOME+= glib20
-PLIST_SUB+= GLIB=""
-.else
-CONFIGURE_ARGS+= --enable-gobject=no
-PLIST_SUB+= GLIB="@comment "
-.endif
+OPTIONS_SUB= yes
+X11_USE= xorg=xrender
+X11_CONFIGURE_ENABLE=xlib
+OPENGL_USE= gl=gl xorg=glproto:both,dri2proto:both
+OPENGL_CONFIGURE_ENABLE=gl
+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.11200.16
+
+.include <bsd.port.options.mk>
post-patch:
@${REINPLACE_CMD} -e '/test/s/==/=/g' \
- -e '/LIBS/s/-lrt//' \
+ -e '/LIBS/s/-lrt//' -e '/LIBS/s|-ldld||' \
+ -e '/LIBS/s|-ldl||' \
${WRKSRC}/configure
@${REINPLACE_CMD} -e 's|-lcairo|-lcairo ${PTHREAD_LIBS}|' \
${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
.if ${PORT_OPTIONS:MOPENGL}
@${REINPLACE_CMD} 's|@CAIRO_CFLAGS@|-I$$(top_srcdir)/src/glew &|' \
${WRKSRC}/src/Makefile.in
.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
.endif
diff --git a/graphics/cairo/distinfo b/graphics/cairo/distinfo
index 695495df3aa8..20509015d18c 100644
--- a/graphics/cairo/distinfo
+++ b/graphics/cairo/distinfo
@@ -1,2 +1,2 @@
-SHA256 (cairo-1.10.2.tar.gz) = 32018c7998358eebc2ad578ff8d8559d34fc80252095f110a572ed23d989fc41
-SIZE (cairo-1.10.2.tar.gz) = 23558405
+SHA256 (cairo-1.12.16.tar.xz) = 2505959eb3f1de3e1841023b61585bfd35684b9733c7b6a3643f4f4cbde6d846
+SIZE (cairo-1.12.16.tar.xz) = 35889824
diff --git a/graphics/cairo/files/patch-src_cairo-xcb-surface-render.c b/graphics/cairo/files/patch-src_cairo-xcb-surface-render.c
new file mode 100644
index 000000000000..63d5c8d403de
--- /dev/null
+++ b/graphics/cairo/files/patch-src_cairo-xcb-surface-render.c
@@ -0,0 +1,25 @@
+From 18b3cce2f5812c357e4b6310e72d72dd9ec92ed4 Mon Sep 17 00:00:00 2001
+From: Bryce Harrington <b.harrington@samsung.com>
+Date: Tue, 06 May 2014 17:18:19 +0000
+Subject: Fix segfault in firefox when scrolling on certain pages
+
+Bug discovered by thorsten <fly_a320@gmx.de>
+
+Patch from Chris Wilson <chris@chris-wilson.co.uk>
+---
+diff --git a/src/cairo-xcb-surface-render.c b/src/cairo-xcb-surface-render.c
+index 9625953..75455e5 100644
+--- src/cairo-xcb-surface-render.c
++++ src/cairo-xcb-surface-render.c
+@@ -3121,6 +3121,9 @@ _clip_and_composite_boxes (cairo_xcb_surface_t *dst,
+
+ clip = _cairo_clip_copy (extents->clip);
+ clip = _cairo_clip_intersect_boxes (clip, boxes);
++ if (_cairo_clip_is_all_clipped (clip))
++ return CAIRO_INT_STATUS_NOTHING_TO_DO;
++
+ status = _cairo_clip_get_polygon (clip, &polygon,
+ &fill_rule, &antialias);
+ _cairo_clip_path_destroy (clip->path);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/graphics/cairo/pkg-plist b/graphics/cairo/pkg-plist
index f04c01910520..7b2046a42607 100644
--- a/graphics/cairo/pkg-plist
+++ b/graphics/cairo/pkg-plist
@@ -1,12 +1,14 @@
+bin/cairo-sphinx
bin/cairo-trace
include/cairo/cairo-deprecated.h
include/cairo/cairo-features.h
include/cairo/cairo-ft.h
-%%GL%%include/cairo/cairo-gl.h
+%%OPENGL%%include/cairo/cairo-gl.h
%%GLIB%%include/cairo/cairo-gobject.h
include/cairo/cairo-pdf.h
include/cairo/cairo-ps.h
include/cairo/cairo-script-interpreter.h
+include/cairo/cairo-script.h
include/cairo/cairo-svg.h
include/cairo/cairo-tee.h
include/cairo/cairo-version.h
@@ -14,6 +16,16 @@ include/cairo/cairo-version.h
%%X11%%include/cairo/cairo-xlib-xrender.h
%%X11%%include/cairo/cairo-xlib.h
include/cairo/cairo.h
+lib/cairo/cairo-fdr.a
+lib/cairo/cairo-fdr.la
+lib/cairo/cairo-fdr.so
+lib/cairo/cairo-fdr.so.0
+lib/cairo/cairo-fdr.so.0.0.0
+lib/cairo/cairo-sphinx.a
+lib/cairo/cairo-sphinx.la
+lib/cairo/cairo-sphinx.so
+lib/cairo/cairo-sphinx.so.0
+lib/cairo/cairo-sphinx.so.0.0.0
lib/cairo/libcairo-trace.a
lib/cairo/libcairo-trace.la
lib/cairo/libcairo-trace.so
@@ -23,26 +35,27 @@ lib/cairo/libcairo-trace.so.0.0.0
%%GLIB%%lib/libcairo-gobject.la
%%GLIB%%lib/libcairo-gobject.so
%%GLIB%%lib/libcairo-gobject.so.2
-%%GLIB%%lib/libcairo-gobject.so.2.11000.2
+%%GLIB%%lib/libcairo-gobject.so.%%LIBVER%%
lib/libcairo-script-interpreter.a
lib/libcairo-script-interpreter.la
lib/libcairo-script-interpreter.so
lib/libcairo-script-interpreter.so.2
-lib/libcairo-script-interpreter.so.2.11000.2
+lib/libcairo-script-interpreter.so.%%LIBVER%%
lib/libcairo.a
lib/libcairo.la
lib/libcairo.so
lib/libcairo.so.2
-lib/libcairo.so.2.11000.2
+lib/libcairo.so.%%LIBVER%%
libdata/pkgconfig/cairo.pc
libdata/pkgconfig/cairo-fc.pc
libdata/pkgconfig/cairo-ft.pc
-%%GL%%libdata/pkgconfig/cairo-gl.pc
-%%GL%%libdata/pkgconfig/cairo-glx.pc
+%%OPENGL%%libdata/pkgconfig/cairo-gl.pc
+%%OPENGL%%libdata/pkgconfig/cairo-glx.pc
%%GLIB%%libdata/pkgconfig/cairo-gobject.pc
libdata/pkgconfig/cairo-pdf.pc
libdata/pkgconfig/cairo-png.pc
libdata/pkgconfig/cairo-ps.pc
+libdata/pkgconfig/cairo-script.pc
libdata/pkgconfig/cairo-svg.pc
libdata/pkgconfig/cairo-tee.pc
%%XCB%%libdata/pkgconfig/cairo-xcb.pc