Compare commits

...

23 Commits
f21 ... f22

Author SHA1 Message Date
Thomas Spura
53aef6c52e Remove spurious Provides: bundled(agg) 2016-04-04 13:28:22 +02:00
Thomas Spura
8e6fb6a047 Require the qt5 subpackage from the qt4 subpackage (#1219556) 2016-04-04 12:40:34 +02:00
Thomas Spura
95c4d0eaf5 Use bundled version of agg
This was discussed in bug #1276806 and the agg package (which is incompatible
to matplotlib's version anyway) will be retired.
2016-04-04 12:33:40 +02:00
Thomas Spura
cfae272b51 Use github sources in generate-tarball 2016-04-04 12:29:44 +02:00
Fedora Release Engineering
c901c6602b - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 20:08:25 +00:00
Thomas Spura
96f1b73a85 Fix another requires of the main package 2016-01-13 10:37:45 +01:00
Thomas Spura
e065ba8c72 Bump release 2016-01-07 19:16:00 +01:00
Thomas Spura
108153e46c Fix requiring the correct backend from the main package 2016-01-07 19:14:44 +01:00
Thomas Spura
69fbdf849b regenerate tarball to exclude lena image (#1295174) 2016-01-07 10:50:10 +01:00
Thomas Spura
a0ff1b7b0d Add python2 subpackages and use python_provide 2015-11-15 14:45:49 +01:00
Thomas Spura
a9a2c96250 Replace tabs with spaces 2015-11-15 14:16:29 +01:00
Thomas Spura
5ddd160fd3 Pick upstream patch for fixing the gdk backend #1231748 2015-11-15 14:15:25 +01:00
Peter Robinson
13c730c10e - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 2015-11-10 16:21:49 +00:00
Dennis Gilmore
13ef95ae8f - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild 2015-06-18 19:53:45 +00:00
Kalev Lember
b7fd65cd9f Rebuilt for GCC 5 C++11 ABI change 2015-05-02 16:58:37 +02:00
Zbigniew Jędrzejewski-Szmek
b9a2f5516d Modernize macro usage 2015-02-26 00:19:20 -05:00
Zbigniew Jędrzejewski-Szmek
9411cfc02e Use one dir for Python 2 and 3 builds
Because of __pycache__ and .so suffix in Python 3, nothing should conflict.
2015-02-26 00:19:20 -05:00
Zbigniew Jędrzejewski-Szmek
9c2074e497 Split out more backend subpackages 2015-02-25 23:42:38 -05:00
Zbigniew Jędrzejewski-Szmek
732ad8bbfe Simplify ifdeffery a bit 2015-02-25 21:38:17 -05:00
Zbigniew Jędrzejewski-Szmek
8c9cc20e2a Use %license 2015-02-25 00:16:39 -05:00
Zbigniew Jędrzejewski-Szmek
76883b8317 Add dependency on python-scikit-image, dot, tex-preview
It seems to be used in documentation generation.
2015-02-25 00:16:19 -05:00
Zbigniew Jędrzejewski-Szmek
98dd5e3da2 New sources 2015-02-24 23:07:02 -05:00
Zbigniew Jędrzejewski-Szmek
dd3b8abfa9 Pull in changes from https://github.com/QuLogic/rpmbuild-specs 2015-02-24 22:17:01 -05:00
12 changed files with 375 additions and 273 deletions

2
.gitignore vendored
View File

@@ -4,3 +4,5 @@ matplotlib-1.0.0-without-gpc.tar.gz
/matplotlib-1.2.0-without-gpc.tar.gz
/matplotlib-1.3.0-without-gpc.tar.xz
/matplotlib-1.3.1-without-gpc.tar.xz
/matplotlib-1.4.3-without-gpc.tar.xz
/matplotlib-1.4.3-without-extern.tar.xz

View File

@@ -4,7 +4,7 @@ Author: Sandro Tosi <morph@debian.org>
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -607,10 +607,12 @@ def _get_data_path():
@@ -658,10 +658,12 @@ def _get_data_path():
raise RuntimeError('Path in environment MATPLOTLIBDATA not a directory')
return path
@@ -18,8 +18,8 @@ Author: Sandro Tosi <morph@debian.org>
# setuptools' namespace_packages may highjack this init file
# so need to try something known to be in matplotlib, not basemap
import matplotlib.afm
@@ -727,7 +729,7 @@ def matplotlib_fname():
_get_xdg_config_dir())
@@ -786,7 +788,7 @@ def matplotlib_fname():
home, '.matplotlib', 'matplotlibrc')
return fname
- path = get_data_path() # guaranteed to exist or raise

View File

@@ -3,7 +3,7 @@ Author: Jakub Wilk <jwilk@debian.org>
--- a/doc/api/api_changes.rst
+++ b/doc/api/api_changes.rst
@@ -919,7 +919,7 @@ New methods:
@@ -1143,7 +1143,7 @@ New methods:
* :meth:`draw_markers(self, gc, marker_path, marker_trans, path,
trans, rgbFace)

View File

@@ -16,8 +16,9 @@ Description: don't separate param and its argument with a space
+ :param ny,ny1: same as nx and nx1, but for row positions.
"""
@@ -253,12 +253,12 @@ class Divider(object):
figW, figH = self._fig.get_size_inches()
@@ -250,12 +250,12 @@ class Divider(object):
(:class:`mpl_toolkits.axes_grid.axes_divider.AxesLocator`) for
specified cell.
@@ -32,7 +33,7 @@ Description: don't separate param and its argument with a space
"""
return AxesLocator(self, nx, ny, nx1, ny1)
@@ -299,12 +299,12 @@ class AxesLocator(object):
@@ -298,12 +298,12 @@ class AxesLocator(object):
"""
:param axes_divider: An instance of AxesDivider class.

View File

@@ -1,111 +0,0 @@
Description: deal with the case where there are no writable directories.
Author: Michael Droettboom <mdboom@gmail.com>
Bug-Debian: http://bugs.debian.org/719384
Origin: https://github.com/mdboom/matplotlib/commit/1e8d592ed0439ac6fe8fc08d5efe522799acf4fe
Reviewed-By: Anton Gladky <gladk@debian.org>
Last-Update: 2013-09-29
--- matplotlib-1.3.0.orig/lib/matplotlib/font_manager.py
+++ matplotlib-1.3.0/lib/matplotlib/font_manager.py
@@ -1324,6 +1324,8 @@ if USE_FONTCONFIG and sys.platform != 'w
return result
else:
+ _fmcache = None
+
if not 'TRAVIS' in os.environ:
cachedir = get_cachedir()
if cachedir is not None:
@@ -1331,8 +1333,6 @@ else:
_fmcache = os.path.join(cachedir, 'fontList.py3k.cache')
else:
_fmcache = os.path.join(cachedir, 'fontList.cache')
- else:
- _fmcache = None
fontManager = None
--- matplotlib-1.3.0.orig/lib/matplotlib/__init__.py
+++ matplotlib-1.3.0/lib/matplotlib/__init__.py
@@ -518,7 +518,11 @@ def _get_xdg_config_dir():
base directory spec
<http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_.
"""
- return os.environ.get('XDG_CONFIG_HOME', os.path.join(get_home(), '.config'))
+ home = get_home()
+ if home is None:
+ return None
+ else:
+ return os.environ.get('XDG_CONFIG_HOME', os.path.join(home, '.config'))
def _get_xdg_cache_dir():
@@ -527,7 +531,11 @@ def _get_xdg_cache_dir():
base directory spec
<http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_.
"""
- return os.environ.get('XDG_CACHE_HOME', os.path.join(get_home(), '.cache'))
+ home = get_home()
+ if home is None:
+ return None
+ else:
+ return os.environ.get('XDG_CACHE_HOME', os.path.join(home, '.cache'))
def _get_config_or_cache_dir(xdg_base):
@@ -543,22 +551,28 @@ def _get_config_or_cache_dir(xdg_base):
return _create_tmp_config_dir()
return configdir
+ p = None
h = get_home()
- p = os.path.join(h, '.matplotlib')
- if (sys.platform.startswith('linux') and
- not os.path.exists(p)):
- p = os.path.join(xdg_base, 'matplotlib')
-
- if os.path.exists(p):
- if not _is_writable_dir(p):
- return _create_tmp_config_dir()
- else:
- try:
- mkdirs(p)
- except OSError:
- return _create_tmp_config_dir()
+ if h is not None:
+ p = os.path.join(h, '.matplotlib')
+ if (sys.platform.startswith('linux') and
+ not os.path.exists(p) and
+ xdg_base is not None):
+ p = os.path.join(xdg_base, 'matplotlib')
+
+ if p is not None:
+ if os.path.exists(p):
+ if _is_writable_dir(p):
+ return p
+ else:
+ try:
+ mkdirs(p)
+ except OSError:
+ pass
+ else:
+ return p
- return p
+ return _create_tmp_config_dir()
def _get_configdir():
@@ -716,9 +730,11 @@ def matplotlib_fname():
if configdir is not None:
fname = os.path.join(configdir, 'matplotlibrc')
if os.path.exists(fname):
+ home = get_home()
if (sys.platform.startswith('linux') and
+ home is not None and
fname == os.path.join(
- get_home(), '.matplotlib', 'matplotlibrc')):
+ home, '.matplotlib', 'matplotlibrc')):
warnings.warn(
"Found matplotlib configuration in ~/.matplotlib/. "
"To conform with the XDG base directory standard, "

View File

@@ -8,7 +8,7 @@ Last-Update: 2013-10-06
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/lib/matplotlib/pyplot.py
+++ b/lib/matplotlib/pyplot.py
@@ -289,7 +289,7 @@ def xkcd(scale=1, length=100, randomness
@@ -301,7 +301,7 @@ def xkcd(scale=1, length=100, randomness
from matplotlib import patheffects
context = rc_context()
try:

View File

@@ -6,14 +6,16 @@ version=$1
dir=matplotlib-${version}
file=matplotlib-${version}.tar.gz
result=matplotlib-${version}-without-gpc.tar.xz
file=v${version}.tar.gz
result=matplotlib-${version}-without-extern.tar.xz
wget -vc http://downloads.sourceforge.net/matplotlib/$file
test -f $file || wget -v https://github.com/matplotlib/matplotlib/archive/$file
rm -rf matplotlib-${version}
tar xzf $file
rm matplotlib-${version}/agg24/include/agg_conv_gpc.h
rm -vr matplotlib-${version}/extern/qhull
rm -vr matplotlib-${version}/lib/matplotlib/mpl-data/sample_data/lena.*
rm -f $result
tar cJf $result $dir

View File

@@ -0,0 +1,32 @@
From 2e445c2c4f66f1e0de9779a3fd966aaf8d8ed2c5 Mon Sep 17 00:00:00 2001
From: Thomas A Caswell <tcaswell@gmail.com>
Date: Sun, 17 May 2015 23:45:44 -0400
Subject: [PATCH] Merge pull request #4439 from tswsl1989/restrict_dict_gdk
FIX : Import cbook.restrict_dict into backend_gdk
---
lib/matplotlib/backends/backend_gdk.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/matplotlib/backends/backend_gdk.py b/lib/matplotlib/backends/backend_gdk.py
index fc705fe..024c27e 100644
--- a/lib/matplotlib/backends/backend_gdk.py
+++ b/lib/matplotlib/backends/backend_gdk.py
@@ -26,7 +26,7 @@ def fn_name(): return sys._getframe(1).f_code.co_name
from matplotlib._pylab_helpers import Gcf
from matplotlib.backend_bases import RendererBase, GraphicsContextBase, \
FigureManagerBase, FigureCanvasBase
-from matplotlib.cbook import is_string_like
+from matplotlib.cbook import is_string_like, restrict_dict
from matplotlib.figure import Figure
from matplotlib.mathtext import MathTextParser
from matplotlib.transforms import Affine2D
@@ -477,7 +477,7 @@ def _print_image(self, filename, format, *args, **kwargs):
# set the default quality, if we are writing a JPEG.
# http://www.pygtk.org/docs/pygtk/class-gdkpixbuf.html#method-gdkpixbuf--save
- options = cbook.restrict_dict(kwargs, ['quality'])
+ options = restrict_dict(kwargs, ['quality'])
if format in ['jpg','jpeg']:
if 'quality' not in options:
options['quality'] = rcParams['savefig.jpeg_quality']

View File

@@ -1,13 +1,20 @@
--- setupext.py.orig 2013-08-02 09:39:43.914247832 +0200
+++ setupext.py 2013-08-02 09:40:14.785304342 +0200
@@ -749,22 +749,7 @@
@@ -914,28 +914,13 @@ class LibAgg(SetupPackage):
self.__class__.found_external = True
try:
return self._check_for_pkg_config(
- 'libagg', 'agg2/agg_basics.h', min_version='PATCH')
+ 'libagg', 'agg2/agg_basics.h', min_version='2.5.0')
except CheckFailed as e:
self.__class__.found_external = False
return str(e) + ' Using local copy.'
def add_flags(self, ext):
- if self.found_external:
- pkg_config.setup_extension(ext, 'libagg')
- else:
- ext.include_dirs.append('agg24/include')
- ext.include_dirs.append('extern/agg24/include')
- agg_sources = [
- 'agg_bezier_arc.cpp',
- 'agg_curves.cpp',
@@ -19,7 +26,7 @@
- 'agg_vpgen_segmentator.cpp'
- ]
- ext.sources.extend(
- os.path.join('agg24', 'src', x) for x in agg_sources)
- os.path.join('extern', 'agg24', 'src', x) for x in agg_sources)
+ pkg_config.setup_extension(ext, 'libagg', default_include_dirs=["/usr/include/agg2"])

View File

@@ -1,15 +1,18 @@
--- setupext.py.orig 2014-01-25 15:06:39.460916454 +0100
+++ setupext.py 2014-01-25 15:06:53.080946205 +0100
@@ -768,12 +768,6 @@
@@ -841,15 +841,6 @@
name = 'pycxx'
def check(self):
- if sys.version_info[0] >= 3:
- if PY3:
- # There is no version of PyCXX in the wild that will work
- # with Python 3.x
- # with Python 3.x and matplotlib, since they lack support
- # for the buffer object.
- self.__class__.found_external = False
- return ("Official versions of PyCXX are not compatible with "
- "Python 3.x. Using local copy")
- return ("Official versions of PyCXX are not compatible "
- "with matplotlib on Python 3.x, since they lack "
- "support for the buffer object. Using local "
- "copy")
self.__class__.found_external = True
old_stdout = sys.stdout

View File

@@ -4,7 +4,7 @@
%else
%global with_python3 0
%endif
%global __provides_exclude_from .*/site-packages/.*\\.so$
%global __provides_exclude_from .*/site-packages/.*\\.so$
%global with_html 1
%global run_tests 0
@@ -15,26 +15,45 @@
%global with_wx 1
%endif
# On Fedora 21 onwards, enable Qt5 backend:
%if 0%{?fedora} >= 21
%global with_qt5 1
%else
%global with_qt5 0
%endif
# the default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
# CocoaAgg MacOSX Qt4Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
# CocoaAgg MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
%global backend TkAgg
%if "%{backend}" == "TkAgg"
%global backend_subpackage tk
%else
% if "%{backend}" == "Qt4Agg"
%global backend_subpackage qt4
% else
% if "%{backend}" == "Qt5Agg"
%global backend_subpackage qt5
% endif
% endif
%endif
# https://fedorahosted.org/fpc/ticket/381
%global with_bundled_fonts 1
# Use the same directory of the main package for subpackage licence and docs
%global _docdir_fmt %{name}
Name: python-matplotlib
Version: 1.3.1
Release: 7%{?dist}
Version: 1.4.3
Release: 13%{?dist}
Summary: Python 2D plotting library
Group: Development/Libraries
# qt4_editor backend is MIT
License: Python and MIT
URL: http://matplotlib.org
#Modified Sources to remove the one undistributable file
#See generate-tarball.sh in fedora cvs repository for logic
#sha1sum matplotlib-1.2.0-without-gpc.tar.gz
#92ada4ef4e7374d67e46e30bfb08c3fed068d680 matplotlib-1.2.0-without-gpc.tar.gz
Source0: matplotlib-%{version}-without-gpc.tar.xz
#Modified Sources to remove the bundled libraries
Source0: matplotlib-%{version}-without-extern.tar.xz
Source1: setup.cfg
Patch0: %{name}-noagg.patch
@@ -42,22 +61,22 @@ Patch1: %{name}-system-cxx.patch
Patch2: 20_matplotlibrc_path_search_fix.patch
Patch3: 40_bts608939_draw_markers_description.patch
Patch4: 50_bts608942_spaces_in_param_args.patch
Patch5: 60_deal_with_no_writable_dirs.patch
Patch6: 70_bts720549_try_StayPuft_for_xkcd.patch
Patch5: 70_bts720549_try_StayPuft_for_xkcd.patch
Patch6: matplotlib-1.4.3-cbook.restrict_dict.patch
BuildRequires: agg-devel
BuildRequires: freetype-devel
BuildRequires: gtk2-devel
BuildRequires: libpng-devel
BuildRequires: qhull-devel
BuildRequires: python-six
BuildRequires: numpy
BuildRequires: pycairo-devel
BuildRequires: pygtk2-devel
BuildRequires: pyparsing
BuildRequires: python-pycxx-devel
BuildRequires: python-dateutil
BuildRequires: python-setuptools
%if %{with_html}
BuildRequires: python-numpydoc
BuildRequires: python-scikit-image
%endif
%if %{run_tests}
BuildRequires: python-nose
@@ -69,29 +88,6 @@ BuildRequires: python2-devel
BuildRequires: pytz
BuildRequires: xorg-x11-server-Xvfb
BuildRequires: zlib-devel
Requires: dejavu-sans-fonts
Requires: dvipng
Requires: numpy
Requires: pycairo
Requires: pygtk2
Requires: pyparsing
Requires: python-dateutil
Requires: pytz
%if 0%{?fedora} >= 18
Requires: stix-math-fonts
%else
Requires: stix-fonts
%endif
Requires: %{name}-data = %{version}-%{release}
# GTKAgg does not require extra subpackages, but does not work with python3
%if "%{backend}" == "TkAgg"
Requires: %{name}-tk%{?_isa} = %{version}-%{release}
%else
% if "%{backend}" == "Qt4Agg"
Requires: %{name}-qt4%{?_isa} = %{version}-%{release}
% endif
%endif
%description
Matplotlib is a python 2D plotting library which produces publication
@@ -104,75 +100,155 @@ Matplotlib tries to make easy things easy and hard things possible.
You can generate plots, histograms, power spectra, bar charts,
errorcharts, scatterplots, etc, with just a few lines of code.
%package qt4
%package -n python2-matplotlib
Summary: Python 2D plotting library
%{?python_provide:%python_provide python2-matplotlib}
Requires: dejavu-sans-fonts
Requires: dvipng
Requires: python-six
Requires: numpy
Requires: pyparsing
Requires: python-dateutil
Requires: pytz
%if 0%{?fedora} >= 18
Requires: stix-math-fonts
%else
Requires: stix-fonts
%endif
Requires: %{name}-data = %{version}-%{release}
%{?backend_subpackage:Requires: python2-matplotlib-%{backend_subpackage}%{?_isa} = %{version}-%{release}}
%description -n python2-matplotlib
Matplotlib is a python 2D plotting library which produces publication
quality figures in a variety of hardcopy formats and interactive
environments across platforms. matplotlib can be used in python
scripts, the python and ipython shell, web application servers, and
six graphical user interface toolkits.
Matplotlib tries to make easy things easy and hard things possible.
You can generate plots, histograms, power spectra, bar charts,
errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python2-matplotlib-qt4
%{?python_provide:%python_provide python2-matplotlib-qt4}
Summary: Qt4 backend for python-matplotlib
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib-qt5
BuildRequires: PyQt4-devel
Requires: PyQt4
%description qt4
%description -n python2-matplotlib-qt4
%{summary}
%package tk
%if %{with_qt5}
%package -n python2-matplotlib-qt5
%{?python_provide:%python_provide python2-matplotlib-qt5}
Summary: Qt5 backend for python-matplotlib
Group: Development/Libraries
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
BuildRequires: python-qt5
Requires: python-qt5
%description -n python2-matplotlib-qt5
%{summary}
%endif # with_qt5
%package -n python2-matplotlib-gtk
%{?python_provide:%python_provide python2-matplotlib-gtk}
Summary: GTK backend for python-matplotlib
Group: Development/Libraries
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
BuildRequires: gtk2-devel
BuildRequires: pygtk2-devel
BuildRequires: pycairo-devel
Requires: pycairo
Requires: pygtk2
%description -n python2-matplotlib-gtk
%{summary}
%package -n python2-matplotlib-gtk3
%{?python_provide:%python_provide python2-matplotlib-gtk3}
Summary: GTK3 backend for python-matplotlib
Group: Development/Libraries
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
# This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3
BuildRequires: pygobject3-base
Requires: gtk3%{?_isa}
Requires: pygobject3-base%{?_isa}
%description -n python2-matplotlib-gtk3
%{summary}
%package -n python2-matplotlib-tk
%{?python_provide:%python_provide python2-matplotlib-tk}
Summary: Tk backend for python-matplotlib
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
BuildRequires: tcl-devel
BuildRequires: tkinter
BuildRequires: tk-devel
Requires: tkinter
%description tk
%description -n python2-matplotlib-tk
%{summary}
%if %{with_wx}
%package wx
%package -n python2-matplotlib-wx
%{?python_provide:%python_provide python2-matplotlib-wx}
Summary: wxPython backend for python-matplotlib
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
BuildRequires: wxPython-devel
Requires: wxPython
%description wx
%description -n python2-matplotlib-wx
%{summary}
%endif # with_wx
%package doc
%package -n python2-matplotlib-doc
%{?python_provide:%python_provide python2-matplotlib-doc}
Summary: Documentation files for python-matplotlib
Group: Documentation
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%if %{with_html}
BuildRequires: python-sphinx
BuildRequires: tex(latex)
BuildRequires: tex-preview
BuildRequires: dvipng
BuildRequires: graphviz
%endif
%description doc
%description -n python2-matplotlib-doc
%{summary}
%package data
%package -n python-matplotlib-data
%{?python_provide:%python_provide python-matplotlib-data}
Summary: Data used by python-matplotlib
%if %{with_bundled_fonts}
Requires: %{name}-data-fonts = %{version}-%{release}
Requires: python-matplotlib-data-fonts = %{version}-%{release}
%endif
BuildArch: noarch
%description data
%description -n python-matplotlib-data
%{summary}
%if %{with_bundled_fonts}
%package data-fonts
%package -n python-matplotlib-data-fonts
%{?python_provide:%python_provide python-matplotlib-data-fonts}
Summary: Fonts used by python-matplotlib
Requires: %{name}-data = %{version}-%{release}
Requires: python-matplotlib-data = %{version}-%{release}
BuildArch: noarch
%description data-fonts
%description -n python-matplotlib-data-fonts
%{summary}
%endif
%if %{with_python3}
%package -n python3-matplotlib
%{?python_provide:%python_provide python3-matplotlib}
Summary: Python 2D plotting library
Group: Development/Libraries
BuildRequires: python3-cairo
@@ -185,24 +261,20 @@ BuildRequires: python3-pycxx-devel
BuildRequires: python3-pyparsing
BuildRequires: python3-pytz
BuildRequires: python3-six
Requires: python3-six
Requires: python3-numpy
Requires: python3-cairo
Requires: python3-pyparsing
Requires: python3-dateutil
Requires: python3-pytz
%if 0%{?fedora} >= 18
Requires: stix-math-fonts
Requires: stix-math-fonts
%else
Requires: stix-fonts
Requires: stix-fonts
%endif
Requires: %{name}-data = %{version}-%{release}
%if "%{backend}" == "TkAgg"
Requires: python3-matplotlib-tk%{?_isa} = %{version}-%{release}
%else
% if "%{backend}" == "Qt4Agg"
Requires: python3-matplotlib-qt4%{?_isa} = %{version}-%{release}
% endif
%endif
Requires: python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} = %{version}-%{release}
%description -n python3-matplotlib
Matplotlib is a python 2D plotting library which produces publication
@@ -216,16 +288,47 @@ You can generate plots, histograms, power spectra, bar charts,
errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python3-matplotlib-qt4
%{?python_provide:%python_provide python3-matplotlib-qt4}
Summary: Qt4 backend for python3-matplotlib
Group: Development/Libraries
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-matplotlib-qt5
BuildRequires: python3-PyQt4-devel
Requires: python3-PyQt4
%description -n python3-matplotlib-qt4
%{summary}
%if %{with_qt5}
%package -n python3-matplotlib-qt5
%{?python_provide:%python_provide python3-matplotlib-qt5}
Summary: Qt5 backend for python3-matplotlib
Group: Development/Libraries
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
BuildRequires: python3-qt5
Requires: python3-qt5
%description -n python3-matplotlib-qt5
%{summary}
%endif # with_qt5
# gtk2 never worked in Python 3 afaict, so no need for -gtk subpackage
%package -n python3-matplotlib-gtk3
%{?python_provide:%python_provide python3-matplotlib-gtk3}
Summary: GTK3 backend for python3-matplotlib
Group: Development/Libraries
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
# This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3
BuildRequires: python3-gobject
Requires: gtk3%{?_isa}
Requires: python3-gobject%{?_isa}
%description -n python3-matplotlib-gtk3
%{summary}
%package -n python3-matplotlib-tk
%{?python_provide:%python_provide python3-matplotlib-tk}
Summary: Tk backend for python3-matplotlib
Group: Development/Libraries
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
@@ -240,14 +343,13 @@ Requires: python3-tkinter
%setup -q -n matplotlib-%{version}
# Copy setup.cfg to the builddir
cp %{SOURCE1} .
sed -i 's/\(backend = \).*/\1%{backend}/' setup.cfg
sed 's/\(backend = \).*/\1%{backend}/' >setup.cfg <%{SOURCE1}
# Keep this until next version, and increment if changing from
# USE_FONTCONFIG to False or True so that cache is regenerated
# if updated from a version enabling fontconfig to one not
# enabling it, or vice versa
if [ %{version} = 1.3.1 ]; then
if [ %{version} = 1.4.3 ]; then
sed -i 's/\(__version__ = 101\)/\1.1/' lib/matplotlib/font_manager.py
fi
@@ -256,9 +358,6 @@ fi
sed -i 's/\(USE_FONTCONFIG = \)False/\1True/' lib/matplotlib/font_manager.py
%endif
# Remove bundled libraries
rm -r agg24 CXX
# Remove references to bundled libraries
%patch0 -b .noagg
%patch1 -b .cxx
@@ -270,11 +369,6 @@ rm -r agg24 CXX
chmod -x lib/matplotlib/mpl-data/images/*.svg
%if %{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
%endif
%build
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
@@ -293,38 +387,34 @@ popd
find examples -name '*.py' -exec chmod a-x '{}' \;
%if %{with_python3}
pushd %{py3dir}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python3} setup.py build
# documentation cannot be built with python3 due to syntax errors
# and building with python 2 exits with cryptic error messages
popd
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python3} setup.py build
# documentation cannot be built with python3 due to syntax errors
# and building with python 2 exits with cryptic error messages
%endif
%install
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \
%{__python} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT
chmod +x $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/dates.py
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir} $RPM_BUILD_ROOT%{_datadir}/matplotlib
mv $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/mpl-data/matplotlibrc \
$RPM_BUILD_ROOT%{_sysconfdir}
mv $RPM_BUILD_ROOT%{python_sitearch}/matplotlib/mpl-data \
$RPM_BUILD_ROOT%{_datadir}/matplotlib
%{__python} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python2_sitearch}/matplotlib/dates.py
mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/matplotlib
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data/matplotlibrc \
%{buildroot}%{_sysconfdir}
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data \
%{buildroot}%{_datadir}/matplotlib
%if !%{with_bundled_fonts}
rm -rf $RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data/fonts
rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts
%endif
%if %{with_python3}
pushd %{py3dir}
MPLCONFIGDIR=$PWD/.. \
MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data/ \
%{__python3} setup.py install -O1 --skip-build --root=$RPM_BUILD_ROOT
chmod +x $RPM_BUILD_ROOT%{python3_sitearch}/matplotlib/dates.py
rm -fr $RPM_BUILD_ROOT%{python3_sitearch}/matplotlib/mpl-data
rm -f $RPM_BUILD_ROOT%{python3_sitearch}/six.py
popd
MPLCONFIGDIR=$PWD/.. \
MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data/ \
%{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python3_sitearch}/matplotlib/dates.py
rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
rm -f %{buildroot}%{python3_sitearch}/six.py
%endif
%if %{run_tests}
@@ -332,60 +422,76 @@ popd
# This should match the default backend
echo "backend : %{backend}" > matplotlibrc
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=$RPM_BUILD_ROOT%{python_sitearch} \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run %{__python} -c "import matplotlib; matplotlib.test()"
%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$RPM_BUILD_ROOT%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitearch} \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run %{__python3} -c "import matplotlib; matplotlib.test()"
%endif
%endif # run_tests
%files
%files -n python2-matplotlib
%license LICENSE/
%doc README.rst
%doc LICENSE/
%doc CHANGELOG
%doc INSTALL
%doc PKG-INFO
%doc TODO
%{python_sitearch}/*egg-info
%{python_sitearch}/matplotlib-*-nspkg.pth
%{python_sitearch}/matplotlib/
%{python_sitearch}/mpl_toolkits/
%{python_sitearch}/pylab.py*
%exclude %{python_sitearch}/matplotlib/backends/backend_qt4.*
%exclude %{python_sitearch}/matplotlib/backends/backend_qt4agg.*
%exclude %{python_sitearch}/matplotlib/backends/backend_tkagg.*
%exclude %{python_sitearch}/matplotlib/backends/tkagg.*
%exclude %{python_sitearch}/matplotlib/backends/_tkagg.so
%exclude %{python_sitearch}/matplotlib/backends/backend_wx.*
%exclude %{python_sitearch}/matplotlib/backends/backend_wxagg.*
%{python2_sitearch}/*egg-info
%{python2_sitearch}/matplotlib-*-nspkg.pth
%{python2_sitearch}/matplotlib/
%{python2_sitearch}/mpl_toolkits/
%{python2_sitearch}/pylab.py*
%exclude %{python2_sitearch}/matplotlib/backends/backend_qt4*
%exclude %{python2_sitearch}/matplotlib/backends/backend_qt5*
%exclude %{python2_sitearch}/matplotlib/backends/backend_gtk*
%exclude %{python2_sitearch}/matplotlib/backends/_gtkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/backend_tkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/tkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/_tkagg.so
%exclude %{python2_sitearch}/matplotlib/backends/backend_wx.*
%exclude %{python2_sitearch}/matplotlib/backends/backend_wxagg.*
%exclude %{_pkgdocdir}/*/
%files qt4
%{python_sitearch}/matplotlib/backends/backend_qt4.*
%{python_sitearch}/matplotlib/backends/backend_qt4agg.*
%files -n python2-matplotlib-qt4
%{python2_sitearch}/matplotlib/backends/backend_qt4.*
%{python2_sitearch}/matplotlib/backends/backend_qt4agg.*
%files tk
%{python_sitearch}/matplotlib/backends/backend_tkagg.py*
%{python_sitearch}/matplotlib/backends/tkagg.py*
%{python_sitearch}/matplotlib/backends/_tkagg.so
%if %{with_qt5}
%files -n python2-matplotlib-qt5
%{python2_sitearch}/matplotlib/backends/backend_qt5.*
%{python2_sitearch}/matplotlib/backends/backend_qt5agg.*
%endif # with_qt5
%files -n python2-matplotlib-gtk
%{python2_sitearch}/matplotlib/backends/backend_gtk.py*
%{python2_sitearch}/matplotlib/backends/backend_gtkagg.py*
%{python2_sitearch}/matplotlib/backends/backend_gtkcairo.py*
%{python2_sitearch}/matplotlib/backends/_gtkagg.so
%files -n python2-matplotlib-gtk3
%{python2_sitearch}/matplotlib/backends/backend_gtk3*.py*
%files -n python2-matplotlib-tk
%{python2_sitearch}/matplotlib/backends/backend_tkagg.py*
%{python2_sitearch}/matplotlib/backends/tkagg.py*
%{python2_sitearch}/matplotlib/backends/_tkagg.so
%if %{with_wx}
%files wx
%{python_sitearch}/matplotlib/backends/backend_wx.*
%{python_sitearch}/matplotlib/backends/backend_wxagg.*
%files -n python2-matplotlib-wx
%{python2_sitearch}/matplotlib/backends/backend_wx.*
%{python2_sitearch}/matplotlib/backends/backend_wxagg.*
%endif # with_wx
%files doc
%files -n python2-matplotlib-doc
%doc examples
%if %{with_html}
%doc doc/build/html/*
%endif
%files data
%files -n python-matplotlib-data
%{_sysconfdir}/matplotlibrc
%{_datadir}/matplotlib/mpl-data/
%if %{with_bundled_fonts}
@@ -393,34 +499,34 @@ PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitearch} \
%endif
%if %{with_bundled_fonts}
%files data-fonts
%files -n python-matplotlib-data-fonts
%{_datadir}/matplotlib/mpl-data/fonts/
%endif
%if %{with_python3}
%files -n python3-matplotlib
%doc %{basepy3dir}/README.rst
%doc %{basepy3dir}/LICENSE/
%doc %{basepy3dir}/CHANGELOG
%doc %{basepy3dir}/INSTALL
%doc %{basepy3dir}/PKG-INFO
%doc %{basepy3dir}/TODO
%license LICENSE/
%doc README.rst
%doc CHANGELOG
%doc PKG-INFO
%{python3_sitearch}/*egg-info
%{python3_sitearch}/matplotlib-*-nspkg.pth
%{python3_sitearch}/matplotlib/
%{python3_sitearch}/mpl_toolkits/
%{python3_sitearch}/pylab.py*
%{python3_sitearch}/__pycache__/*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt4.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4.*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt4agg.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4agg.*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt4*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt5*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5*
%exclude %{python3_sitearch}/matplotlib/backends/backend_gtk*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk*
%exclude %{python3_sitearch}/matplotlib/backends/backend_tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/_tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/_tkagg.*
%exclude %{_pkgdocdir}/*/
%files -n python3-matplotlib-qt4
%{python3_sitearch}/matplotlib/backends/backend_qt4.*
@@ -428,6 +534,18 @@ PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/backend_qt4agg.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4agg.*
%if %{with_qt5}
%files -n python3-matplotlib-qt5
%{python3_sitearch}/matplotlib/backends/backend_qt5.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5.*
%{python3_sitearch}/matplotlib/backends/backend_qt5agg.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5agg.*
%endif # with_qt5
%files -n python3-matplotlib-gtk3
%{python3_sitearch}/matplotlib/backends/backend_gtk*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk*
%files -n python3-matplotlib-tk
%{python3_sitearch}/matplotlib/backends/backend_tkagg.py*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_tkagg.*
@@ -437,6 +555,54 @@ PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitearch} \
%endif
%changelog
* Mon Apr 04 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-13
- Require the qt5 subpackage from the qt4 subpackage (#1219556)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.3-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Jan 12 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-11
- Fix another requires of the main package
* Thu Jan 07 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-10
- Fix requiring the correct backend from the main package
* Thu Jan 07 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-9
- regenerate tarball to exclude lena image (#1295174)
* Sun Nov 15 2015 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-8
- Pick upstream patch for fixing the gdk backend #1231748
- Add python2 subpackages and use python_provide
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4.3-7
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.4.3-5
- Rebuilt for GCC 5 C++11 ABI change
* Wed Feb 25 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.3-4
- Split out python-matplotlib-gtk, python-matplotlib-gtk3,
python3-matplotlib-gtk3 subpackages (#1067373)
- Add missing requirements on gtk
* Tue Feb 24 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.3-3
- Use %%license, add skimage to build requirements
* Tue Feb 17 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.3-2
- Disable Qt5 backend on Fedora <21 and RHEL
* Tue Feb 17 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.3-1
- New upstream release (#1134007)
- Add Qt5 backend
* Tue Jan 13 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.2-1
- Bump to new upstream release
- Add qhull-devel to BR
- Add six to Requires
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

View File

@@ -1 +1 @@
832170ea532d5f7ca227ea04f044291e matplotlib-1.3.1-without-gpc.tar.xz
c16111ce7d6c799a2b557699f40eb709 matplotlib-1.4.3-without-extern.tar.xz