void-packages/srcpkgs/sbcl/template
Leah Neukirchen 7d12f74461 sbcl: drop support for i686.
SBCL on x86 uses modify_ldt(2), which is disabled on our x86_64
Linux 4.9 kernels, causing SBCL to crash immediately.

Dropping i686 support for the template for now, feel free to fix.
Interested users also can do a native build on a i686 machine with our
i686 kernel.
2017-01-02 22:48:04 +01:00

67 lines
2 KiB
Bash

# Template file for 'sbcl'
pkgname=sbcl
version=1.3.13
revision=1
only_for_archs="x86_64 x86_64-musl armv7l aarch64"
hostmakedepends="iana-etc"
makedepends="zlib-devel"
conf_files="/etc/sbclrc"
short_desc="Steel Bank Common Lisp"
maintainer="Christian Neukirchen <chneukirchen@gmail.com>"
license="custom"
homepage="http://www.sbcl.org/"
distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}-source.tar.bz2"
checksum=4c6935e4a9022637da95f2aab04d08326762f55a35942b40cb6a4276838c76cc
nocross=yes
nopie=yes
_bootstrap_lisp="bash ../sbcl-*-linux/run-sbcl.sh --no-sysinit --no-userinit --disable-debugger"
case "$XBPS_TARGET_MACHINE" in
x86_64)
distfiles+=" ${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}-x86-64-linux-binary.tar.bz2"
checksum+=" f92dbcb379f3a35ba13fd75a10912b767e5d8b2b10698413e5a217cea2f49cca"
;;
i686)
distfiles+=" ${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-1.2.7-x86-linux-binary.tar.bz2"
checksum+=" 724425fe0d28747c7d31c6655e39fa8c27f9ef4608c482ecc60089bcc85fc31d"
;;
arm*)
distfiles+=" ${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-1.2.14-armhf-linux-binary.tar.bz2"
checksum+=" a5fbf1d596a909a7719bc4a958f00e8537bf399fa051f83736baee950b21e56a"
;;
aarch64*)
distfiles+=" ${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-1.3.9-arm64-linux-binary.tar.bz2"
checksum+=" 494829f8e3ea7eb1c308b343cc390daf94a6215030a5f2b9ee0cded67511e918"
;;
*-musl)
makedepends+=" ccl"
_bootstrap_lisp="ccl --batch --quiet --no-init"
;;
esac
do_build() {
export CFLAGS+=" -D_GNU_SOURCE -fno-omit-frame-pointer -DSBCL_HOME=/usr/lib/sbcl"
export LINKFLAGS="$LDFLAGS"
bash make.sh \
"$_bootstrap_lisp" \
--without-sb-test --with-sb-core-compression --prefix=/usr
make -C doc/manual info
}
do_install() {
SBCL_HOME="" INSTALL_ROOT="$DESTDIR/usr" sh install.sh
vlicense COPYING LICENSE
vconf ${FILESDIR}/sbclrc
}
sbcl-source_package() {
noarch=yes
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" -- source files"
pkg_install() {
cd $wrksrc
./clean.sh
vmkdir usr/lib/sbcl
vcopy src usr/lib/sbcl
}
}