summaryrefslogtreecommitdiff
path: root/graphics/py-matplotlib
diff options
context:
space:
mode:
authormarkd <markd>2011-02-06 08:57:07 +0000
committermarkd <markd>2011-02-06 08:57:07 +0000
commite9d99db869c0347dc0d1a303dc38d77ede5bff56 (patch)
treee4b621a53b933c732e79b330e85321e8104f2cc3 /graphics/py-matplotlib
parent3fa7220542555cae234ca2cb65a5327c96e1cf5e (diff)
downloadpkgsrc-e9d99db869c0347dc0d1a303dc38d77ede5bff56.tar.gz
Fix build with png 1.5
Diffstat (limited to 'graphics/py-matplotlib')
-rw-r--r--graphics/py-matplotlib/distinfo4
-rw-r--r--graphics/py-matplotlib/patches/patch-ab68
2 files changed, 69 insertions, 3 deletions
diff --git a/graphics/py-matplotlib/distinfo b/graphics/py-matplotlib/distinfo
index 494ae7551c8..69d67848c44 100644
--- a/graphics/py-matplotlib/distinfo
+++ b/graphics/py-matplotlib/distinfo
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.11 2010/06/13 22:44:42 wiz Exp $
+$NetBSD: distinfo,v 1.12 2011/02/06 08:57:07 markd Exp $
SHA1 (matplotlib-0.99.1.2.tar.gz) = c3f9053a8522e2541d93ee55e8b447165708ac15
RMD160 (matplotlib-0.99.1.2.tar.gz) = 11daee415102dff944d9c45de22c48c83e76dde7
Size (matplotlib-0.99.1.2.tar.gz) = 11940390 bytes
SHA1 (patch-aa) = 1f900684fec67a895fc1999f72d5c164376b40a6
-SHA1 (patch-ab) = fb7b689a2766c6221a994882fbf9b8942a4f94f9
+SHA1 (patch-ab) = bc711f6b594813672aead4cfec52eacbaff308fb
diff --git a/graphics/py-matplotlib/patches/patch-ab b/graphics/py-matplotlib/patches/patch-ab
index ad54e2964df..ceac7d65efe 100644
--- a/graphics/py-matplotlib/patches/patch-ab
+++ b/graphics/py-matplotlib/patches/patch-ab
@@ -1,7 +1,73 @@
-$NetBSD: patch-ab,v 1.3 2010/06/13 22:44:42 wiz Exp $
+$NetBSD: patch-ab,v 1.4 2011/02/06 08:57:07 markd Exp $
+
+Fix build with png 1.5
--- src/_png.cpp.orig 2009-08-01 19:14:01.000000000 +0000
+++ src/_png.cpp
+@@ -122,7 +122,7 @@ Py::Object _png_module::write_png(const
+ throw Py::RuntimeError("Could not create info struct");
+ }
+
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ throw Py::RuntimeError("Error building image");
+ }
+
+@@ -210,10 +210,10 @@ _png_module::read_png(const Py::Tuple& a
+ png_set_sig_bytes(png_ptr, 8);
+ png_read_info(png_ptr, info_ptr);
+
+- png_uint_32 width = info_ptr->width;
+- png_uint_32 height = info_ptr->height;
++ png_uint_32 width = png_get_image_width(png_ptr, info_ptr);
++ png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
+
+- int bit_depth = info_ptr->bit_depth;
++ int bit_depth = png_get_bit_depth(png_ptr, info_ptr);
+
+ // Unpack 1, 2, and 4-bit images
+ if (bit_depth < 8)
+@@ -221,7 +221,7 @@ _png_module::read_png(const Py::Tuple& a
+
+ // If sig bits are set, shift data
+ png_color_8p sig_bit;
+- if ((info_ptr->color_type != PNG_COLOR_TYPE_PALETTE) && png_get_sBIT(png_ptr, info_ptr, &sig_bit))
++ if ((png_get_color_type(png_ptr, info_ptr) != PNG_COLOR_TYPE_PALETTE) && png_get_sBIT(png_ptr, info_ptr, &sig_bit))
+ png_set_shift(png_ptr, sig_bit);
+
+ // Convert big endian to little
+@@ -229,11 +229,11 @@ _png_module::read_png(const Py::Tuple& a
+ png_set_swap(png_ptr);
+
+ // Convert palletes to full RGB
+- if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_PALETTE)
+ png_set_palette_to_rgb(png_ptr);
+
+ // If there's an alpha channel convert gray to RGB
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY_ALPHA)
+ png_set_gray_to_rgb(png_ptr);
+
+ png_set_interlace_handling(png_ptr);
+@@ -254,14 +254,14 @@ _png_module::read_png(const Py::Tuple& a
+ npy_intp dimensions[3];
+ dimensions[0] = height; //numrows
+ dimensions[1] = width; //numcols
+- if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
++ if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA)
+ dimensions[2] = 4; //RGBA images
+- else if (info_ptr->color_type & PNG_COLOR_MASK_COLOR)
++ else if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_COLOR)
+ dimensions[2] = 3; //RGB images
+ else
+ dimensions[2] = 1; //Greyscale images
+ //For gray, return an x by y array, not an x by y by 1
+- int num_dims = (info_ptr->color_type & PNG_COLOR_MASK_COLOR) ? 3 : 2;
++ int num_dims = (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_COLOR) ? 3 : 2;
+
+ double max_value = (1 << ((bit_depth < 8) ? 8 : bit_depth)) - 1;
+ PyArrayObject *A = (PyArrayObject *) PyArray_SimpleNew(num_dims, dimensions, PyArray_FLOAT);
@@ -290,7 +290,7 @@ _png_module::read_png(const Py::Tuple& a
//free the png memory