diff options
-rw-r--r-- | .SRCINFO | 24 | ||||
-rw-r--r-- | PKGBUILD | 77 | ||||
-rw-r--r-- | cl-iterate.install | 76 | ||||
-rw-r--r-- | run-tests.lisp | 7 |
4 files changed, 73 insertions, 111 deletions
@@ -1,16 +1,18 @@ pkgbase = cl-iterate - pkgdesc = iterate is an iteration construct for Common Lisp. - pkgver = 20140713_darcs + pkgdesc = An iteration construct for Common Lisp + pkgver = 1.5.3.r12.gea90d81 pkgrel = 1 - url = http://common-lisp.net/project/iterate/ - install = cl-iterate.install - arch = i686 - arch = x86_64 - license = BSD + url = https://iterate.common-lisp.dev + arch = any + license = MIT + checkdepends = sbcl + checkdepends = cl-rt + makedepends = git depends = common-lisp - options = docs - source = http://beta.quicklisp.org/archive/iterate/2014-07-13/iterate-20140713-darcs.tgz - md5sums = f3d8e9eb6a9241bb1303c9708a37ade4 + depends = cl-asdf + source = cl-iterate::git+https://gitlab.common-lisp.net/iterate/iterate.git#commit=ea90d8188703cd4c66123a39d4d604f2bb03e96d + source = run-tests.lisp + b2sums = SKIP + b2sums = 19e7e1dae5906b3f9a2fa1ca4a5ca8f2c678bf2a681a07910f1cd9340628886a4de05c44f0d5b1a12436cae39a7fe1b11a64e4d83ea3c0ea62532fa58a67db13 pkgname = cl-iterate - @@ -1,35 +1,64 @@ -# Maintainer: mrshpot <mrshpot at gmail dot com> -# Contributor: veox <box 55 [shift-two] mail [dot] ru> +# Maintainer: George Rawlinson <grawlinson@archlinux.org> pkgname=cl-iterate -_clname=iterate # used in CL scope, not package scope -pkgver=20140713_darcs -_pkgver=20140713-darcs +_pkgname="${pkgname#cl-}" +pkgver=1.5.3.r12.gea90d81 pkgrel=1 -pkgdesc="iterate is an iteration construct for Common Lisp." -arch=('i686' 'x86_64') -url="http://common-lisp.net/project/iterate/" -license=('BSD') -depends=('common-lisp') -install=cl-iterate.install -source=("http://beta.quicklisp.org/archive/iterate/2014-07-13/iterate-20140713-darcs.tgz") -md5sums=('f3d8e9eb6a9241bb1303c9708a37ade4') -options=(docs) +pkgdesc='An iteration construct for Common Lisp' +arch=('any') +url='https://iterate.common-lisp.dev' +license=('MIT') +depends=('common-lisp' 'cl-asdf') +makedepends=('git') +checkdepends=('sbcl' 'cl-rt') +_commit='ea90d8188703cd4c66123a39d4d604f2bb03e96d' +source=( + "$pkgname::git+https://gitlab.common-lisp.net/iterate/iterate.git#commit=$_commit" + 'run-tests.lisp' +) +b2sums=('SKIP' + '19e7e1dae5906b3f9a2fa1ca4a5ca8f2c678bf2a681a07910f1cd9340628886a4de05c44f0d5b1a12436cae39a7fe1b11a64e4d83ea3c0ea62532fa58a67db13') +pkgver() { + cd "$pkgname" + + git describe --tags | sed -e 's/^v//' -e 's/-/.r/' -e 's/-/./g' +} + +prepare() { + cd "$pkgname" + + sed -n '/;;; Copyright/,/;; SOFTWARE/p' iterate-test.lisp | \ + sed -r 's/^:::?//' > LICENSE-TESTS + + sed -n '/ITERATE, An Iteration Macro/,/;;; SOFTWARE/p' iterate.lisp | \ + sed -r 's/^:::?//' > LICENSE +} + +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" - install -d ${pkgdir}/usr/share/common-lisp/source/${_clname} - install -d ${pkgdir}/usr/share/common-lisp/systems - install -d ${pkgdir}/usr/share/licenses/${pkgname} + # library + install -vDm644 -t "$pkgdir/usr/share/common-lisp/source/$_pkgname" ./*.{lisp,asd} - install -m 644 -t ${pkgdir}/usr/share/common-lisp/source/${_clname} \ - ${srcdir}/${_clname}-${_pkgver}/*.lisp - install -m 644 -t ${pkgdir}/usr/share/common-lisp/source/${_clname} \ - ${srcdir}/${_clname}-${_pkgver}/*.asd + pushd "$pkgdir/usr/share/common-lisp/systems" + ln -s "../source/$_pkgname/$_pkgname.asd" . + popd - cd ${pkgdir}/usr/share/common-lisp/systems - ln -s ../source/${_clname}/${_clname}.asd . + # documentation + install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md - # TODO: docs (SPEC/README) + # license + install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE* } diff --git a/cl-iterate.install b/cl-iterate.install deleted file mode 100644 index bb835f784761..000000000000 --- a/cl-iterate.install +++ /dev/null @@ -1,76 +0,0 @@ -# arg 1: the new package version - -_pkgname=iterate -_compile_log=n -_lisp=() - -if pacman -Qq clisp-new-clx &>/dev/null || - pacman -Qq clisp-gtk2 &>/dev/null || - pacman -Qq clisp-new-clx &>/dev/null; then - _lisp=(${_lisp[@]} 'clisp') -fi -if pacman -Qq sbcl &>/dev/null; then - _lisp=(${_lisp[@]} 'sbcl') -fi -if pacman -Qq cmucl &> /dev/null; then - _lisp=(${_lisp[@]} 'cmucl') -fi - -_compile_sbcl() { - sbcl --noinform --no-sysinit --no-userinit \ - --eval "(require :asdf)" \ - --eval "(pushnew #p\"/usr/share/common-lisp/systems/\" asdf:*central-registry* :test #'equal)" \ - --eval "(asdf:operate 'asdf:compile-op '${_pkgname})" \ - --eval "(quit)" &> ${_compile_log_file} || return 1 -} -_compile_clisp() { - clisp --silent -norc -x \ - "(load #p\"/usr/share/common-lisp/source/asdf/asdf\") - (pushnew #p\"/usr/share/common-lisp/systems/\" asdf:*central-registry* :test #'equal) - (asdf:operate 'asdf:compile-op '${_pkgname}) - (quit)" &> ${_compile_log_file} || return 1 -} -_compile_cmucl() { - cmucl -quiet -nositeinit -noinit -eval \ - "(load #p\"/usr/share/common-lisp/source/asdf/asdf\") - (pushnew #p\"/usr/share/common-lisp/systems/\" asdf:*central-registry* :test #'equal) - (asdf:operate 'asdf:compile-op '${_pkgname}) - (quit)" &> ${_compile_log_file} || return 1 -} - -post_install() { - for _lispiter in ${_lisp[@]}; do - echo "---> Compiling lisp files using ${_lispiter} <---" - if [ $_compile_log = 'y' ]; then - _compile_log_file=/tmp/${_pkgname}_${_lispiter}.log - else - _compile_log_file=/dev/null - fi - _compile_${_lispiter} - echo "---> Done compiling lisp files (using ${_lispiter}) <---" - done - - cat << EOM - - To load this library, load asdf and then run the following lines - (or their equivalent for your lisp of choice): - - (push #p"/usr/share/common-lisp/systems/" asdf:*central-registry*) - (asdf:operate 'asdf:load-op '${_pkgname}) -EOM -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - rm -f /usr/share/common-lisp/source/${_pkgname}/{*.fas,*.fasl,*.lib,*.x86f} -} - -op=$1 -shift - -$op $* - -# End of file diff --git a/run-tests.lisp b/run-tests.lisp new file mode 100644 index 000000000000..d568139ec713 --- /dev/null +++ b/run-tests.lisp @@ -0,0 +1,7 @@ +(require "asdf") + +(push (uiop/os:getcwd) asdf:*central-registry*) + +(asdf:load-system "iterate/tests") + +(uiop:quit (if (asdf:test-system "iterate") 0 1)) |