Skip to content

Commit

Permalink
Upgrade py-matplotlib to 3.3.1, and keep a repocopy of 2.2.4.
Browse files Browse the repository at this point in the history
Changelog at <https://matplotlib.org/3.3.1/users/whats_new.html>.

PR:		236913
Submitted by:	chitty_cloud (at) me.com
Approved by:	maintainer
  • Loading branch information
thierry-FreeBSD committed Sep 19, 2020
1 parent bb9c1ac commit 7212bd1
Show file tree
Hide file tree
Showing 11 changed files with 1,305 additions and 38 deletions.
1 change: 1 addition & 0 deletions math/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -773,6 +773,7 @@
SUBDIR += py-luminol
SUBDIR += py-matplotlib
SUBDIR += py-matplotlib-scalebar
SUBDIR += py-matplotlib2
SUBDIR += py-mip
SUBDIR += py-mpmath
SUBDIR += py-munkres
Expand Down
27 changes: 15 additions & 12 deletions math/py-matplotlib/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@
# $FreeBSD$

PORTNAME= matplotlib
DISTVERSION= 2.2.4
PORTREVISION= 2
PORTVERSION= 3.3.1
CATEGORIES= math python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
Expand All @@ -13,8 +12,12 @@ COMMENT= Plotting library uses a syntax familiar to MATLAB users

LICENSE= PSFL

BUILD_DEPENDS= ${PYNUMPY}
BUILD_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}pillow>=6.2:graphics/py-pillow@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>=0:devel/py-pyparsing@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}certifi>=0.10:security/py-certifi@${PY_FLAVOR}
LIB_DEPENDS= libfreetype.so:print/freetype2 \
libqhull.so:math/qhull \
libpng.so:graphics/png \
libfontconfig.so:x11-fonts/fontconfig \
libtcl86.so:lang/tcl86
Expand All @@ -24,13 +27,14 @@ RUN_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>=0:devel/py-pyparsing@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tornado>0:www/py-tornado@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pluggy>0:devel/py-pluggy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=6.2:graphics/py-pillow@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>=0:devel/py-pyparsing@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}certifi>=0.10:security/py-certifi@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}kiwisolver>=1.0.0:math/py-kiwisolver@${PY_FLAVOR}
py27_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}backports.functools_lru_cache>0:devel/py-backports.functools_lru_cache@${PY_FLAVOR}

USES= compiler:c++11-lib gettext gnome pkgconfig python shebangfix uniquefiles:dirs
USE_PYTHON= autoplist distutils

CFLAGS+= -I${LOCALBASE}/include
USES= compiler:c++11-lib gettext gnome localbase pkgconfig python shebangfix uniquefiles:dirs
USE_PYTHON= distutils

OPTIONS_DEFINE= EXAMPLES \
QT5AGGBACKEND TKAGGBACKEND
Expand All @@ -49,19 +53,18 @@ TKAGGBACKEND_USES= display tk:run
TKAGGBACKEND_VARS= TKAGG_BACKEND=True
TKAGGBACKEND_VARS_OFF= TKAGG_BACKEND=False

PLIST_SUB= VER=${PORTVERSION}
PORTEXAMPLES= *

post-extract:
@${FIND} ${WRKSRC} -name '*.py' | ${XARGS} ${CHMOD} -x

post-patch:
@${REINPLACE_CMD} -e 's|%%QT5AGG_BACKEND%%|${QT5AGG_BACKEND}|g' \
pre-configure:
${REINPLACE_CMD} -e 's|%%QT5AGG_BACKEND%%|${QT5AGG_BACKEND}|g' \
-e 's|%%TKAGG_BACKEND%%|${TKAGG_BACKEND}|g' \
${WRKSRC}/setup.cfg

post-install:
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib/backends/web_backend/jquery-ui-1.12.1
cd ${WRKSRC}/lib/matplotlib/backends/web_backend/jquery-ui-1.12.1 && ${COPYTREE_SHARE} . ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib/backends/web_backend/jquery-ui-1.12.1
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib -name '*.so' \
| ${XARGS} ${STRIP_CMD}

Expand Down
6 changes: 3 additions & 3 deletions math/py-matplotlib/distinfo
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
TIMESTAMP = 1553231915
SHA256 (matplotlib-2.2.4.tar.gz) = 029620799e581802961ac1dcff5cb5d3ee2f602e0db9c0f202a90495b37d2126
SIZE (matplotlib-2.2.4.tar.gz) = 36974286
TIMESTAMP = 1598015166
SHA256 (matplotlib-3.3.1.tar.gz) = 87f53bcce90772f942c2db56736788b39332d552461a5cb13f05ff45c1680f0e
SIZE (matplotlib-3.3.1.tar.gz) = 38780756
10 changes: 6 additions & 4 deletions math/py-matplotlib/files/patch-setup.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--- setup.cfg.orig 2015-09-05 07:46:40 UTC
--- setup.cfg.orig 2020-08-22 09:54:46 UTC
+++ setup.cfg
@@ -0,0 +1,83 @@
@@ -0,0 +1,87 @@
+# Rename this file to setup.cfg to modify matplotlib's
+# build options.
+
Expand Down Expand Up @@ -84,5 +84,7 @@
+# packages. Now that NumPy has emerge as the universal array
+# package for python, numerix is not really necessary and is
+# maintained to provide backward compatibility. Do not change
+# this unless you have a compelling reason to do so.
+#numerix = numpy
+
+[libs]
+system_freetype = true
+system_qhull = true
1,107 changes: 1,088 additions & 19 deletions math/py-matplotlib/pkg-plist

Large diffs are not rendered by default.

72 changes: 72 additions & 0 deletions math/py-matplotlib2/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# Created by: ijliao
# $FreeBSD$

PORTNAME= matplotlib
DISTVERSION= 2.2.4
PORTREVISION= 2
CATEGORIES= math python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}

MAINTAINER= mainland@apeiron.net
COMMENT= Plotting library uses a syntax familiar to MATLAB users (legacy)

LICENSE= PSFL

BUILD_DEPENDS= ${PYNUMPY}
LIB_DEPENDS= libfreetype.so:print/freetype2 \
libpng.so:graphics/png \
libfontconfig.so:x11-fonts/fontconfig \
libtcl86.so:lang/tcl86
RUN_DEPENDS= ${PYNUMPY} \
${PYTHON_PKGNAMEPREFIX}cycler>=0.10:devel/py-cycler@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}dateutil>=2.1:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyparsing>=0:devel/py-pyparsing@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tornado>0:www/py-tornado@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}kiwisolver>=1.0.0:math/py-kiwisolver@${PY_FLAVOR}
py27_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}backports.functools_lru_cache>0:devel/py-backports.functools_lru_cache@${PY_FLAVOR}

USES= compiler:c++11-lib gettext gnome pkgconfig python shebangfix uniquefiles:dirs
USE_PYTHON= autoplist distutils

CFLAGS+= -I${LOCALBASE}/include

OPTIONS_DEFINE= EXAMPLES \
QT5AGGBACKEND TKAGGBACKEND
OPTIONS_DEFAULT= TKAGGBACKEND
OPTIONS_SUB= yes

QT5AGGBACKEND_DESC= Qt5Agg backend support
QT5AGGBACKEND_USES= display pyqt:5
QT5AGGBACKEND_USE= PYQT=sip,widgets
QT5AGGBACKEND_VARS= QT5AGG_BACKEND=True
QT5AGGBACKEND_VARS_OFF= QT5AGG_BACKEND=False
TKAGGBACKEND_DESC= TKAgg backend support
TKAGGBACKEND_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tkinter>0:x11-toolkits/py-tkinter@${PY_FLAVOR}
TKAGGBACKEND_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tkinter>0:x11-toolkits/py-tkinter@${PY_FLAVOR}
TKAGGBACKEND_USES= display tk:run
TKAGGBACKEND_VARS= TKAGG_BACKEND=True
TKAGGBACKEND_VARS_OFF= TKAGG_BACKEND=False

PORTEXAMPLES= *

post-extract:
@${FIND} ${WRKSRC} -name '*.py' | ${XARGS} ${CHMOD} -x

post-patch:
@${REINPLACE_CMD} -e 's|%%QT5AGG_BACKEND%%|${QT5AGG_BACKEND}|g' \
-e 's|%%TKAGG_BACKEND%%|${TKAGG_BACKEND}|g' \
${WRKSRC}/setup.cfg

post-install:
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib/backends/web_backend/jquery-ui-1.12.1
cd ${WRKSRC}/lib/matplotlib/backends/web_backend/jquery-ui-1.12.1 && ${COPYTREE_SHARE} . ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib/backends/web_backend/jquery-ui-1.12.1
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/matplotlib -name '*.so' \
| ${XARGS} ${STRIP_CMD}

post-install-EXAMPLES-on:
@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
${CP} -R ${WRKSRC}/examples/ ${STAGEDIR}${EXAMPLESDIR}

.include <bsd.port.mk>
3 changes: 3 additions & 0 deletions math/py-matplotlib2/distinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
TIMESTAMP = 1553231915
SHA256 (matplotlib-2.2.4.tar.gz) = 029620799e581802961ac1dcff5cb5d3ee2f602e0db9c0f202a90495b37d2126
SIZE (matplotlib-2.2.4.tar.gz) = 36974286
88 changes: 88 additions & 0 deletions math/py-matplotlib2/files/patch-setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
--- setup.cfg.orig 2015-09-05 07:46:40 UTC
+++ setup.cfg
@@ -0,0 +1,83 @@
+# Rename this file to setup.cfg to modify matplotlib's
+# build options.
+
+[egg_info]
+tag_svn_revision = 1
+
+[directories]
+# Uncomment to override the default basedir in setupext.py.
+# This can be a single directory or a space-delimited list of directories.
+#basedirlist = /usr
+
+[status]
+# To suppress display of the dependencies and their versions
+# at the top of the build log, uncomment the following line:
+#suppress = True
+#
+# Uncomment to insert lots of diagnostic prints in extension code
+#verbose = True
+
+[provide_packages]
+# By default, matplotlib checks for a few dependencies and
+# installs them if missing. This feature can be turned off
+# by uncommenting the following lines. Acceptible values are:
+# True: install, overwrite an existing installation
+# False: do not install
+# auto: install only if the package is unavailable. This
+# is the default behavior
+#
+## Date/timezone support:
+pytz = False
+dateutil = False
+
+[gui_support]
+# Matplotlib supports multiple GUI toolkits, including Cocoa,
+# GTK, Fltk, MacOSX, Qt, Qt4, Tk, and WX. Support for many of
+# these toolkits requires AGG, the Anti-Grain Geometry library,
+# which is provided by matplotlib and built by default.
+#
+# Some backends are written in pure Python, and others require
+# extension code to be compiled. By default, matplotlib checks
+# for these GUI toolkits during installation and, if present,
+# compiles the required extensions to support the toolkit. GTK
+# support requires the GTK runtime environment and PyGTK. Wx
+# support requires wxWidgets and wxPython. Tk support requires
+# Tk and Tkinter. The other GUI toolkits do not require any
+# extension code, and can be used as long as the libraries are
+# installed on your system.
+#
+# You can uncomment any the following lines if you know you do
+# not want to use the GUI toolkit. Acceptible values are:
+# True: build the extension. Exits with a warning if the
+# required dependencies are not available
+# False: do not build the extension
+# auto: build if the required dependencies are available,
+# otherwise skip silently. This is the default
+# behavior
+#
+gtk = False
+gtkagg = False
+qt4agg = False
+qt5agg = %%QT5AGG_BACKEND%%
+tkagg = %%TKAGG_BACKEND%%
+wxagg = False
+#macosx = False
+
+[rc_options]
+# User-configurable options
+#
+# Default backend, one of: Agg, Cairo, CocoaAgg, GTK, GTKAgg, GTKCairo,
+# FltkAgg, MacOSX, Pdf, Ps, QtAgg, Qt4Agg, SVG, TkAgg, WX, WXAgg.
+#
+# The Agg, Ps, Pdf and SVG backends do not require external
+# dependencies. Do not choose GTK, GTKAgg, GTKCairo, MacOSX, TkAgg or WXAgg
+# if you have disabled the relevent extension modules. Agg will be used
+# by default.
+#
+#backend = Agg
+#
+# The numerix module was historically used to provide
+# compatibility between the Numeric, numarray, and NumPy array
+# packages. Now that NumPy has emerge as the universal array
+# package for python, numerix is not really necessary and is
+# maintained to provide backward compatibility. Do not change
+# this unless you have a compelling reason to do so.
+#numerix = numpy
File renamed without changes.
10 changes: 10 additions & 0 deletions math/py-matplotlib2/pkg-descr
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
matplotlib is a python 2D plotting library which produces publication quality
figures using in a variety of hardcopy formats (PNG, JPG, PS, SVG) and
interactive GUI environments (WX, GTK, Tkinter) across platforms. matplotlib
can be used in python scripts, interactively from the python shell (ala matlab
or mathematica), in web application servers generating dynamic charts, or
embedded in GTK, Tk or WX applications; see backends.

This is the legacy version.

WWW: https://matplotlib.org/
19 changes: 19 additions & 0 deletions math/py-matplotlib2/pkg-plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/AUTHORS.txt
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/LICENSE.txt
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/external/jquery/jquery.js
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_444444_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_555555_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_777620_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_777777_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_cc0000_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/images/ui-icons_ffffff_256x240.png
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/index.html
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.js
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.min.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.min.js
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.structure.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.structure.min.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.theme.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/jquery-ui.theme.min.css
%%PYTHON_SITELIBDIR%%/matplotlib/backends/web_backend/jquery-ui-1.12.1/package.json

0 comments on commit 7212bd1

Please sign in to comment.