void-packages/srcpkgs/sbcl/template
2022-03-30 18:18:48 +02:00

66 lines
2.1 KiB
Bash

# Template file for 'sbcl'
pkgname=sbcl
version=2.2.3
revision=1
archs="i686 x86_64* armv7l aarch64 ppc64le*"
hostmakedepends="iana-etc texinfo"
makedepends="zlib-devel"
conf_files="/etc/sbclrc"
short_desc="Steel Bank Common Lisp"
maintainer="Leah Neukirchen <leah@vuxu.org>"
license="custom:BSD+public_domain"
homepage="http://www.sbcl.org/"
changelog="http://www.sbcl.org/news.html"
distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}-source.tar.bz2"
checksum=de7f49e1f7750fd2cd89111ef70641cc5471355f621b737392ac68aa95f37f9f
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+=" 8745f9358b686819209e188a93fb8cf5b4227a3f623af20504a68d129a314256"
;;
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+=" 14c8fc0f3a03416b5d23763156e2bb28b690fb665af1e6f6112201fd0ddcd512"
;;
i686*|ppc*|*-musl)
# ecl bootstrap is broken since 2.2.0:
# https://build.voidlinux.org/builders/x86_64-musl_builder/builds/39694/steps/shell_3/logs/stdio
makedepends+=" clisp"
_bootstrap_lisp="clisp"
;;
esac
do_build() {
printf '"%s.void.%s"\n' "$version" "$revision" >version.lisp-expr
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() {
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" -- source files"
pkg_install() {
cd $wrksrc
./clean.sh
vmkdir usr/lib/sbcl
vcopy src usr/lib/sbcl
}
}