core/python-matplotlib/PKGBUILD
2015-04-13 07:59:57 +00:00

113 lines
5.0 KiB
Bash

# $Id$
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Stefan Husmann <stefan-husmann@t-online.de>
# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
pkgbase=python-matplotlib
pkgname=('python2-matplotlib' 'python3-matplotlib')
pkgver=1.4.3
pkgrel=1
pkgdesc="A python plotting library, making publication quality plots"
arch=('i686' 'x86_64')
url='http://matplotlib.org'
license=('custom')
checkdepends=('python3-nose' 'python2-nose' 'python3-mock' 'python2-mock' 'xorg-server-xvfb'
'texlive-core' 'texlive-latexextra' 'imagemagick' 'ffmpeg' 'mencoder' 'inkscape')
makedepends=('python2-pytz' 'python2-numpy' 'python2-pyqt4' 'python3-pytz' 'python3-numpy'
'python3-pyqt4' 'tk' 'python3-cairocffi' 'python2-cairocffi' 'python3-dateutil'
'python2-dateutil' 'python3-gobject' 'python2-gobject' 'python3-pyparsing'
'python2-pyparsing' 'pygtk' 'python3-six' 'ghostscript' 'texlive-bin'
'python3-tornado' 'python2-tornado' 'gtk3' 'wxpython' 'python3-pyqt5' 'python2-pyqt5'
'libxkbcommon' 'python3-pillow' 'python2-pillow')
source=("$pkgbase-$pkgver.tar.gz::https://github.com/matplotlib/matplotlib/archive/v$pkgver.tar.gz")
sha512sums=('4aebbda31934bedbee5206b783e5cbe07db17367d50117a50bb80b7ea4aad987ec225958bed58885c561f00582c309d6e8c0a69861d3b4210a09b2d63975d2aa')
prepare() {
cp -a matplotlib-${pkgver} matplotlib-${pkgver}-py2
cd matplotlib-${pkgver}
for file in $(find . -name '*.py' -print); do
sed -i -e "s|^#!.*/usr/bin/python|#!/usr/bin/python3|" \
-e "s|^#!.*/usr/bin/env *python|#!/usr/bin/env python3|" ${file}
done
cd ../matplotlib-${pkgver}-py2
for file in $(find . -name '*.py' -print); do
sed -i -e "s|^#!.*/usr/bin/python|#!/usr/bin/python2|" \
-e "s|^#!.*/usr/bin/env *python|#!/usr/bin/env python2|" ${file}
done
}
build() {
# this seems to need to be present or gtk/gdk dies
# and hangs the build checking if gtk3cairo is installed
export XDG_RUNTIME_DIR=/tmp
cd matplotlib-${pkgver}
python3 setup.py build
cd ../matplotlib-${pkgver}-py2
python2 setup.py build
}
check() {
cd matplotlib-${pkgver}
(
export PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.4:$PYTHONPATH"
python3 -c "from matplotlib import font_manager"
rm -rf ../tmp_test_dir && mkdir ../tmp_test_dir && cd ../tmp_test_dir
xvfb-run -a -s "+extension GLX +extension RANDR +render -screen 0 1280x1024x24" \
python3 ../matplotlib-${pkgver}/tests.py -sv --processes=8 --process-timeout=300 || warning "Tests failed"
)
cd ../matplotlib-${pkgver}-py2
(
export PYTHONPATH="$PWD/build/lib.linux-$CARCH-2.7:$PYTHONPATH"
python2 -c "from matplotlib import font_manager"
rm -rf ../tmp_test_dir && mkdir ../tmp_test_dir && cd ../tmp_test_dir
xvfb-run -a -s "+extension GLX +extension RANDR +render -screen 0 1280x1024x24" \
python2 ../matplotlib-${pkgver}-py2/tests.py -sv --processes=8 --process-timeout=300 || warning "Tests failed"
)
}
package_python2-matplotlib() {
depends=('python2-pytz' 'python2-numpy' 'python2-pyqt5' 'python2-dateutil' 'python2-pyparsing' 'libxkbcommon')
optdepends=('pygtk: for GTK/GTKAgg/GTKCairo backend'
'python2-cairo: for GTKCairo/GTK3Cairo backend'
'python2-cairocffi: for GTKCairo/GTK3Cairo backend (alternative to python2-cairo)'
'python2-pyqt4: for Qt4Agg backend'
'tk: used by the TkAgg backend'
'ghostscript: usetex dependencies'
'texlive-bin: usetex dependencies'
'python2-tornado: for webagg backend'
'python2-gobject: for GTK3Agg/GTK3Cairo backend'
'wxpython: for WX/WXAgg backend'
'python2-pillow: for reading/saving .jpg/bmp/tiff files')
cd matplotlib-${pkgver}-py2
python2 setup.py install -O1 --skip-build --root "${pkgdir}" --prefix=/usr
install -dm755 "${pkgdir}"/usr/share/licenses/python2-matplotlib
install -m 644 doc/users/license.rst "${pkgdir}"/usr/share/licenses/python2-matplotlib
}
package_python3-matplotlib() {
depends=('python3-pytz' 'python3-numpy' 'python3-pyqt5' 'python3-dateutil' 'python3-pyparsing' 'libxkbcommon')
optdepends=('python3-gobject: for GTK3Agg/GTK3Cairo backend'
'python3-cairocffi: for GTK3Agg/GTK3Cairo backend'
'python3-pyqt4: for Qt4Agg backend'
'tk: used by the TkAgg backend'
'ghostscript: usetex dependencies'
'texlive-bin: usetex dependencies'
'python3-tornado: for webagg backend'
'python3-pillow: for reading/saving .jpg/bmp/tiff files')
cd matplotlib-${pkgver}
python3 setup.py install -O1 --skip-build --root "${pkgdir}" --prefix=/usr
install -dm755 "${pkgdir}"/usr/share/licenses/python3-matplotlib
install -m 644 doc/users/license.rst "${pkgdir}"/usr/share/licenses/python3-matplotlib
}