rebuilt with --enable-xcb-shm=yes to ensure support is enabled event when build in chroot environment [release 1.12.16-3mamba;Sun Feb 16 2014]
This commit is contained in:
parent
0c954f8dba
commit
eb3b1cb6d1
@ -1,2 +1,7 @@
|
|||||||
# libcairo
|
# libcairo
|
||||||
|
|
||||||
|
Cairo is a 2D graphics library with support for multiple output devices.
|
||||||
|
Currently supported output targets include the X Window System, win32, and image buffers.
|
||||||
|
Experimental backends include OpenGL (through glitz), Quartz, XCB, PostScript and PDF file output.
|
||||||
|
Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension).
|
||||||
|
|
||||||
|
370
libcairo-1.12.4-expose_snapshot.patch
Normal file
370
libcairo-1.12.4-expose_snapshot.patch
Normal file
@ -0,0 +1,370 @@
|
|||||||
|
Submitted By: Armin K. <krejzi at email dot com>
|
||||||
|
Initial Package Version: 1.12.0
|
||||||
|
Upstream Status: Unknown
|
||||||
|
Origin: Mozilla. From the Firefox-12 source.
|
||||||
|
Description: this is gfx/cairo/expose-snapshot.patch applied to the system
|
||||||
|
Cairo to expose some private functions. It allows Firefox to
|
||||||
|
be compiled with --enable-system-cairo
|
||||||
|
More details https://bugzilla.mozilla.org/show_bug.cgi?id=722975
|
||||||
|
Based on Andy's patch, but rediffed for Cairo 1.12.4.
|
||||||
|
|
||||||
|
--- cairo.orig/src/cairo-analysis-surface.c 2012-04-29 11:04:27.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-analysis-surface.c 2012-10-07 20:22:22.407783487 +0200
|
||||||
|
@@ -125,7 +125,7 @@
|
||||||
|
_cairo_surface_init (&proxy->base, &proxy_backend, NULL, target->content);
|
||||||
|
|
||||||
|
proxy->target = target;
|
||||||
|
- _cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
|
||||||
|
return &proxy->base;
|
||||||
|
}
|
||||||
|
@@ -916,7 +916,7 @@
|
||||||
|
};
|
||||||
|
|
||||||
|
cairo_surface_t *
|
||||||
|
-_cairo_null_surface_create (cairo_content_t content)
|
||||||
|
+cairo_null_surface_create (cairo_content_t content)
|
||||||
|
{
|
||||||
|
cairo_surface_t *surface;
|
||||||
|
|
||||||
|
--- cairo.orig/src/cairo-analysis-surface-private.h 2010-06-13 21:58:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-analysis-surface-private.h 2012-10-07 20:22:22.407783487 +0200
|
||||||
|
@@ -68,7 +68,4 @@
|
||||||
|
_cairo_analysis_surface_merge_status (cairo_int_status_t status_a,
|
||||||
|
cairo_int_status_t status_b);
|
||||||
|
|
||||||
|
-cairo_private cairo_surface_t *
|
||||||
|
-_cairo_null_surface_create (cairo_content_t content);
|
||||||
|
-
|
||||||
|
#endif /* CAIRO_ANALYSIS_SURFACE_H */
|
||||||
|
--- cairo.orig/src/cairo-cogl-surface.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-cogl-surface.c 2012-10-07 20:22:22.407783487 +0200
|
||||||
|
@@ -1403,7 +1403,7 @@
|
||||||
|
reference_surface->ignore_alpha,
|
||||||
|
NULL, COGL_TEXTURE (texture));
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (abstract_surface, clone, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (abstract_surface, clone, NULL);
|
||||||
|
|
||||||
|
/* Attaching the snapshot will take a reference on the clone surface... */
|
||||||
|
cairo_surface_destroy (clone);
|
||||||
|
--- cairo.orig/src/cairo.h 2012-03-29 12:05:32.000000000 +0200
|
||||||
|
+++ cairo/src/cairo.h 2012-10-07 20:22:22.408783503 +0200
|
||||||
|
@@ -232,6 +232,15 @@
|
||||||
|
typedef void (*cairo_destroy_func_t) (void *data);
|
||||||
|
|
||||||
|
/**
|
||||||
|
+ * cairo_surface_func_t:
|
||||||
|
+ * @surface: The surface being referred to.
|
||||||
|
+ *
|
||||||
|
+ * #cairo_surface_func_t the type of function which is used for callback
|
||||||
|
+ * when a surface needs to be passed as a parameter.
|
||||||
|
+ */
|
||||||
|
+typedef void (*cairo_surface_func_t) (cairo_surface_t *surface);
|
||||||
|
+
|
||||||
|
+/**
|
||||||
|
* cairo_user_data_key_t:
|
||||||
|
* @unused: not used; ignore.
|
||||||
|
*
|
||||||
|
@@ -2414,6 +2423,14 @@
|
||||||
|
void *user_data,
|
||||||
|
cairo_destroy_func_t destroy);
|
||||||
|
|
||||||
|
+cairo_public void
|
||||||
|
+cairo_surface_attach_snapshot (cairo_surface_t *surface,
|
||||||
|
+ cairo_surface_t *snapshot,
|
||||||
|
+ cairo_surface_func_t detach_func);
|
||||||
|
+
|
||||||
|
+cairo_public void
|
||||||
|
+cairo_surface_detach_snapshot (cairo_surface_t *snapshot);
|
||||||
|
+
|
||||||
|
#define CAIRO_MIME_TYPE_JPEG "image/jpeg"
|
||||||
|
#define CAIRO_MIME_TYPE_PNG "image/png"
|
||||||
|
#define CAIRO_MIME_TYPE_JP2 "image/jp2"
|
||||||
|
@@ -2690,6 +2707,11 @@
|
||||||
|
cairo_public cairo_raster_source_finish_func_t
|
||||||
|
cairo_raster_source_pattern_get_finish (cairo_pattern_t *pattern);
|
||||||
|
|
||||||
|
+/* Null-surface functions */
|
||||||
|
+
|
||||||
|
+cairo_public cairo_surface_t *
|
||||||
|
+cairo_null_surface_create (cairo_content_t content);
|
||||||
|
+
|
||||||
|
/* Pattern creation functions */
|
||||||
|
|
||||||
|
cairo_public cairo_pattern_t *
|
||||||
|
--- cairo.orig/src/cairo-image-source.c 2012-04-29 11:04:27.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-image-source.c 2012-10-07 20:22:22.408783503 +0200
|
||||||
|
@@ -670,7 +670,7 @@
|
||||||
|
_cairo_surface_init (&proxy->base, &proxy_backend, NULL, image->content);
|
||||||
|
|
||||||
|
proxy->image = image;
|
||||||
|
- _cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
|
||||||
|
return &proxy->base;
|
||||||
|
}
|
||||||
|
--- cairo.orig/src/cairoint.h 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairoint.h 2012-10-07 20:22:22.409783519 +0200
|
||||||
|
@@ -1382,17 +1382,9 @@
|
||||||
|
cairo_private cairo_surface_t *
|
||||||
|
_cairo_surface_snapshot (cairo_surface_t *surface);
|
||||||
|
|
||||||
|
-cairo_private void
|
||||||
|
-_cairo_surface_attach_snapshot (cairo_surface_t *surface,
|
||||||
|
- cairo_surface_t *snapshot,
|
||||||
|
- cairo_surface_func_t detach_func);
|
||||||
|
-
|
||||||
|
cairo_private cairo_surface_t *
|
||||||
|
_cairo_surface_has_snapshot (cairo_surface_t *surface,
|
||||||
|
- const cairo_surface_backend_t *backend);
|
||||||
|
-
|
||||||
|
-cairo_private void
|
||||||
|
-_cairo_surface_detach_snapshot (cairo_surface_t *snapshot);
|
||||||
|
+ const cairo_surface_backend_t *backend);
|
||||||
|
|
||||||
|
cairo_private cairo_status_t
|
||||||
|
_cairo_surface_begin_modification (cairo_surface_t *surface);
|
||||||
|
--- cairo.orig/src/cairo-recording-surface.c 2012-10-05 15:06:00.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-recording-surface.c 2012-10-07 20:22:22.410783534 +0200
|
||||||
|
@@ -553,7 +553,7 @@
|
||||||
|
_cairo_surface_init (&proxy->base, &proxy_backend, NULL, image->content);
|
||||||
|
|
||||||
|
proxy->image = image;
|
||||||
|
- _cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (source, &proxy->base, NULL);
|
||||||
|
|
||||||
|
return &proxy->base;
|
||||||
|
}
|
||||||
|
@@ -1944,7 +1944,7 @@
|
||||||
|
cairo_surface_t *analysis_surface;
|
||||||
|
cairo_status_t status;
|
||||||
|
|
||||||
|
- null_surface = _cairo_null_surface_create (surface->base.content);
|
||||||
|
+ null_surface = cairo_null_surface_create (surface->base.content);
|
||||||
|
analysis_surface = _cairo_analysis_surface_create (null_surface);
|
||||||
|
cairo_surface_destroy (null_surface);
|
||||||
|
|
||||||
|
--- cairo.orig/src/cairo-script-surface.c 2012-04-29 11:04:27.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-script-surface.c 2012-10-07 20:22:22.410783534 +0200
|
||||||
|
@@ -1117,7 +1117,7 @@
|
||||||
|
"dup /s%d exch def ",
|
||||||
|
surface->base.unique_id);
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (source, &surface->base, detach_snapshot);
|
||||||
|
+ cairo_surface_attach_snapshot (source, &surface->base, detach_snapshot);
|
||||||
|
cairo_surface_destroy (&surface->base);
|
||||||
|
}
|
||||||
|
|
||||||
|
--- cairo.orig/src/cairo-surface.c 2012-09-27 22:38:56.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-surface.c 2012-10-07 20:25:31.030695973 +0200
|
||||||
|
@@ -330,14 +330,14 @@
|
||||||
|
_cairo_surface_detach_snapshots (cairo_surface_t *surface)
|
||||||
|
{
|
||||||
|
while (_cairo_surface_has_snapshots (surface)) {
|
||||||
|
- _cairo_surface_detach_snapshot (cairo_list_first_entry (&surface->snapshots,
|
||||||
|
+ cairo_surface_detach_snapshot (cairo_list_first_entry (&surface->snapshots,
|
||||||
|
cairo_surface_t,
|
||||||
|
snapshot));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
-_cairo_surface_detach_snapshot (cairo_surface_t *snapshot)
|
||||||
|
+cairo_surface_detach_snapshot (cairo_surface_t *snapshot)
|
||||||
|
{
|
||||||
|
assert (snapshot->snapshot_of != NULL);
|
||||||
|
|
||||||
|
@@ -351,7 +351,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
-_cairo_surface_attach_snapshot (cairo_surface_t *surface,
|
||||||
|
+cairo_surface_attach_snapshot (cairo_surface_t *surface,
|
||||||
|
cairo_surface_t *snapshot,
|
||||||
|
cairo_surface_func_t detach_func)
|
||||||
|
{
|
||||||
|
@@ -361,7 +361,7 @@
|
||||||
|
cairo_surface_reference (snapshot);
|
||||||
|
|
||||||
|
if (snapshot->snapshot_of != NULL)
|
||||||
|
- _cairo_surface_detach_snapshot (snapshot);
|
||||||
|
+ cairo_surface_detach_snapshot (snapshot);
|
||||||
|
|
||||||
|
snapshot->snapshot_of = surface;
|
||||||
|
snapshot->snapshot_detach = detach_func;
|
||||||
|
@@ -1461,7 +1461,7 @@
|
||||||
|
/* update the current snapshots *before* the user updates the surface */
|
||||||
|
_cairo_surface_detach_snapshots (surface);
|
||||||
|
if (surface->snapshot_of != NULL)
|
||||||
|
- _cairo_surface_detach_snapshot (surface);
|
||||||
|
+ cairo_surface_detach_snapshot (surface);
|
||||||
|
_cairo_surface_detach_mime_data (surface);
|
||||||
|
|
||||||
|
return __cairo_surface_flush (surface, flags);
|
||||||
|
--- cairo.orig/src/cairo-surface-private.h 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-surface-private.h 2012-10-07 20:22:22.412783564 +0200
|
||||||
|
@@ -46,8 +46,6 @@
|
||||||
|
#include "cairo-clip-private.h"
|
||||||
|
#include "cairo-surface-backend-private.h"
|
||||||
|
|
||||||
|
-typedef void (*cairo_surface_func_t) (cairo_surface_t *);
|
||||||
|
-
|
||||||
|
struct _cairo_surface {
|
||||||
|
const cairo_surface_backend_t *backend;
|
||||||
|
cairo_device_t *device;
|
||||||
|
--- cairo.orig/src/cairo-surface-snapshot.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-surface-snapshot.c 2012-10-07 20:22:22.412783564 +0200
|
||||||
|
@@ -281,7 +281,7 @@
|
||||||
|
snapshot->base.device_transform = surface->device_transform;
|
||||||
|
snapshot->base.device_transform_inverse = surface->device_transform_inverse;
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (surface,
|
||||||
|
+ cairo_surface_attach_snapshot (surface,
|
||||||
|
&snapshot->base,
|
||||||
|
_cairo_surface_snapshot_copy_on_write);
|
||||||
|
|
||||||
|
--- cairo.orig/src/cairo-surface-subsurface.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-surface-subsurface.c 2012-10-07 20:22:22.412783564 +0200
|
||||||
|
@@ -562,10 +562,10 @@
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (ss->snapshot)
|
||||||
|
- _cairo_surface_detach_snapshot (ss->snapshot);
|
||||||
|
+ cairo_surface_detach_snapshot (ss->snapshot);
|
||||||
|
|
||||||
|
ss->snapshot = cairo_surface_reference (snapshot);
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (ss->target, &ss->base,
|
||||||
|
+ cairo_surface_attach_snapshot (ss->target, &ss->base,
|
||||||
|
_cairo_surface_subsurface_detach_snapshot);
|
||||||
|
}
|
||||||
|
--- cairo.orig/src/cairo-vg-surface.c 2012-04-19 14:17:58.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-vg-surface.c 2012-10-07 20:22:22.413783579 +0200
|
||||||
|
@@ -986,7 +986,7 @@
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (spat->surface, &clone->base,
|
||||||
|
+ cairo_surface_attach_snapshot (spat->surface, &clone->base,
|
||||||
|
_vg_surface_remove_from_cache);
|
||||||
|
|
||||||
|
DONE:
|
||||||
|
--- cairo.orig/src/cairo-xcb-surface.c 2012-09-27 22:38:56.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-xcb-surface.c 2012-10-07 20:22:58.916347305 +0200
|
||||||
|
@@ -500,7 +500,7 @@
|
||||||
|
if (unlikely (image->status))
|
||||||
|
return image->status;
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (&surface->base, image, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (&surface->base, image, NULL);
|
||||||
|
|
||||||
|
DONE:
|
||||||
|
*image_out = (cairo_image_surface_t *) image;
|
||||||
|
@@ -748,7 +748,7 @@
|
||||||
|
&surface->fallback_damage);
|
||||||
|
|
||||||
|
if (status == CAIRO_STATUS_SUCCESS && ! surface->base._finishing) {
|
||||||
|
- _cairo_surface_attach_snapshot (&surface->base,
|
||||||
|
+ cairo_surface_attach_snapshot (&surface->base,
|
||||||
|
&surface->fallback->base,
|
||||||
|
cairo_surface_finish);
|
||||||
|
}
|
||||||
|
--- cairo.orig/src/cairo-xcb-surface-core.c 2012-02-02 01:48:14.000000000 +0100
|
||||||
|
+++ cairo/src/cairo-xcb-surface-core.c 2012-10-07 20:22:22.414783595 +0200
|
||||||
|
@@ -440,7 +440,7 @@
|
||||||
|
if (unlikely (pixmap->base.status))
|
||||||
|
return pixmap;
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (source, &pixmap->base, NULL);
|
||||||
|
+ cairo_surface_attach_snapshot (source, &pixmap->base, NULL);
|
||||||
|
|
||||||
|
if (pattern->base.extend != CAIRO_EXTEND_NONE) {
|
||||||
|
if (extents->x < 0 || extents->y < 0 ||
|
||||||
|
--- cairo.orig/src/cairo-xcb-surface-render.c 2012-09-27 22:38:56.000000000 +0200
|
||||||
|
+++ cairo/src/cairo-xcb-surface-render.c 2012-10-07 20:22:22.414783595 +0200
|
||||||
|
@@ -1295,7 +1295,7 @@
|
||||||
|
return picture;
|
||||||
|
}
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (source,
|
||||||
|
+ cairo_surface_attach_snapshot (source,
|
||||||
|
&picture->base,
|
||||||
|
NULL);
|
||||||
|
|
||||||
|
--- cairo.orig/src/drm/cairo-drm-i915-shader.c 2012-02-02 01:48:14.000000000 +0100
|
||||||
|
+++ cairo/src/drm/cairo-drm-i915-shader.c 2012-10-07 20:22:22.416783627 +0200
|
||||||
|
@@ -1656,7 +1656,7 @@
|
||||||
|
image, &s);
|
||||||
|
|
||||||
|
if (likely (status == CAIRO_STATUS_SUCCESS)) {
|
||||||
|
- _cairo_surface_attach_snapshot (surface,
|
||||||
|
+ cairo_surface_attach_snapshot (surface,
|
||||||
|
&s->intel.drm.base,
|
||||||
|
intel_surface_detach_snapshot);
|
||||||
|
|
||||||
|
--- cairo.orig/src/drm/cairo-drm-i965-shader.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/drm/cairo-drm-i965-shader.c 2012-10-07 20:22:22.416783627 +0200
|
||||||
|
@@ -281,7 +281,7 @@
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (&image->base,
|
||||||
|
+ cairo_surface_attach_snapshot (&image->base,
|
||||||
|
&clone->intel.drm.base,
|
||||||
|
intel_surface_detach_snapshot);
|
||||||
|
|
||||||
|
@@ -567,7 +567,7 @@
|
||||||
|
if (bo->purgeable &&
|
||||||
|
! intel_bo_madvise (&device->intel, bo, I915_MADV_WILLNEED))
|
||||||
|
{
|
||||||
|
- _cairo_surface_detach_snapshot (&s->intel.drm.base);
|
||||||
|
+ cairo_surface_detach_snapshot (&s->intel.drm.base);
|
||||||
|
s = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- cairo.orig/src/drm/cairo-drm-intel-surface.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/drm/cairo-drm-intel-surface.c 2012-10-07 20:22:22.417783642 +0200
|
||||||
|
@@ -105,7 +105,7 @@
|
||||||
|
if (unlikely (image->status))
|
||||||
|
return image->status;
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (&surface->drm.base, image, surface_finish_and_destroy);
|
||||||
|
+ cairo_surface_attach_snapshot (&surface->drm.base, image, surface_finish_and_destroy);
|
||||||
|
|
||||||
|
DONE:
|
||||||
|
*image_out = (cairo_image_surface_t *) cairo_surface_reference (image);
|
||||||
|
--- cairo.orig/src/drm/cairo-drm-radeon-surface.c 2012-09-13 13:38:21.000000000 +0200
|
||||||
|
+++ cairo/src/drm/cairo-drm-radeon-surface.c 2012-10-07 20:22:22.417783642 +0200
|
||||||
|
@@ -107,7 +107,7 @@
|
||||||
|
if (unlikely (status))
|
||||||
|
return status;
|
||||||
|
|
||||||
|
- _cairo_surface_attach_snapshot (&surface->base.base, image, cairo_surface_destroy);
|
||||||
|
+ cairo_surface_attach_snapshot (&surface->base.base, image, cairo_surface_destroy);
|
||||||
|
|
||||||
|
DONE:
|
||||||
|
*image_out = (cairo_image_surface_t *) cairo_surface_reference (image);
|
||||||
|
--- cairo.orig/test/xcb-snapshot-assert.c 2012-05-24 11:15:54.000000000 +0200
|
||||||
|
+++ cairo/test/xcb-snapshot-assert.c 2012-10-07 20:22:22.417783642 +0200
|
||||||
|
@@ -68,7 +68,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
CAIRO_TEST (xcb_snapshot_assert,
|
||||||
|
- "Test a wrong _cairo_surface_attach_snapshot call",
|
||||||
|
+ "Test a wrong cairo_surface_attach_snapshot call",
|
||||||
|
"xcb", /* keywords */
|
||||||
|
NULL, /* requirements */
|
||||||
|
2, 2,
|
||||||
|
--- cairo.orig/test/xcb-stress-cache.c 2012-02-02 01:48:15.000000000 +0100
|
||||||
|
+++ cairo/test/xcb-stress-cache.c 2012-10-07 20:22:22.417783642 +0200
|
||||||
|
@@ -48,7 +48,7 @@
|
||||||
|
* already full, so a random cache entry is picked and removed.
|
||||||
|
* - The surface that was added before is picked and gets fed to
|
||||||
|
* _surface_cache_entry_destroy.
|
||||||
|
- * - This calls _cairo_surface_detach_snapshot which causes the
|
||||||
|
+ * - This calls cairo_surface_detach_snapshot which causes the
|
||||||
|
* detach_func from above to be called, so the surface is finished and the
|
||||||
|
* associated picture is FreePicture'd.
|
||||||
|
* - _composite_mask now uses a Picture that was already freed.
|
415
libcairo.spec
Normal file
415
libcairo.spec
Normal file
@ -0,0 +1,415 @@
|
|||||||
|
%if "%{stage1}" != "1"
|
||||||
|
%define with_pdf 1
|
||||||
|
%define with_glitz 1
|
||||||
|
%define with_xcb 1
|
||||||
|
%define with_svg 1
|
||||||
|
%else
|
||||||
|
%define with_pdf 1
|
||||||
|
%define with_glitz 0
|
||||||
|
%define with_xcb 0
|
||||||
|
%define with_svg 0
|
||||||
|
%endif
|
||||||
|
%define with_ps 1
|
||||||
|
|
||||||
|
%define pkgname cairo
|
||||||
|
|
||||||
|
Name: libcairo
|
||||||
|
Version: 1.12.16
|
||||||
|
Release: 3mamba
|
||||||
|
Summary: Cairo provides anti-aliased vector-based rendering for X
|
||||||
|
Group: System/Libraries
|
||||||
|
Vendor: openmamba
|
||||||
|
Distribution: openmamba
|
||||||
|
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
|
URL: http://www.cairographics.org
|
||||||
|
Source: http://cairographics.org/releases/cairo-%{version}.tar.xz
|
||||||
|
Patch0: libcairo-1.12.4-expose_snapshot.patch
|
||||||
|
License: LGPL, MPL 1.1
|
||||||
|
## AUTOBUILDREQ-BEGIN
|
||||||
|
BuildRequires: glibc-devel
|
||||||
|
BuildRequires: libbinutils-devel
|
||||||
|
BuildRequires: libbzip2-devel
|
||||||
|
BuildRequires: libEGL-devel
|
||||||
|
BuildRequires: libexpat-devel
|
||||||
|
BuildRequires: libfontconfig-devel
|
||||||
|
BuildRequires: libfreetype-devel
|
||||||
|
BuildRequires: libgcc
|
||||||
|
BuildRequires: libGL-devel
|
||||||
|
BuildRequires: libglib-devel
|
||||||
|
BuildRequires: liblzo-devel
|
||||||
|
BuildRequires: libpixman-devel
|
||||||
|
BuildRequires: libpng-devel
|
||||||
|
BuildRequires: libpthread-stubs-devel
|
||||||
|
BuildRequires: libX11-devel
|
||||||
|
BuildRequires: libXau-devel
|
||||||
|
%if %{with_xcb}
|
||||||
|
BuildRequires: libxcb-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: libXdmcp-devel
|
||||||
|
BuildRequires: libXext-devel
|
||||||
|
BuildRequires: libXrender-devel
|
||||||
|
BuildRequires: libz-devel
|
||||||
|
## AUTOBUILDREQ-END
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
%if %{with_ps}
|
||||||
|
BuildRequires: libspectre-devel
|
||||||
|
%endif
|
||||||
|
%if %{with_pdf}
|
||||||
|
BuildRequires: libpoppler-devel
|
||||||
|
%endif
|
||||||
|
%if %{with_svg}
|
||||||
|
BuildRequires: librsvg-devel
|
||||||
|
%endif
|
||||||
|
Provides: %{pkgname} = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||||||
|
#checking for GLITZ_AGL... no
|
||||||
|
#no
|
||||||
|
#checking for GLITZ_EGL... no
|
||||||
|
#no
|
||||||
|
#checking for GLITZ_GLX... yes
|
||||||
|
#checking for GLITZ_WGL... no
|
||||||
|
|
||||||
|
#cairo (version 1.10.2 [release]) will be compiled with:
|
||||||
|
|
||||||
|
#The following surface backends:
|
||||||
|
# Image: yes (always builtin)
|
||||||
|
# Recording: yes (always builtin)
|
||||||
|
# Tee: yes
|
||||||
|
# XML: no (disabled, use --enable-xml to enable)
|
||||||
|
# Skia: no (disabled, use --enable-skia to enable)
|
||||||
|
# Xlib: yes
|
||||||
|
# Xlib Xrender: yes
|
||||||
|
# Qt: no (disabled, use --enable-qt to enable)
|
||||||
|
# Quartz: no (requires CoreGraphics framework)
|
||||||
|
# Quartz-image: no (disabled, use --enable-quartz-image to enable)
|
||||||
|
# XCB: yes
|
||||||
|
# Win32: no (requires a Win32 platform)
|
||||||
|
# OS2: no (disabled, use --enable-os2 to enable)
|
||||||
|
# CairoScript: no (disabled, use --enable-script to enable)
|
||||||
|
# PostScript: yes
|
||||||
|
# PDF: yes
|
||||||
|
# SVG: yes
|
||||||
|
# OpenGL: no (disabled, use --enable-gl to enable)
|
||||||
|
# BeOS: no (disabled, use --enable-beos to enable)
|
||||||
|
# DirectFB: no (disabled, use --enable-directfb to enable)
|
||||||
|
# OpenVG: no (disabled, use --enable-vg to enable)
|
||||||
|
# DRM: no (disabled, use --enable-drm to enable)
|
||||||
|
|
||||||
|
#The following font backends:
|
||||||
|
# User: yes (always builtin)
|
||||||
|
# FreeType: yes
|
||||||
|
# Fontconfig: yes
|
||||||
|
# Win32: no (requires a Win32 platform)
|
||||||
|
# Quartz: no (requires CoreGraphics framework)
|
||||||
|
|
||||||
|
#The following functions:
|
||||||
|
# PNG functions: yes
|
||||||
|
# GLEW functions: no (not required by any backend)
|
||||||
|
# GLX functions: no (not required by any backend)
|
||||||
|
# WGL functions: no (not required by any backend)
|
||||||
|
# EGL functions: no (not required by any backend)
|
||||||
|
# X11-xcb functions: no (disabled, use --enable-xlib-xcb to enable)
|
||||||
|
# XCB-drm functions: no (disabled, use --enable-xcb-drm to enable)
|
||||||
|
# XCB-shm functions: yes
|
||||||
|
# DRM-Xr functions: no (disabled, use --enable-drm-xr to enable)
|
||||||
|
|
||||||
|
#The following features and utilities:
|
||||||
|
# cairo-trace: yes
|
||||||
|
# cairo-script-interpreter: yes
|
||||||
|
|
||||||
|
#And the following internal features:
|
||||||
|
# pthread: yes
|
||||||
|
# gtk-doc: yes
|
||||||
|
# gcov support: no
|
||||||
|
# symbol-lookup: yes
|
||||||
|
# test surfaces: no (disabled, use --enable-test-surfaces to enable)
|
||||||
|
# ps testing: yes
|
||||||
|
# pdf testing: yes
|
||||||
|
# svg testing: yes
|
||||||
|
|
||||||
|
#--- The tee surface backend feature is still under active development and is
|
||||||
|
#--- included in this release only as a preview. It does NOT fully work yet
|
||||||
|
#--- and incompatible changes may yet be made to tee surface backend specific
|
||||||
|
#--- API.
|
||||||
|
|
||||||
|
%description
|
||||||
|
Cairo is a 2D graphics library with support for multiple output devices.
|
||||||
|
Currently supported output targets include the X Window System, win32, and image buffers.
|
||||||
|
Experimental backends include OpenGL (through glitz), Quartz, XCB, PostScript and PDF file output.
|
||||||
|
Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension).
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Static libraries and headers for %{name}
|
||||||
|
Group: Development/Libraries
|
||||||
|
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
Requires: libpixman-devel
|
||||||
|
Provides: %{pkgname}-devel = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
Cairo is a 2D graphics library with support for multiple output devices.
|
||||||
|
Currently supported output targets include the X Window System, win32, and image buffers.
|
||||||
|
Experimental backends include OpenGL (through glitz), Quartz, XCB, PostScript and PDF file output.
|
||||||
|
Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension).
|
||||||
|
|
||||||
|
This package contains static libraries and header files need for development.
|
||||||
|
|
||||||
|
%package apidocs
|
||||||
|
Summary: API documentation for %{name}
|
||||||
|
Group: Documentation
|
||||||
|
Requires: gtk-doc
|
||||||
|
|
||||||
|
%description apidocs
|
||||||
|
Cairo is a 2D graphics library with support for multiple output devices.
|
||||||
|
Currently supported output targets include the X Window System, win32, and image buffers.
|
||||||
|
Experimental backends include OpenGL (through glitz), Quartz, XCB, PostScript and PDF file output.
|
||||||
|
Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension).
|
||||||
|
|
||||||
|
This package contains the API documentation need for development.
|
||||||
|
|
||||||
|
%package tools
|
||||||
|
Summary: Development tools for %{name}
|
||||||
|
Group: System/Tools
|
||||||
|
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
|
||||||
|
%description tools
|
||||||
|
Cairo is a 2D graphics library with support for multiple output devices.
|
||||||
|
Currently supported output targets include the X Window System, win32, and image buffers.
|
||||||
|
Experimental backends include OpenGL (through glitz), Quartz, XCB, PostScript and PDF file output.
|
||||||
|
Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension).
|
||||||
|
|
||||||
|
This package contains development tools for %{name}.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n %{pkgname}-%{version}
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure \
|
||||||
|
--disable-static \
|
||||||
|
--enable-shared \
|
||||||
|
--enable-gtk-doc \
|
||||||
|
%if %{with_pdf}
|
||||||
|
--enable-pdf \
|
||||||
|
%else
|
||||||
|
--disable-pdf \
|
||||||
|
%endif
|
||||||
|
%if %{with_ps}
|
||||||
|
--enable-ps \
|
||||||
|
%else
|
||||||
|
--disable-ps \
|
||||||
|
%endif
|
||||||
|
%if %{with_glitz}
|
||||||
|
--enable-glitz \
|
||||||
|
%else
|
||||||
|
--disable-glitz \
|
||||||
|
%endif
|
||||||
|
%if %{with_xcb}
|
||||||
|
--enable-xcb \
|
||||||
|
%else
|
||||||
|
--disable-xcb \
|
||||||
|
%endif
|
||||||
|
--enable-xlib \
|
||||||
|
--enable-svg \
|
||||||
|
--enable-tee \
|
||||||
|
--enable-gobject \
|
||||||
|
--enable-gl \
|
||||||
|
--enable-glx \
|
||||||
|
--enable-egl \
|
||||||
|
--enable-ft \
|
||||||
|
--enable-fc \
|
||||||
|
--enable-xcb-shm=yes
|
||||||
|
|
||||||
|
# --enable-drm
|
||||||
|
|
||||||
|
%make -j1
|
||||||
|
|
||||||
|
#make check
|
||||||
|
# --enable-static \
|
||||||
|
|
||||||
|
%install
|
||||||
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||||||
|
%makeinstall
|
||||||
|
|
||||||
|
rm -f %{buildroot}%{_libdir}/*.la
|
||||||
|
|
||||||
|
%clean
|
||||||
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||||||
|
|
||||||
|
%post
|
||||||
|
/sbin/ldconfig
|
||||||
|
sed -i "s|%{_libdir}/libcairo.la||g" %{_libdir}/*.la
|
||||||
|
sed -i "s|%{_libdir}/libcairo-gobject.la||g" %{_libdir}/*.la
|
||||||
|
:
|
||||||
|
|
||||||
|
%postun -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-, root, root)
|
||||||
|
%{_bindir}/cairo-sphinx
|
||||||
|
%{_libdir}/%{name}.so.*
|
||||||
|
%{_libdir}/libcairo-gobject.so.*
|
||||||
|
%{_libdir}/libcairo-script-interpreter.so.*
|
||||||
|
%dir %{_libdir}/cairo
|
||||||
|
%{_libdir}/cairo/cairo-fdr.la
|
||||||
|
%{_libdir}/cairo/cairo-fdr.so
|
||||||
|
%{_libdir}/cairo/cairo-fdr.so.*
|
||||||
|
%{_libdir}/cairo/cairo-sphinx.la
|
||||||
|
%{_libdir}/cairo/cairo-sphinx.so
|
||||||
|
%{_libdir}/cairo/cairo-sphinx.so.*
|
||||||
|
%doc AUTHORS COPYING*
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%defattr(-, root, root)
|
||||||
|
%dir %{_includedir}/%{pkgname}
|
||||||
|
%{_includedir}/%{pkgname}/*.h
|
||||||
|
%{_libdir}/%{name}.so
|
||||||
|
%{_libdir}/libcairo-gobject.so
|
||||||
|
%{_libdir}/libcairo-script-interpreter.so
|
||||||
|
%{_libdir}/pkgconfig/%{pkgname}*.pc
|
||||||
|
%doc ChangeLog NEWS README
|
||||||
|
|
||||||
|
%files tools
|
||||||
|
%defattr(-, root, root)
|
||||||
|
%{_bindir}/cairo-trace
|
||||||
|
%{_libdir}/cairo/libcairo-trace.la
|
||||||
|
%{_libdir}/cairo/libcairo-trace.so
|
||||||
|
%{_libdir}/cairo/libcairo-trace.so.*
|
||||||
|
|
||||||
|
%files apidocs
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_datadir}/gtk-doc/html/%{pkgname}
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Sun Feb 16 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.16-3mamba
|
||||||
|
- rebuilt with --enable-xcb-shm=yes to ensure support is enabled event when build in chroot environment
|
||||||
|
|
||||||
|
* Fri Dec 13 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.16-2mamba
|
||||||
|
- rebuilt with binutils 2.24
|
||||||
|
|
||||||
|
* Wed Aug 28 2013 Automatic Build System <autodist@mambasoft.it> 1.12.16-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Wed Mar 27 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.14-2mamba
|
||||||
|
- binutils 2.32.2 rebuild
|
||||||
|
|
||||||
|
* Mon Feb 11 2013 Automatic Build System <autodist@mambasoft.it> 1.12.14-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Thu Jan 31 2013 Automatic Build System <autodist@mambasoft.it> 1.12.12-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Sat Jan 26 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.10-2mamba
|
||||||
|
- enable freetype and fontconfig backends
|
||||||
|
- make sure egl and glx are enabled
|
||||||
|
|
||||||
|
* Mon Jan 21 2013 Automatic Build System <autodist@mambasoft.it> 1.12.10-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Mon Nov 19 2012 Automatic Build System <autodist@mambasoft.it> 1.12.8-2mamba
|
||||||
|
- binutils 2.23.1 mass rebuild
|
||||||
|
|
||||||
|
* Sun Nov 04 2012 Automatic Build System <autodist@mambasoft.it> 1.12.8-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Wed Oct 31 2012 Automatic Build System <autodist@mambasoft.it> 1.12.6-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Sat Oct 13 2012 Automatic Build System <autodist@mambasoft.it> 1.12.4-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
- source edit (next release): added a patch to export mozilla required functions
|
||||||
|
|
||||||
|
* Fri Aug 24 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.2-2mamba
|
||||||
|
- also cleanup libcario-gobject.la from *.la files
|
||||||
|
|
||||||
|
* Sun Aug 19 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 1.12.2-1mamba
|
||||||
|
- update to 1.12.2
|
||||||
|
|
||||||
|
* Wed Nov 30 2011 Automatic Build System <autodist@mambasoft.it> 1.10.2-6mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Mon Nov 28 2011 Automatic Build System <autodist@mambasoft.it> 1.10.2-5mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Tue Oct 04 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.10.2-4mamba
|
||||||
|
- move ChangeLog and other docs to devel package
|
||||||
|
|
||||||
|
* Tue Jul 19 2011 Automatic Build System <autodist@mambasoft.it> 1.10.2-3mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Fri Feb 18 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.10.2-2mamba
|
||||||
|
- enabled svg support and drm and gl backends
|
||||||
|
|
||||||
|
* Wed Jan 26 2011 gil <puntogil@libero.it> 1.10.2-1mamba
|
||||||
|
- update to 1.10.2
|
||||||
|
- add enable-tee require by mozilla packages
|
||||||
|
|
||||||
|
* Sun Dec 26 2010 Automatic Build System <autodist@mambasoft.it> 1.10.0-2mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Mon Oct 25 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.10.0-1mamba
|
||||||
|
- update to 1.10.0
|
||||||
|
|
||||||
|
* Fri Jul 02 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.8.10-3mamba
|
||||||
|
- rebuilt with libpng 1.4
|
||||||
|
|
||||||
|
* Sat Jun 26 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.8.10-2mamba
|
||||||
|
- rebuilt to add pkgconfig provides
|
||||||
|
|
||||||
|
* Mon Feb 22 2010 Automatic Build System <autodist@mambasoft.it> 1.8.10-1mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Wed Jun 24 2009 Automatic Build System <autodist@mambasoft.it> 1.8.8-1mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Wed May 20 2009 Automatic Build System <autodist@mambasoft.it> 1.8.6-2mamba
|
||||||
|
- automatic rebuild by autodist
|
||||||
|
|
||||||
|
* Sat Feb 28 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.8.6-1mamba
|
||||||
|
- automatic update by autodist
|
||||||
|
|
||||||
|
* Mon Dec 01 2008 gil <puntogil@libero.it> 1.8.4-1mamba
|
||||||
|
- update to 1.8.4
|
||||||
|
|
||||||
|
* Fri Nov 14 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.6.4-2mamba
|
||||||
|
- added requirements to libcairo-devel
|
||||||
|
|
||||||
|
* Mon May 05 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.6.4-1mamba
|
||||||
|
- update to 1.6.4
|
||||||
|
|
||||||
|
* Sat Jun 30 2007 Stefano Cotta Ramusino <stefano.cotta@openmamba.org> 1.4.10-1mamba
|
||||||
|
- update to 1.4.10
|
||||||
|
- enabled XCB surface backend
|
||||||
|
|
||||||
|
* Tue Apr 10 2007 Tiziano Pratellesi <tiziano.pratellesi@openmamba.org> 1.4.0-1mamba
|
||||||
|
- update to version 1.4.0
|
||||||
|
|
||||||
|
* Fri Jan 05 2007 Davide Madrisan <davide.madrisan@qilinux.it> 1.2.6-2qilnx
|
||||||
|
- new subpackage apidocs with API documentation
|
||||||
|
|
||||||
|
* Thu Jan 04 2007 Davide Madrisan <davide.madrisan@qilinux.it> 1.2.6-1qilnx
|
||||||
|
- update to version 1.2.6 by autospec
|
||||||
|
- own %{_includedir}/cairo
|
||||||
|
- dropped patch against CVE-2006-0528 (merged upstream)
|
||||||
|
- updated Xorg build requirements
|
||||||
|
- enabled ps and pdf surface backends
|
||||||
|
|
||||||
|
* Wed Mar 22 2006 Davide Madrisan <davide.madrisan@qilinux.it> 1.0.2-2qilnx
|
||||||
|
- security update for CVE-2006-0528
|
||||||
|
|
||||||
|
* Thu Oct 20 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 1.0.2-1qilnx
|
||||||
|
- update to version 1.0.2 by autospec
|
||||||
|
|
||||||
|
* Thu Sep 01 2005 Davide Madrisan <davide.madrisan@qilinux.it> 1.0.0-1qilnx
|
||||||
|
- update to version 1.0.0 by autospec
|
||||||
|
|
||||||
|
* Tue Jun 28 2005 Davide Madrisan <davide.madrisan@qilinux.it> 0.5.1-3qilnx
|
||||||
|
- added missing %%post, %%postun scriptlets
|
||||||
|
- added basic documentation
|
||||||
|
- moved gtk documentation to the devel poackage
|
||||||
|
- fixed license and group
|
||||||
|
|
||||||
|
* Wed Jun 22 2005 Alessandro Ramazzina <alessandro.ramazzina@qilinux.it> 0.5.1-2qilnx
|
||||||
|
- rebuild and moved from devel-contrib repository to devel repository
|
||||||
|
|
||||||
|
* Wed Jun 22 2005 Matteo Bernasconi <voyagernm@virgilio.it> - 0.5.1-1qilnx
|
||||||
|
- first build
|
Loading…
Reference in New Issue
Block a user