PKGBUILDs/community/python-pytables/PKGBUILD
2017-01-06 13:37:46 +00:00

86 lines
3 KiB
Bash

# $Id$
# Maintainer: Andrzej Giniewicz <gginiu@gmail.com>
# Contributor: Sebastien Binet <binet@cern.ch>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - upstream patch to fix AArch64 build
pkgbase=python-pytables
pkgname=('python2-pytables' 'python-pytables')
pkgver=3.3.0
pkgrel=3
arch=("i686" "x86_64")
pkgdesc="A package for managing hierarchical datasets and designed to efficiently and easily cope with extremely large amounts of data"
url="http://www.pytables.org"
license=("BSD")
makedepends=('lzo' 'hdf5_18' 'python2-numexpr' 'python-numexpr' 'python-setuptools' 'python2-setuptools' 'cython' 'cython2' 'blosc' 'bzip2' 'lzo')
source=("https://github.com/PyTables/PyTables/archive/v${pkgver}.tar.gz"
"hdf5_18.patch"
'https://github.com/PyTables/PyTables/commit/314b5a0170ecf3c6d46392b16b8f675791baa206.patch')
md5sums=('056c161ae0fd2d6e585b766adacf3b0b'
'6cca19b6ce2eb9f84d18888ad2c1a3b4'
'2d4edfdeb35940c5a9e279295f25535c')
prepare() {
cd "$srcdir"/PyTables-$pkgver
# -march=native generates AVX instructions if the host supports it, which
# then results in "SIGILL (Illegal instruction)" on machines lacking AVX
# https://github.com/PyTables/PyTables/issues/458
# https://github.com/PyTables/PyTables/pull/503
sed -i 's/"-march=native",\?//' setup.py
# force hdf5_18 location
patch -Np0 -i "$srcdir"/hdf5_18.patch
patch -p1 -i ../314b5a0170ecf3c6d46392b16b8f675791baa206.patch
cd "${srcdir}"
cp -a PyTables-$pkgver PyTables-py2-$pkgver
}
build() {
msg "Building Python2"
cd "$srcdir"/PyTables-py2-$pkgver
HDF5_DIR=/usr/include/hdf5_18 LD_LIBRARY_PATH=/usr/lib/hdf5_18 python2 setup.py build --blosc=/usr
msg "Building Python3"
cd "$srcdir"/PyTables-$pkgver
HDF5_DIR=/usr/include/hdf5_18 LD_LIBRARY_PATH=/usr/lib/hdf5_18 python setup.py build --blosc=/usr
}
package_python2-pytables() {
depends=('lzo' 'hdf5_18' 'python2-numexpr' 'blosc')
cd "$srcdir"/PyTables-py2-${pkgver}
python2 setup.py install --skip-build --prefix=/usr --root="$pkgdir" --optimize=1
install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
# see FS#36015 and FS#44971
mv "$pkgdir"/usr/bin/pt2to3{,-2.7}
mv "$pkgdir"/usr/bin/ptdump{,-2.7}
mv "$pkgdir"/usr/bin/ptrepack{,-2.7}
mv "$pkgdir"/usr/bin/pttree{,-2.7}
# see FS#45975
_site_packages=`python2 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"`
chmod a+rx "${pkgdir}${_site_packages}"/*.egg-info
chmod a+r "${pkgdir}${_site_packages}"/*.egg-info/*
}
package_python-pytables() {
depends=('lzo' 'hdf5_18' 'python-numexpr' 'blosc')
cd "$srcdir"/PyTables-${pkgver}
python setup.py install --skip-build --prefix=/usr --root="$pkgdir" --optimize=1
install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
# see FS#45975
_site_packages=`python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"`
chmod a+rx "${pkgdir}${_site_packages}"/*.egg-info
chmod a+r "${pkgdir}${_site_packages}"/*.egg-info/*
}