summaryrefslogtreecommitdiff
path: root/extra/sbcl/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'extra/sbcl/PKGBUILD')
-rw-r--r--extra/sbcl/PKGBUILD73
1 files changed, 73 insertions, 0 deletions
diff --git a/extra/sbcl/PKGBUILD b/extra/sbcl/PKGBUILD
new file mode 100644
index 000000000..c54bc6df9
--- /dev/null
+++ b/extra/sbcl/PKGBUILD
@@ -0,0 +1,73 @@
+# $Id: PKGBUILD 117231 2011-03-30 10:39:06Z juergen $
+# Contributor: John Proctor <jproctor@prium.net>
+# Contributor: Daniel White <daniel@whitehouse.id.au>
+# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
+# Contributor: Leslie Polzer (skypher)
+
+pkgname=sbcl
+pkgver=1.0.47
+pkgrel=1
+pkgdesc="Steel Bank Common Lisp"
+arch=('i686' 'x86_64')
+license=('custom')
+depends=('glibc')
+provides=('common-lisp' 'cl-asdf')
+makedepends=('sbcl' 'texinfo')
+source=("http://downloads.sourceforge.net/project/sbcl/sbcl/$pkgver/$pkgname-$pkgver-source.tar.bz2" "arch-fixes.lisp")
+md5sums=('2e90fca5ffec9ce19ed232b24f09cd0a'
+ '7ac0c1936547f4278198b8bf7725204d')
+url="http://www.sbcl.org/"
+install=sbcl.install
+
+build() {
+ export CFLAGS="${CFLAGS} -DSBCL_HOME=\\\"/usr/lib/sbcl\\\""
+ export GNUMAKE="make -e"
+
+ # build system uses LINKFLAGS and OS_LIBS to build LDFLAGS
+ export LINKFLAGS="$LD_FLAGS"
+ unset LDFLAGS
+ cd ${startdir}/src/${pkgname}-${pkgver}
+ # Make a multi-threaded SBCL, disable LARGEFILE
+ cat >customize-target-features.lisp <<EOF
+(lambda (features)
+ (flet ((enable (x) (pushnew x features))
+ (disable (x) (setf features (remove x features))))
+ (enable :sb-thread)
+ (disable :largefile)))
+EOF
+
+ sh make.sh sbcl
+ mkdir -p ${startdir}/pkg/usr
+ pushd doc/manual
+ make info || return 1
+ popd
+ INSTALL_ROOT=${startdir}/pkg/usr sh install.sh
+
+ src/runtime/sbcl --core output/sbcl.core --script ${startdir}/src/arch-fixes.lisp
+ mv sbcl-new.core ${startdir}/pkg/usr/lib/sbcl/sbcl.core
+
+# sources
+ mkdir -p ${startdir}/pkg/usr/share/sbcl-source
+ cp -R -t ${startdir}/pkg/usr/share/sbcl-source \
+ ${startdir}/src/${pkgname}-${pkgver}/{src,contrib}
+
+# drop unwanted files
+ find ${startdir}/pkg/usr/share/sbcl-source -type f \
+ -name \*.fasl -or \
+ -name \*.o -or \
+ -name \*.log -or \
+ -name \*.so -or \
+ -name a.out -delete
+
+ rm ${startdir}/pkg/usr/share/sbcl-source/src/runtime/sbcl
+ rm ${startdir}/pkg/usr/share/sbcl-source/src/runtime/sbcl.nm
+
+ find ${startdir}/pkg \( -name Makefile -o -name .cvsignore \) -delete
+
+ rm $startdir/pkg/usr/share/info/dir
+ gzip -9nf $startdir/pkg/usr/share/info/*
+
+ # license
+ install -D -m644 ${startdir}/src/${pkgname}-${pkgver}/COPYING \
+ ${startdir}/pkg/usr/share/licenses/${pkgname}/license.txt
+}