summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: d891cd41ed7cce9655ee43b09ae643ef50cd10ce (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
# Maintainer: Tarn W. Burton <twburton@gmail.com>
_qlver=2021-02-13
_srcname=clasp
pkgname=clasp-cl-git
pkgver=0.4.2.r4924.gfb017d54b
pkgrel=1
pkgdesc="Bringing Common Lisp and C++ Together"
arch=('x86_64')
url="https://github.com/clasp-developers/clasp"
license=('LGPL')
options+=(!strip)
depends=('libbsd0' 'libelf1' 'libffi-dev' 'libgmp10' 'libgmpxx4ldbl'
         'libncurses6' 'llvm-13' 'clang-13' 'python3' 'python-is-python3' 'zlib1g')
makedepends=('git' 'libboost-graph-dev' 'libbsd-dev' 'libelf-dev' 'libffi-dev'  'build-essential'
             'libgc-dev' 'libgmp-dev' 'libncurses-dev' 'llvm-13' 'clang-13' 'python3'
             'python-is-python3' 'sbcl' 'zlib1g-dev' 'llvm-13-dev' 'libclang-13-dev')
provides=('lisp-compiler')
source=('git://github.com/clasp-developers/clasp.git#commit=fb017d54bf984ca1c8e1787e364813f7875991a5'
        "https://github.com/quicklisp/quicklisp-client/archive/refs/tags/version-$_qlver.tar.gz"
        'wscript.config')
sha512sums=('SKIP'
            '8efec9d46f0008c9f2fab387837f5a02d60ebb9f4a83106142ae954bc322b99bd48f9e91e2107dda188d679e27ddb5f48e444adfa98e6c15cf454923dfccadd5'
            '236dce22337b0b56bf54867fc8d42d86ecedfa6097825c0798a235c950fb2e6c3f44f0630efdfcb241e1e3f8f5f080be30bc07961bf7dd8aa888784d7372cf01')

pkgver() {
  cd "$_srcname"
  git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
  cd "$_srcname/"
  cp ../wscript.config .
  ./waf configure
  CLASP_QUICKLISP_DIRECTORY=$srcdir/quicklisp-client-version-$_qlver ./waf build_cboehmprecise
}

package() {
  cd "$_srcname/"
  ./waf install_cboehmprecise --destdir "$pkgdir"
  CLASP_QUICKLISP_DIRECTORY=$srcdir/quicklisp-client-version-$_qlver CLASP_FEATURES=ignore-extensions ./build/boehmprecise/iclasp-boehmprecise -N -l 'quicklisp:setup.lisp' -e '(ql:quickload :common-lisp-jupyter)' -e "(clj:install :use-implementation t :system t :bin-path \"/usr/bin/clasp\" :prefix \"$pkgdir\")"
  sed -i '/"\/usr\/bin\/clasp",.*/a     "--load", "quicklisp:setup.lisp",' $pkgdir/usr/share/jupyter/kernels/common-lisp_clasp/kernel.json
  mkdir -p "$pkgdir/usr/lib/clasp/src/lisp/modules/quicklisp"
  cp -ra $srcdir/quicklisp-client-version-$_qlver/* "$pkgdir/usr/lib/clasp/src/lisp/modules/quicklisp/"
  chmod a+w "$pkgdir/usr/lib/clasp/src/lisp/modules/quicklisp/local-projects/system-index.txt"
}