summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Rawlinson2022-05-16 02:19:18 +0000
committerGeorge Rawlinson2022-05-16 02:19:18 +0000
commitcdc38e5bb5676b18425f7afafd2e39281cd555b4 (patch)
tree6f38d1f285b4edbff9c40510f0980ab3db52b57e
downloadaur-cdc38e5bb5676b18425f7afafd2e39281cd555b4.tar.gz
addpkg: cl-parenscript 2.7.1.r21-1
-rw-r--r--.SRCINFO23
-rw-r--r--PKGBUILD61
-rw-r--r--run-tests.lisp26
3 files changed, 110 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..18cea0a9246b
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = cl-parenscript
+ pkgdesc = Lisp to Javascript transpiler
+ pkgver = 2.7.1.r21.g1fd720b
+ pkgrel = 1
+ url = https://gitlab.common-lisp.net/parenscript/parenscript
+ arch = any
+ license = BSD
+ license = custom:GFDL-1.3
+ checkdepends = sbcl
+ checkdepends = cl-fiveam
+ checkdepends = cl-javascript
+ makedepends = git
+ depends = common-lisp
+ depends = cl-asdf
+ depends = cl-ppcre
+ depends = cl-anaphora
+ depends = cl-named-readtables
+ source = cl-parenscript::git+https://gitlab.common-lisp.net/parenscript/parenscript.git#commit=1fd720bc4e2bc5ed92064391b730b9d4db35462a
+ source = run-tests.lisp
+ b2sums = SKIP
+ b2sums = c1074b6d201562663020b7b2100ba16d8b96677c15e4786dccfbfe41b91cc4ecdda79741b3c0f69e24a2b1dce300caa2a554e981b55ac56daea6f81aebf96cbf
+
+pkgname = cl-parenscript
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..664a87d7534c
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,61 @@
+# Maintainer: George Rawlinson <grawlinson@archlinux.org>
+
+pkgname=cl-parenscript
+_pkgname="${pkgname#cl-}"
+pkgver=2.7.1.r21.g1fd720b
+pkgrel=1
+pkgdesc='Lisp to Javascript transpiler'
+arch=('any')
+url='https://gitlab.common-lisp.net/parenscript/parenscript'
+license=('BSD' 'custom:GFDL-1.3')
+depends=('common-lisp' 'cl-asdf' 'cl-ppcre' 'cl-anaphora' 'cl-named-readtables')
+makedepends=('git')
+checkdepends=('sbcl' 'cl-fiveam' 'cl-javascript')
+_commit='1fd720bc4e2bc5ed92064391b730b9d4db35462a'
+source=(
+ "$pkgname::git+$url.git#commit=$_commit"
+ 'run-tests.lisp'
+)
+b2sums=('SKIP'
+ 'c1074b6d201562663020b7b2100ba16d8b96677c15e4786dccfbfe41b91cc4ecdda79741b3c0f69e24a2b1dce300caa2a554e981b55ac56daea6f81aebf96cbf')
+
+pkgver() {
+ cd "$pkgname"
+
+ # first known commit to receive latest version (sourced from NEWS)
+ local _pkgver='2.7.1'
+ local _pkgcommit='b8dd346d482b730a052902be1af724b16c6f2979'
+
+ git tag "$_pkgver" "$_pkgcommit"
+
+ git describe --tags | sed -e 's/^v//' -e 's/-/.r/' -e 's/-/./g'
+}
+
+check() {
+ cd "$pkgname"
+
+ sbcl --script ../run-tests.lisp
+}
+
+package() {
+ cd "$pkgname"
+
+ # create directories
+ install -vd \
+ "$pkgdir/usr/share/common-lisp/source/$_pkgname" \
+ "$pkgdir/usr/share/common-lisp/systems"
+
+ # library
+ cp -vr extras runtime src tests ./*.asd "$pkgdir/usr/share/common-lisp/source/$_pkgname"
+
+ pushd "$pkgdir/usr/share/common-lisp/systems"
+ ln -s "../source/$_pkgname"/*.asd .
+ popd
+
+ # documentation
+ install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" NEWS README ChangeLog
+ cp -vr docs "$pkgdir/usr/share/doc/$pkgname"
+
+ # license
+ install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" COPYING
+}
diff --git a/run-tests.lisp b/run-tests.lisp
new file mode 100644
index 000000000000..9db4ffc0d8c1
--- /dev/null
+++ b/run-tests.lisp
@@ -0,0 +1,26 @@
+(require "asdf")
+
+(push (uiop/os:getcwd) asdf:*central-registry*)
+
+(asdf:load-system "parenscript.tests")
+
+(uiop:quit (if (fiveam:run 'parenscript.tests:parenscript-tests) 0 1))
+; "(setq *debugger-hook*
+; (lambda (condition x)
+; (declare (ignore x))
+; (let ((*standard-output* uiop:*stderr*))
+; (fresh-line)
+; (write-string \"Debugger entered with error \")
+; (princ (type-of condition))
+; (write-string \": \")
+; (princ condition)
+; (terpri)
+; (uiop:quit 1))))
+; (ql:quickload \"parenscript.tests\")
+; (let* ((fiveam:*print-names* nil)
+; (fiveam:*test-dribble* uiop:*stderr*)
+; (test-results (fiveam:run
+; 'parenscript.tests:parenscript-tests)))
+; (unless (fiveam:results-status test-results)
+; (fiveam:explain! test-results)
+; (uiop:quit 1)))")