diff options
Diffstat (limited to 'abs/core/pycairo')
-rw-r--r-- | abs/core/pycairo/PKGBUILD | 19 | ||||
-rw-r--r-- | abs/core/pycairo/pycairo-1.8.0-threading.diff | 67 |
2 files changed, 78 insertions, 8 deletions
diff --git a/abs/core/pycairo/PKGBUILD b/abs/core/pycairo/PKGBUILD index 283ed43..51fa905 100644 --- a/abs/core/pycairo/PKGBUILD +++ b/abs/core/pycairo/PKGBUILD @@ -1,21 +1,24 @@ -# $Id: PKGBUILD 1020 2008-04-27 18:50:59Z jgc $ +# $Id: PKGBUILD 23420 2009-01-10 05:29:10Z allan $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=pycairo -pkgver=1.4.12 -pkgrel=1 +pkgver=1.8.0 +pkgrel=2 pkgdesc="Python bindings for the cairo graphics library" arch=(i686 x86_64) license=('LGPL' 'MPL') -depends=('python>=2.5' 'cairo>=1.6.4') +depends=('python' 'cairo>=1.8.6') options=('!libtool') -source=(http://cairographics.org/releases/${pkgname}-${pkgver}.tar.gz) +source=(http://cairographics.org/releases/${pkgname}-${pkgver}.tar.gz + pycairo-1.8.0-threading.diff) url="http://www.cairographics.org/" -md5sums=('c63199d35b1e1d3c5133509f315f70d7') +md5sums=('847f5377c32228a656819f5bd18eb6b4' + '5259928a3d58750d5c54af60d71f2493') build() { - cd ${startdir}/src/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}"/pycairo-1.8.0-threading.diff || return 1 ./configure --prefix=/usr || return 1 make || return 1 - make DESTDIR=${startdir}/pkg install || return 1 + make DESTDIR="${pkgdir}" install || return 1 } diff --git a/abs/core/pycairo/pycairo-1.8.0-threading.diff b/abs/core/pycairo/pycairo-1.8.0-threading.diff new file mode 100644 index 0000000..ce1a80f --- /dev/null +++ b/abs/core/pycairo/pycairo-1.8.0-threading.diff @@ -0,0 +1,67 @@ +diff -Naur pycairo-1.8.0-old/cairo/pycairo-surface.c pycairo-1.8.0/cairo/pycairo-surface.c +--- pycairo-1.8.0-old/cairo/pycairo-surface.c 2008-12-10 17:41:16.000000000 +1000 ++++ pycairo-1.8.0/cairo/pycairo-surface.c 2009-01-10 15:08:36.000000000 +1000 +@@ -310,10 +310,10 @@ + return NULL; + } + Py_DECREF(writer); +- Py_BEGIN_ALLOW_THREADS ++ /*Py_BEGIN_ALLOW_THREADS*/ /*seg faults reported*/ + status = cairo_surface_write_to_png_stream (o->surface, _write_func, + file); +- Py_END_ALLOW_THREADS ++ /*Py_END_ALLOW_THREADS*/ + } + RETURN_NULL_IF_CAIRO_ERROR(status); + Py_RETURN_NONE; +@@ -505,9 +505,9 @@ + } + Py_DECREF(reader); + +- Py_BEGIN_ALLOW_THREADS ++ /*Py_BEGIN_ALLOW_THREADS*/ /*seg faults reported*/ + is = cairo_image_surface_create_from_png_stream (_read_func, file); +- Py_END_ALLOW_THREADS ++ /*Py_END_ALLOW_THREADS*/ + return PycairoSurface_FromSurface (is, NULL); + } + #endif /* CAIRO_HAS_PNG_FUNCTIONS */ +@@ -712,10 +712,10 @@ + } + Py_DECREF(writer); + +- Py_BEGIN_ALLOW_THREADS ++ /*Py_BEGIN_ALLOW_THREADS*/ /*seg faults reported*/ + sfc = cairo_pdf_surface_create_for_stream (_write_func, file, + width_in_points, height_in_points); +- Py_END_ALLOW_THREADS ++ /*Py_END_ALLOW_THREADS*/ + return PycairoSurface_FromSurface (sfc, file); + } + +@@ -818,10 +818,10 @@ + } + Py_DECREF(writer); + +- Py_BEGIN_ALLOW_THREADS ++ /*Py_BEGIN_ALLOW_THREADS*/ /*seg faults reported*/ + sfc = cairo_ps_surface_create_for_stream (_write_func, file, + width_in_points, height_in_points); +- Py_END_ALLOW_THREADS ++ /*Py_END_ALLOW_THREADS*/ + return PycairoSurface_FromSurface (sfc, file); + } + +@@ -1010,10 +1010,10 @@ + } + Py_DECREF(writer); + +- Py_BEGIN_ALLOW_THREADS ++ /*Py_BEGIN_ALLOW_THREADS*/ /*seg faults reported*/ + sfc = cairo_svg_surface_create_for_stream (_write_func, file, + width_in_points, height_in_points); +- Py_END_ALLOW_THREADS ++ /*Py_END_ALLOW_THREADS*/ + return PycairoSurface_FromSurface (sfc, file); + } + |