mirror of
https://github.com/void-linux/void-packages.git
synced 2025-06-05 06:33:50 +02:00
chez-scheme: update to 10.0.0.
This commit is contained in:
parent
29992aad3f
commit
9afd738f21
1 changed files with 27 additions and 53 deletions
|
@ -1,78 +1,52 @@
|
||||||
# Template file for 'chez-scheme'
|
# Template file for 'chez-scheme'
|
||||||
pkgname=chez-scheme
|
pkgname=chez-scheme
|
||||||
version=9.6.4
|
version=10.0.0
|
||||||
revision=1
|
revision=1
|
||||||
build_style=gnu-configure
|
build_style=gnu-makefile
|
||||||
hostmakedepends="git libX11-devel liblz4-devel libuuid-devel ncurses-devel zlib-devel"
|
make_build_target="kernel"
|
||||||
|
hostmakedepends="libX11-devel liblz4-devel ncurses-devel zlib-devel"
|
||||||
makedepends="${hostmakedepends}"
|
makedepends="${hostmakedepends}"
|
||||||
short_desc="Compiler and run-time system for R6RS Scheme"
|
short_desc="Compiler and run-time system for R6RS Scheme"
|
||||||
maintainer="Leah Neukirchen <leah@vuxu.org>"
|
maintainer="Leah Neukirchen <leah@vuxu.org>"
|
||||||
license="Apache-2.0"
|
license="Apache-2.0"
|
||||||
homepage="https://scheme.com/"
|
homepage="https://scheme.com/"
|
||||||
distfiles="https://github.com/cisco/ChezScheme/releases/download/v${version}/csv${version}.tar.gz"
|
distfiles="https://github.com/cisco/ChezScheme/releases/download/v${version}/csv${version}.tar.gz"
|
||||||
checksum=f5827682fa259c47975ffe078785fb561e4a5c54f764331ef66c32132843685d
|
checksum=d37199012b5ed1985c4069d6a87ff18e5e1f5a2df27e402991faf45dc4f2232c
|
||||||
alternatives="
|
alternatives="
|
||||||
scheme:scheme:/usr/bin/chez-scheme
|
scheme:scheme:/usr/bin/chez-scheme
|
||||||
scheme:scheme.1:/usr/share/man/man1/chez-scheme.1
|
scheme:scheme.1:/usr/share/man/man1/chez-scheme.1
|
||||||
"
|
"
|
||||||
|
|
||||||
archs="i686* x86_64* armv6l* armv7l*"
|
|
||||||
case "$XBPS_MACHINE" in
|
|
||||||
i686*) _host=ti3le;;
|
|
||||||
x86_64*) _host=ta6le;;
|
|
||||||
arm*) _host=arm32le;; # no threading makefile
|
|
||||||
*) broken="unsupported host platform";;
|
|
||||||
esac
|
|
||||||
case "$XBPS_TARGET_MACHINE" in
|
case "$XBPS_TARGET_MACHINE" in
|
||||||
i686*) _target=ti3le;;
|
i686*) _target=ti3le;;
|
||||||
x86_64*) _target=ta6le;;
|
x86_64*) _target=ta6le;;
|
||||||
arm*) _target=arm32le;;
|
arm*) _target=tarm32le;;
|
||||||
*) broken="unsupported target platform";;
|
aarch64*) _target=tarm64le;;
|
||||||
|
riscv64*) _target=trv64le;;
|
||||||
|
*) _target=pb;; # portable bytecode
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
pre_configure() {
|
||||||
|
# Since version 10, Chez only ships portable boot files, so
|
||||||
|
# first bootstrap with --pb, then build the boot files for the
|
||||||
|
# target. The kernel is (cross-)compiled in do_build.
|
||||||
|
[ $_target = pb ] && return
|
||||||
|
./configure --pb CC="$BUILD_CC" CFLAGS="$BUILD_CFLAGS" LD="$BUILD_LD" \
|
||||||
|
AR=ar ZLIB=-lz LZ4=-llz4
|
||||||
|
make ${makejobs} bootquick XM=${_target}
|
||||||
|
}
|
||||||
|
|
||||||
do_configure() {
|
do_configure() {
|
||||||
# Configure such that scheme uses the zlib and lz4 system shared libs.
|
case $_target in
|
||||||
# ZLIB and LZ4 is used when building the scheme kernel and use the full path.
|
pb) target=--pb;;
|
||||||
# LDFLAGS is extended in 'do_build' so that the rest of the scheme system links them.
|
*) target=--machine=$_target;;
|
||||||
./configure --installprefix=/usr --installman=/usr/share/man \
|
esac
|
||||||
--nogzip-man-pages --temproot=$DESTDIR --machine=$_host \
|
./configure $target --installprefix=/usr --installman=/usr/share/man \
|
||||||
--installschemename=chez-scheme \
|
--nogzip-man-pages --temproot=$DESTDIR \
|
||||||
ZLIB=-L/usr/lib/libz.so LZ4=-L/usr/lib/liblz4.so
|
--installschemename=chez-scheme ZLIB=-lz LZ4=-llz4
|
||||||
}
|
}
|
||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
# make link relative
|
# replace duplicate file by symlink
|
||||||
ln -sf scheme.boot ${DESTDIR}/usr/lib/csv*/*/scheme-script.boot
|
ln -sf scheme.boot ${DESTDIR}/usr/lib/csv*/*/scheme-script.boot
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ "$CROSS_BUILD" ]; then
|
|
||||||
|
|
||||||
do_build() {
|
|
||||||
# Build host/bootstrap scheme compiler.
|
|
||||||
make ${makejobs} CC="$BUILD_CC" CFLAGS="$BUILD_CFLAGS" \
|
|
||||||
LD="$BUILD_LD" LDFLAGS="-lz -llz4 $BUILD_LDFLAGS"
|
|
||||||
./workarea $_target
|
|
||||||
# Use Mf-config created from 'do_configure'.
|
|
||||||
# This is required. The build fails to include the scheme kernel when this is missing.
|
|
||||||
cd $_target/c
|
|
||||||
ln -sf ../../$_host/c/Mf-config .
|
|
||||||
cd ..
|
|
||||||
# Cross compile to target.
|
|
||||||
make ${makejobs} -C s -f Mf-cross m=$_host xm=$_target base=../../$_host
|
|
||||||
make ${makejobs} -C c CC=$CC LD=$LD CFLAGS="$CFLAGS" LDFLAGS="-lz -llz4 $LDFLAGS"
|
|
||||||
}
|
|
||||||
do_install() {
|
|
||||||
cd $_target
|
|
||||||
make -f ../$_host/Mf-install DESTDIR=${DESTDIR} m=$_target
|
|
||||||
}
|
|
||||||
|
|
||||||
else
|
|
||||||
|
|
||||||
do_build() {
|
|
||||||
make ${makejobs} CC=$CC LD=$LD CFLAGS="$CFLAGS" LDFLAGS="-lz -llz4 $LDFLAGS"
|
|
||||||
}
|
|
||||||
do_install() {
|
|
||||||
make DESTDIR=${DESTDIR} install
|
|
||||||
}
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue