void-packages/srcpkgs/ecl/template
Gonzalo Tornaría f29a2c78ea ecl: enable tests
The tests for ecl were not running as make check failed to find the
binary (according to upstream one should install it before running
tests, but properly setting some variables makes it work).

OTOH, there's a bunch of tests that fail. Out of 18098 tests there are
around 10 that fail on x86_64 and i686 (the number varies as some
failures are kind of random). On x86_64-musl there are about 30 more
failures but they all seem to be the same (something to do with the
value of acosh(-infinity)).

It's also the case that failures in the test suite will NOT stop make
with an error, so packaging with -Q is not broken.

it is left for the future to fix the failing tests and patch make check
so it actually fails the build.

Not revbumping b/c this does not change anything in the installed files.
2021-11-21 14:50:05 -03:00

37 lines
1.4 KiB
Bash

# Template file for 'ecl'
pkgname=ecl
version=21.2.1
revision=1
build_style=gnu-configure
configure_args="--enable-gmp=system --enable-boehm=system
--enable-libatomic=system --with-dffi=system"
hostmakedepends="pkg-config"
makedepends="gc-devel libatomic_ops-devel gmp-devel libffi-devel"
depends="$makedepends"
short_desc="Common-Lisp interpreter as described in the X3J13 Ansi specification"
maintainer="Kyle Nusbaum <knusbaum+void@sdf.org>"
license="LGPL-2.1-or-later"
homepage="https://common-lisp.net/project/ecl/"
distfiles="https://common-lisp.net/project/ecl/static/files/release/ecl-${version}.tgz"
checksum=b15a75dcf84b8f62e68720ccab1393f9611c078fcd3afdd639a1086cad010900
if [ "$CROSS_BUILD" ]; then
# Depend on system ecl
hostmakedepends+=" ecl"
configure_args+=" --with-cross-config=${XBPS_SRCPKGDIR}/ecl/files/cross_config"
fi
pre_check() {
# These settings enable `make check` to run using the compiled ecl.
# A few tests fail: out of 18098 tests there are ~10 that fail on
# glibc and an additional ~30 fail on musl (the numbers vary as
# some failures seem random.)
#
# The build finishes since `make check` does NOT fail; it is left
# for the future to fix the failing tests and patch make check so
# it actually fails the build.
export ECLDIR=$wrksrc/build/
export LD_LIBRARY_PATH=$wrksrc/build/
export TEST_IMAGE=$wrksrc/build/bin/ecl
make_check_args="ECL=$TEST_IMAGE"
}