summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 908997378ea2424c7f55ee7134c93fa267e95627 (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
# Maintainer: Dimitris Kiziridis <ragouel at outlook dot com>

pkgname=('lua-sci' 'lua51-sci' 'lua52-sci')
_rockname=sci
pkgver=1.0.0.beta12
_pkgver=1.0.0-beta12
pkgrel=1
pkgdesc="Scientific Computing with LuaJIT"
arch=('any')
url='https://scilua.org/'
license=('MIT')
depends=('luajit'
         'lua-xsys'
         'lua51-xsys'
         'lua52-xsys'
         'openblas-lapack')
makedepends=('luarocks')
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/stepelu/lua-sci/archive/v${_pkgver}.tar.gz"
        "${_rockname}-${pkgver}-1.rockspec")
sha256sums=('50785d4e1c0f18c4e54bce99569845b629b9f18f7585dbee64d8bd11ecc98528'
            '9ab11513ec2950db9a5369d0b57a08707ad64cc5f478bffcd3a0e63116d9715f')

prepare() {
  if [[ -f "${pkgname}-${_pkgver}/${pkgname}-${pkgver}-1.rockspec" ]]; then
    rm "${pkgname}-${_pkgver}/${pkgname}-${pkgver}-1.rockspec"
  fi
  ln -s "${srcdir}/${pkgname}-${pkgver}-1.rockspec" "${pkgname}-${_pkgver}/"
}

build() {
  mkdir -p 5.1 5.2 5.3

  # Build for 5.1
  (cd 5.1; luarocks build --pack-binary-rock --lua-version=5.1 --deps-mode=none ../"${_rockname}-$pkgver-1.rockspec")
  # Build for 5.2
  (cd 5.2; luarocks build --pack-binary-rock --lua-version=5.2 --deps-mode=none ../"${_rockname}-$pkgver-1.rockspec")
  # Build for 5.3
  (cd 5.3; luarocks build --pack-binary-rock --lua-version=5.3 --deps-mode=none ../"${_rockname}-$pkgver-1.rockspec")

  rm "${srcdir}/${pkgname}-${_pkgver}/${pkgname}-${pkgver}-1.rockspec"
}

package_lua-sci() {
  pkgdesc='Scientific Computing with LuaJIT for Lua 5.3'

  luarocks install --lua-version=5.3 --tree="$pkgdir/usr/" --deps-mode=none 5.3/${_rockname}-${pkgver}-1.all.rock

  install -Dm644 "${srcdir}/lua-${_rockname}-${_pkgver}/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

  # remove luarocks-created root manifest
  rm "$pkgdir/usr/lib/luarocks/rocks-5.3/manifest"
}

package_lua51-sci() {
  pkgdesc='Scientific Computing with LuaJIT for Lua 5.1'

  luarocks install --lua-version=5.1 --tree="$pkgdir/usr/" --deps-mode=none 5.1/${_rockname}-${pkgver}-1.all.rock

  install -Dm644 "${srcdir}/lua-${_rockname}-${_pkgver}/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

  # remove luarocks-created root manifest
  rm "$pkgdir/usr/lib/luarocks/rocks-5.1/manifest"
}

package_lua52-sci() {
  pkgdesc='Scientific Computing with LuaJIT for Lua 5.2'

  luarocks install --lua-version=5.2 --tree="$pkgdir/usr/" --deps-mode=none 5.2/${_rockname}-${pkgver}-1.all.rock

  install -Dm644 "${srcdir}/lua-${_rockname}-${_pkgver}/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

  # remove luarocks-created root manifest
  rm "$pkgdir/usr/lib/luarocks/rocks-5.2/manifest"
}