pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/graphics/cairo update to cairo-0.4.0
details: https://anonhg.NetBSD.org/pkgsrc/rev/b3d2af7d2b98
branches: trunk
changeset: 491642:b3d2af7d2b98
user: recht <recht%pkgsrc.org@localhost>
date: Sun Mar 27 12:29:17 2005 +0000
description:
update to cairo-0.4.0
http://cairographics.org/manual/cairo-Microsoft-Windows-Backend.html
Disabled backend: quartz
------------------------
Unfortunately, the quartz backend code is currently out of date with
respect to some recent backend interface changes. So, the quartz
backend is disabled in this snapshot.
If the quartz backend is brought up-to-date before the next snapshot,
we would be glad to make a 0.4.1 snapshot that re-enables it, (we do
not expect many more big backend interface changes).
API Changes
-----------
The font system has been revamped, (as Owen Taylor's work with
integrating pango and cairo gave us the first serious usage of the
non-toy font API).
One fundamental, user-visible change is that the cairo_font_t object
now represents a font that is scaled to a particular device
resolution. Further changes are described below.
cairo.h
-------
Removed cairo_font_set_transform and cairo_font_current_transform.
Added cairo_font_extents and cairo_font_glyph_extents. See
documentation for details:
http://cairographics.org/manual/cairo-cairo-t.html#cairo-font-extents
cairo-ft.h
----------
The cairo_ft_font API changed considerably. Please see the
documentation for details:
http://cairographics.org/manual/cairo-FreeType-Fonts.html
Performance
-----------
Make the fast-path clipping (pixel-aligned rectangles) faster.
Add optimization for applying a constant alpha to a pattern.
Optimize gradients that are horizontal or vertical in device space.
Xlib: When RENDER is not available, use image surfaces for
intermediate surfaces rather than xlib surfaces.
Backend-specific changes
------------------------
Glitz
-----
Major update to glitz backend. The output quality should now be just
as good as the image and xlib backends.
Track changes to glitz 0.4.0.
PDF
---
Various improvements to produce more conformant output.
Internals
---------
David Reveman contributed a large re-work of the cairo_pattern_t
implementation, providing cleaner code and more optimization
opportunities.
Backend interface changes
-------------------------
Rework backend interface to accept patterns, not surfaces for source
and mask.
Remove set_matrix, set_filter, and set_repeat functions.
More sophisticated backend interface for image fallbacks,
({acquire,release}_{source,dest}_image() and clone_similar).
Bug fixes
---------
Only install header files for backends that have been compiled.
Fixed some rounding errors leading to incorrectly placed glyphs.
Many other minor fixes.
diffstat:
graphics/cairo/Makefile | 9 +-
graphics/cairo/PLIST | 30 ++++++-
graphics/cairo/buildlink3.mk | 7 +-
graphics/cairo/distinfo | 9 +-
graphics/cairo/patches/patch-aa | 169 ----------------------------------------
5 files changed, 41 insertions(+), 183 deletions(-)
diffs (290 lines):
diff -r 23d25be0757a -r b3d2af7d2b98 graphics/cairo/Makefile
--- a/graphics/cairo/Makefile Sun Mar 27 12:28:08 2005 +0000
+++ b/graphics/cairo/Makefile Sun Mar 27 12:29:17 2005 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.14 2005/02/17 13:34:16 xtraeme Exp $
+# $NetBSD: Makefile,v 1.15 2005/03/27 12:29:17 recht Exp $
-DISTNAME= cairo-0.3.0
+DISTNAME= cairo-0.4.0
CATEGORIES= graphics
MASTER_SITES= http://cairographics.org/snapshots/
@@ -14,12 +14,17 @@
USE_X11= yes
GNU_CONFIGURE= yes
PKGCONFIG_OVERRIDE+= cairo.pc.in
+CONFIGURE_ARGS+= --disable-atsui
+CONFIGURE_ARGS+= --disable-xcb
+CONFIGURE_ARGS+= --with-html-dir=${PREFIX}/share/doc
BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.5
BUILDLINK_DEPENDS.Xft2+= Xft2>=2.1.2
BUILDLINK_DEPENDS.Xrender+= Xrender>=0.8
.include "../../devel/pkgconfig/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../fonts/fontconfig/buildlink3.mk"
.include "../../fonts/Xft2/buildlink3.mk"
.include "../../graphics/freetype2/buildlink3.mk"
.include "../../graphics/glitz/buildlink3.mk"
diff -r 23d25be0757a -r b3d2af7d2b98 graphics/cairo/PLIST
--- a/graphics/cairo/PLIST Sun Mar 27 12:28:08 2005 +0000
+++ b/graphics/cairo/PLIST Sun Mar 27 12:29:17 2005 +0000
@@ -1,15 +1,37 @@
-@comment $NetBSD: PLIST,v 1.3 2005/02/17 13:34:16 xtraeme Exp $
-include/cairo/cairo-atsui.h
+@comment $NetBSD: PLIST,v 1.4 2005/03/27 12:29:17 recht Exp $
include/cairo/cairo-features.h
include/cairo/cairo-ft.h
include/cairo/cairo-glitz.h
include/cairo/cairo-pdf.h
include/cairo/cairo-png.h
include/cairo/cairo-ps.h
-include/cairo/cairo-quartz.h
-include/cairo/cairo-xcb.h
include/cairo/cairo-xlib.h
include/cairo/cairo.h
lib/libcairo.la
lib/pkgconfig/cairo.pc
+share/doc/cairo/cairo-ATSUI-Fonts.html
+share/doc/cairo/cairo-FreeType-Fonts.html
+share/doc/cairo/cairo-Glitz-backend.html
+share/doc/cairo/cairo-Microsoft-Windows-Backend.html
+share/doc/cairo/cairo-PDF-Backend.html
+share/doc/cairo/cairo-PNG-Backend.html
+share/doc/cairo/cairo-PS-Backend.html
+share/doc/cairo/cairo-Quartz-Backend.html
+share/doc/cairo/cairo-XCB-Backend.html
+share/doc/cairo/cairo-XLib-Backend.html
+share/doc/cairo/cairo-cairo-matrix-t.html
+share/doc/cairo/cairo-cairo-pattern-t.html
+share/doc/cairo/cairo-cairo-surface-t.html
+share/doc/cairo/cairo-cairo-t.html
+share/doc/cairo/cairo.devhelp
+share/doc/cairo/home.png
+share/doc/cairo/index.html
+share/doc/cairo/index.sgml
+share/doc/cairo/left.png
+share/doc/cairo/pt01.html
+share/doc/cairo/pt02.html
+share/doc/cairo/right.png
+share/doc/cairo/style.css
+share/doc/cairo/up.png
+@dirrm share/doc/cairo
@dirrm include/cairo
diff -r 23d25be0757a -r b3d2af7d2b98 graphics/cairo/buildlink3.mk
--- a/graphics/cairo/buildlink3.mk Sun Mar 27 12:28:08 2005 +0000
+++ b/graphics/cairo/buildlink3.mk Sun Mar 27 12:29:17 2005 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.9 2004/10/03 00:14:49 tv Exp $
+# $NetBSD: buildlink3.mk,v 1.10 2005/03/27 12:29:17 recht Exp $
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
CAIRO_BUILDLINK3_MK:= ${CAIRO_BUILDLINK3_MK}+
@@ -11,8 +11,7 @@
BUILDLINK_PACKAGES+= cairo
.if !empty(CAIRO_BUILDLINK3_MK:M+)
-BUILDLINK_DEPENDS.cairo+= cairo>=0.1.23
-BUILDLINK_RECOMMENDED.cairo+= cairo>=0.1.23nb2
+BUILDLINK_DEPENDS.cairo+= cairo>=0.4.0
BUILDLINK_PKGSRCDIR.cairo?= ../../graphics/cairo
BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.5
@@ -20,6 +19,8 @@
BUILDLINK_DEPENDS.Xrender+= Xrender>=0.8
.endif # CAIRO_BUILDLINK3_MK
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../fonts/fontconfig/buildlink3.mk"
.include "../../fonts/Xft2/buildlink3.mk"
.include "../../graphics/freetype2/buildlink3.mk"
.include "../../graphics/glitz/buildlink3.mk"
diff -r 23d25be0757a -r b3d2af7d2b98 graphics/cairo/distinfo
--- a/graphics/cairo/distinfo Sun Mar 27 12:28:08 2005 +0000
+++ b/graphics/cairo/distinfo Sun Mar 27 12:29:17 2005 +0000
@@ -1,6 +1,5 @@
-$NetBSD: distinfo,v 1.8 2005/02/24 08:45:03 agc Exp $
+$NetBSD: distinfo,v 1.9 2005/03/27 12:29:17 recht Exp $
-SHA1 (cairo-0.3.0.tar.gz) = 0ad4efaffb36dabc15e20671026c7eb98186a16e
-RMD160 (cairo-0.3.0.tar.gz) = 09bdc5ea2a0121eac6accfe46d6d48c80597bff0
-Size (cairo-0.3.0.tar.gz) = 514446 bytes
-SHA1 (patch-aa) = d339f9fe8cceba0966959679e965853c2c0784d2
+SHA1 (cairo-0.4.0.tar.gz) = 296b4c81de01f22ed4e7525c40471bc7f347e7f1
+RMD160 (cairo-0.4.0.tar.gz) = 4608b3f89c3b08d1442dded7f5fc15fcdcdd7788
+Size (cairo-0.4.0.tar.gz) = 781463 bytes
diff -r 23d25be0757a -r b3d2af7d2b98 graphics/cairo/patches/patch-aa
--- a/graphics/cairo/patches/patch-aa Sun Mar 27 12:28:08 2005 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,169 +0,0 @@
-$NetBSD: patch-aa,v 1.3 2005/02/17 13:34:16 xtraeme Exp $
-
---- src/cairo_glitz_surface.c.orig Thu Jan 20 11:29:19 2005
-+++ src/cairo_glitz_surface.c Wed Feb 16 19:20:26 2005
-@@ -333,7 +333,7 @@
- if (format == NULL)
- return NULL;
-
-- surface = glitz_surface_create (drawable, format, 1, 1);
-+ surface = glitz_surface_create (drawable, format, 1, 1, 0, NULL);
- if (surface == NULL)
- return NULL;
-
-@@ -355,7 +355,6 @@
- glitz_drawable_format_t templ;
- glitz_format_t *format;
- glitz_drawable_t *pbuffer;
-- glitz_pbuffer_attributes_t attributes;
- unsigned long mask;
- int i;
-
-@@ -397,21 +396,13 @@
- if (!dformat)
- return CAIRO_INT_STATUS_UNSUPPORTED;
-
-- attributes.width = glitz_surface_get_width (surface);
-- attributes.height = glitz_surface_get_height (surface);
-- mask = GLITZ_PBUFFER_WIDTH_MASK | GLITZ_PBUFFER_HEIGHT_MASK;
--
-- pbuffer = glitz_create_pbuffer_drawable (drawable, dformat,
-- &attributes, mask);
-+ pbuffer =
-+ glitz_create_pbuffer_drawable (drawable, dformat,
-+ glitz_surface_get_width (surface),
-+ glitz_surface_get_height (surface));
- if (!pbuffer)
- return CAIRO_INT_STATUS_UNSUPPORTED;
-
-- if (glitz_drawable_get_width (pbuffer) < attributes.width ||
-- glitz_drawable_get_height (pbuffer) < attributes.height) {
-- glitz_drawable_destroy (pbuffer);
-- return CAIRO_INT_STATUS_UNSUPPORTED;
-- }
--
- glitz_surface_attach (surface, pbuffer,
- GLITZ_DRAWABLE_BUFFER_FRONT_COLOR,
- 0, 0);
-@@ -457,7 +448,7 @@
- if (gformat == NULL)
- return NULL;
-
-- surface = glitz_surface_create (drawable, gformat, width, height);
-+ surface = glitz_surface_create (drawable, gformat, width, height, 0, NULL);
- if (surface == NULL)
- return NULL;
-
-@@ -510,7 +501,8 @@
- int width,
- int height,
- glitz_buffer_t *geometry,
-- glitz_geometry_format_t *format)
-+ glitz_geometry_format_t *format,
-+ int count)
- {
- if (_glitz_ensure_target (dst))
- return CAIRO_INT_STATUS_UNSUPPORTED;
-@@ -518,9 +510,10 @@
- if (glitz_surface_get_status (dst))
- return CAIRO_STATUS_NO_TARGET_SURFACE;
-
-- glitz_set_geometry (dst,
-- 0, 0,
-- format, geometry);
-+ if (geometry) {
-+ glitz_set_geometry (dst, GLITZ_GEOMETRY_TYPE_VERTEX, format, geometry);
-+ glitz_set_array (dst, 0, 2, count, 0, 0);
-+ }
-
- glitz_composite (op,
- src,
-@@ -531,7 +524,7 @@
- dst_x, dst_y,
- width, height);
-
-- glitz_set_geometry (dst, 0, 0, NULL, NULL);
-+ glitz_set_geometry (dst, GLITZ_GEOMETRY_TYPE_NONE, NULL, NULL);
-
- if (glitz_surface_get_status (dst) == GLITZ_STATUS_NOT_SUPPORTED)
- return CAIRO_INT_STATUS_UNSUPPORTED;
-@@ -589,7 +582,7 @@
- mask_x, mask_y,
- dst_x, dst_y,
- width, height,
-- NULL, NULL);
-+ NULL, NULL, 0);
-
- if (src_clone)
- cairo_surface_destroy (&src_clone->base);
-@@ -624,16 +617,16 @@
- glitz_buffer_t *buffer;
- glitz_geometry_format_t gf;
- cairo_int_status_t status;
-- int width, height;
-+ int width, height, count;
- void *data;
-
-- gf.mode = GLITZ_GEOMETRY_MODE_DIRECT;
-- gf.edge_hint = GLITZ_GEOMETRY_EDGE_HINT_SHARP;
-- gf.primitive = GLITZ_GEOMETRY_PRIMITIVE_QUADS;
-- gf.type = GLITZ_DATA_TYPE_FLOAT;
-- gf.first = 0;
-- gf.count = n_rects * 4;
-+ gf.vertex.primitive = GLITZ_PRIMITIVE_QUADS;
-+ gf.vertex.type = GLITZ_DATA_TYPE_FLOAT;
-+ gf.vertex.bytes_per_vertex = 2 * sizeof (glitz_float_t);
-+ gf.vertex.attributes = 0;
-
-+ count = n_rects * 4;
-+
- data = malloc (n_rects * 8 * sizeof (glitz_float_t));
- if (!data)
- return CAIRO_STATUS_NO_MEMORY;
-@@ -678,7 +671,7 @@
- 0, 0,
- 0, 0,
- width, height,
-- buffer, &gf);
-+ buffer, &gf, count);
-
- glitz_surface_destroy (solid);
- glitz_buffer_destroy (buffer);
-@@ -715,7 +708,7 @@
- glitz_buffer_t *buffer;
- glitz_geometry_format_t gf;
- cairo_int_status_t status;
-- int x_dst, y_dst, x_rel, y_rel, width, height;
-+ int x_dst, y_dst, x_rel, y_rel, width, height, count;
- void *data;
-
- if (op == CAIRO_OPERATOR_SATURATE)
-@@ -724,12 +717,12 @@
- if (generic_src->backend != dst->base.backend)
- return CAIRO_INT_STATUS_UNSUPPORTED;
-
-- gf.mode = GLITZ_GEOMETRY_MODE_DIRECT;
-- gf.edge_hint = GLITZ_GEOMETRY_EDGE_HINT_GOOD_SMOOTH;
-- gf.primitive = GLITZ_GEOMETRY_PRIMITIVE_QUADS;
-- gf.type = GLITZ_DATA_TYPE_FLOAT;
-- gf.first = 0;
-- gf.count = n_traps * 4;
-+ gf.vertex.primitive = GLITZ_PRIMITIVE_QUADS;
-+ gf.vertex.type = GLITZ_DATA_TYPE_FLOAT;
-+ gf.vertex.bytes_per_vertex = 2 * sizeof (glitz_float_t);
-+ gf.vertex.attributes = 0;
-+
-+ count = n_traps * 4;
-
- data = malloc (n_traps * 8 * sizeof (glitz_float_t));
- if (!data)
-@@ -795,7 +788,7 @@
- 0, 0,
- x_dst, y_dst,
- width, height,
-- buffer, &gf);
-+ buffer, &gf, count);
-
- if (mask)
- glitz_surface_destroy (mask);
-
Home |
Main Index |
Thread Index |
Old Index