Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
05e0e0bf4c | ||
|
|
887890bd4a | ||
|
|
70576db6a2 | ||
|
|
630c235008 | ||
|
|
313dac93e1 | ||
|
|
04e2e0f563 |
+25
-2
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
Name: python-matplotlib
|
Name: python-matplotlib
|
||||||
Version: 1.0.1
|
Version: 1.0.1
|
||||||
Release: 14%{?dist}
|
Release: 19%{?dist}
|
||||||
Summary: Python plotting library
|
Summary: Python plotting library
|
||||||
|
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
@@ -40,6 +40,13 @@ Patch1: matplotlib-1.0.1-noagg.patch
|
|||||||
Patch2: 0001-Bugfix-propagate-timezone-info-in-plot_date-xaxis_da.patch
|
Patch2: 0001-Bugfix-propagate-timezone-info-in-plot_date-xaxis_da.patch
|
||||||
# fix build when Tkinter doesn't return an expected value in __version__ (FTBFS)
|
# fix build when Tkinter doesn't return an expected value in __version__ (FTBFS)
|
||||||
Patch3: matplotlib-1.0.1-tkinter.patch
|
Patch3: matplotlib-1.0.1-tkinter.patch
|
||||||
|
|
||||||
|
# Fix building against libpng 1.5
|
||||||
|
# https://github.com/matplotlib/matplotlib/issues/234
|
||||||
|
# Based on:
|
||||||
|
# https://github.com/matplotlib/matplotlib/commit/45c46672648e3b4a277bf7ff42b3baf56a98bcec
|
||||||
|
Patch4: use-png-accessor-functions.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildRequires: python-devel, freetype-devel, libpng-devel, zlib-devel
|
BuildRequires: python-devel, freetype-devel, libpng-devel, zlib-devel
|
||||||
BuildRequires: pygtk2-devel, gtk2-devel
|
BuildRequires: pygtk2-devel, gtk2-devel
|
||||||
@@ -107,6 +114,7 @@ BuildRequires: python-basemap
|
|||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%patch3 -p1 -b .tkinter
|
%patch3 -p1 -b .tkinter
|
||||||
|
%patch4 -p1
|
||||||
|
|
||||||
# Remove bundled libraries
|
# Remove bundled libraries
|
||||||
rm -r agg24 lib/matplotlib//pyparsing.py
|
rm -r agg24 lib/matplotlib//pyparsing.py
|
||||||
@@ -164,7 +172,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%doc license/LICENSE_PAINT license/LICENSE_PIL
|
%doc license/LICENSE_PAINT license/LICENSE_PIL
|
||||||
%doc CHANGELOG CXX INSTALL INTERACTIVE KNOWN_BUGS
|
%doc CHANGELOG CXX INSTALL INTERACTIVE KNOWN_BUGS
|
||||||
%doc PKG-INFO TODO
|
%doc PKG-INFO TODO
|
||||||
%if 0%{?fedora} >= 9
|
%if 0%{?fedora} >= 9 || 0%{?rhel} >= 6
|
||||||
%{python_sitearch}/*egg-info
|
%{python_sitearch}/*egg-info
|
||||||
%endif
|
%endif
|
||||||
%{python_sitearch}/matplotlib/
|
%{python_sitearch}/matplotlib/
|
||||||
@@ -195,6 +203,21 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-19
|
||||||
|
- Rebuilt for c++ ABI breakage
|
||||||
|
|
||||||
|
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-18
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Dec 6 2011 David Malcolm <dmalcolm@redhat.com> - 1.0.1-17
|
||||||
|
- fix the build against libpng 1.5
|
||||||
|
|
||||||
|
* Tue Dec 6 2011 David Malcolm <dmalcolm@redhat.com> - 1.0.1-16
|
||||||
|
- fix egg-info conditional for RHEL
|
||||||
|
|
||||||
|
* Tue Dec 06 2011 Adam Jackson <ajax@redhat.com> - 1.0.1-15
|
||||||
|
- Rebuild for new libpng
|
||||||
|
|
||||||
* Mon Oct 31 2011 Dan Horák <dan[at]danny.cz> - 1.0.1-14
|
* Mon Oct 31 2011 Dan Horák <dan[at]danny.cz> - 1.0.1-14
|
||||||
- fix build with new Tkinter which doesn't return an expected value in __version__
|
- fix build with new Tkinter which doesn't return an expected value in __version__
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,79 @@
|
|||||||
|
diff -up matplotlib-1.0.1/CHANGELOG.png15 matplotlib-1.0.1/CHANGELOG
|
||||||
|
diff -up matplotlib-1.0.1/doc/users/installing.rst.png15 matplotlib-1.0.1/doc/users/installing.rst
|
||||||
|
--- matplotlib-1.0.1/doc/users/installing.rst.png15 2010-07-06 21:41:46.000000000 -0400
|
||||||
|
+++ matplotlib-1.0.1/doc/users/installing.rst 2011-12-06 16:29:05.824621532 -0500
|
||||||
|
@@ -138,7 +138,7 @@ libraries themselves.
|
||||||
|
array support for python (`download
|
||||||
|
<http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=175103>`__)
|
||||||
|
|
||||||
|
-libpng 1.1 (or later)
|
||||||
|
+libpng 1.2 (or later)
|
||||||
|
library for loading and saving :term:`PNG` files (`download
|
||||||
|
<http://www.libpng.org/pub/png/libpng.html>`__). libpng requires
|
||||||
|
zlib. If you are a windows user, you can ignore this since we
|
||||||
|
diff -up matplotlib-1.0.1/src/_png.cpp.png15 matplotlib-1.0.1/src/_png.cpp
|
||||||
|
--- matplotlib-1.0.1/src/_png.cpp.png15 2010-10-12 12:14:42.000000000 -0400
|
||||||
|
+++ matplotlib-1.0.1/src/_png.cpp 2011-12-06 16:29:05.825621532 -0500
|
||||||
|
@@ -350,10 +350,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)
|
||||||
|
@@ -361,7 +361,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) &&
|
||||||
|
+ 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);
|
||||||
|
@@ -374,13 +374,13 @@ _png_module::read_png(const Py::Tuple& a
|
||||||
|
}
|
||||||
|
|
||||||
|
// 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);
|
||||||
|
}
|
||||||
|
@@ -408,11 +408,11 @@ _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
|
||||||
|
}
|
||||||
|
@@ -421,7 +421,8 @@ _png_module::read_png(const Py::Tuple& a
|
||||||
|
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(
|
||||||
Reference in New Issue
Block a user