summaryrefslogtreecommitdiff
path: root/community/python-pyopencl/PKGBUILD
blob: 07f720db30c8ef95679fdf9d33b5fd45eb40e0c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# $Id: PKGBUILD 102275 2013-12-07 10:37:03Z bpiotrowski $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>

pkgbase=python-pyopencl
pkgname=('python2-pyopencl' 'python-pyopencl' 'pyopencl-headers')
pkgver=2013.2
pkgrel=2
pkgdesc="A complete, object-oriented language binding of OpenCL to Python"
arch=('i686' 'x86_64')
url="http://mathema.tician.de/software/pyopencl"
license=('custom')
epoch=1
makedepends=('boost-libs' 'ctags' 'python2-setuptools' 'python-setuptools' 'libcl' 'opencl-headers' 'mesa' 'boost' 'python2-mako' 'python-mako' 'python-numpy' 'python2-numpy')
source=("http://pypi.python.org/packages/source/p/pyopencl/pyopencl-${pkgver}.tar.gz"
        'LICENSE.txt')
sha1sums=('805b1c5c44647182dcc7aedb00caf8ca47bc6e84'
          '2e6966b3d9b15603ce2c3ff79eeadd63c5d066b7')

build() {
   cd "$srcdir"

   cp -a pyopencl-$pkgver{,-python2}

   cd "${srcdir}/pyopencl-${pkgver}"
   python3 ./configure.py --cl-enable-gl --no-use-shipped-boost --boost-python-libname=boost_python3
   python3 setup.py build

   cd "$srcdir/pyopencl-$pkgver-python2"
   python2 ./configure.py --cl-enable-gl --no-use-shipped-boost --boost-python-libname=boost_python
   python2 setup.py build
}

check(){
   cd "${srcdir}/pyopencl-${pkgver}"
   python3 setup.py test

   cd "$srcdir/pyopencl-$pkgver-python2"
   python2 setup.py test
}

package_python-pyopencl() {
   depends=('libcl' 'opencl-headers' 'mesa' 'boost-libs' 'python' 'python-numpy' 'python-mako' 'python-pytools' 'pyopencl-headers')

   cd "${srcdir}/pyopencl-${pkgver}"
   python3 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build

   rm -fr "${pkgdir}"/usr/include

   install -D -m644 $srcdir/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}

package_python2-pyopencl() {
   depends=('libcl' 'opencl-headers' 'mesa' 'boost-libs' 'python2' 'python2-numpy' 'python2-mako' 'python2-pytools' 'pyopencl-headers')

   cd "${srcdir}/pyopencl-${pkgver}-python2"
   python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build

    rm -fr "${pkgdir}"/usr/include/

   install -D -m644 $srcdir/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}

package_pyopencl-headers() {
   cd "${srcdir}/pyopencl-${pkgver}/"
   install -dm755 "${pkgdir}"/usr/include/pyopencl

  for file in pyopencl-airy.cl  pyopencl-bessel-j.cl  pyopencl-bessel-y.cl  pyopencl-complex.h  pyopencl-eval-tbl.cl  pyopencl-ranluxcl.cl; do
      install -m644 pyopencl/cl/${file} "${pkgdir}"/usr/include/pyopencl
   done
   install -D -m644 $srcdir/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}