summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 28139591d53e933703b2733236d6ad7949107485 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# Maintainer: David McInnis <dave@dave3.xyz>

pkgbase="python-theano"
pkgname=(
	"python-theano"
	#"python2-theano"
)
_pkgname="Theano"
pkgver="1.0.5"
pkgrel="1"
pkgdesc='Definition and optimized evaluation of mathematical expressions on Numpy arrays.'
arch=('any')
url='http://www.deeplearning.net/software/theano/'
license=('BSD')
makedepends=(
	'python-distribute'
	#'python2-distribute'
	)
#checkdepends=('python-nose' 'python-parameterized' 'python2-nose' 'python2-parameterized')
source=("https://files.pythonhosted.org/packages/source/${_pkgname::1}/$_pkgname/$_pkgname-$pkgver.tar.gz")
sha256sums=('6e9439dd53ba995fcae27bf20626074bfc2fff446899dc5c53cb28c1f9202e89')

prepare() {
  cd "${_pkgname}-${pkgver}"
  chmod +x "${_pkgname}.egg-info"
  chmod 644 ${_pkgname}.egg-info/*
  chmod -R a+r ./
  cd "$srcdir/"
  cp -a "${_pkgname}-${pkgver}" "${_pkgname}-${pkgver}-py2"
  cd "${_pkgname}-${pkgver}-py2"
  sed -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \
      -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
      -e "s|#![ ]*/bin/env python$|#!/usr/bin/env python2|" \
      -i $(find . -name '*.py')
}

build() {
  # msg "Building Python 2"
  # cd "$srcdir/${_pkgname}-${pkgver}-py2"
  # python2 setup.py build

  msg "Building Python 3"
  cd "$srcdir/${_pkgname}-${pkgver}"
  python setup.py build
}

# Tests take many hours and need over 8G of memory
# All Python and Python2 tests pass
#
# -------------------------------------------------
#check() {
#  msg "Checking Python 2"
#  cd "$srcdir/${_pkgname}-${pkgver}-py2"/build/lib/theano/
#  nosetests2 -vv -d
#
#  msg "Checking Python 3"
#  cd "$srcdir/${_pkgname}-${pkgver}"/build/lib/theano/
#  nosetests3 -vv -d
#}

#package_python2-theano() {
#  depends=('python2-numpy')
#  optdepends=('python2-sympy: Recommended'
#              'python2-scipy: Recommended'
#              'python2-pycuda'
#              'python2-pydot-ng: Preferred over python-pydot'
#              'python2-pydot'
#              'python2-pygpu-git'
#              'python2-mpi4py: minimal support for opencl')
#  cd "$srcdir/${_pkgname}-${pkgver}-py2"
#  python2 setup.py install --root="$pkgdir"/ --optimize=1 --skip-build
#  mv "${pkgdir}/usr/bin/theano-cache" "${pkgdir}/usr/bin/theano2-cache"
#  mv "${pkgdir}/usr/bin/theano-nose" "${pkgdir}/usr/bin/theano2-nose"
#  install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/python2-theano/LICENSE.txt"
#}

package_python-theano() {
  depends=('python-numpy')
  optdepends=('python-sympy: Recommended'
             'python-scipy: Recommended'
             'python-pycuda'
             'python-pydot-ng: Preferred over python-pydot'
             'python-pydot'
             'python-pygpu-git'
             'python-scikit-sparse'
             'python-mpi4py: minimal support for opencl')
  cd "$srcdir/${_pkgname}-${pkgver}"
  python setup.py install --root="$pkgdir"/ --optimize=1 --skip-build
  install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/python-theano/LICENSE.txt"
}