diff --git a/check-guile.in b/check-guile.in new file mode 100644 index 000000000..547a93753 --- /dev/null +++ b/check-guile.in @@ -0,0 +1,51 @@ +#! /bin/sh +# Usage: check-guile [-i GUILE-INTERPRETER] [GUILE-TEST-ARGS] +# If `-i GUILE-INTERPRETER' is omitted, use ${top_srcdir}/pre-inst-guile. +# See test-suite/guile-test for documentation on GUILE-TEST-ARGS. +# +# Example invocations: +# ./check-guile +# ./check-guile numbers.test +# ./check-guile -i /usr/local/bin/guile +# ./check-guile -i /usr/local/bin/guile numbers.test + +set -e + +# this script runs in the top-level build-dir. +top_builddir=`pwd` +top_srcdir=@top_srcdir@ + +TEST_SUITE_DIR=${top_srcdir}/test-suite + +if [ x"$1" = x-i ] ; then + guile=$2 + guile_opts= + shift + shift +else + guile=${top_srcdir}/pre-inst-guile + guile_opts="${top_builddir}" +fi + +GUILE_LOAD_PATH=$TEST_SUITE_DIR +export GUILE_LOAD_PATH + +if [ -f "$guile" -a -x "$guile" ] ; then + echo Testing $guile ... "$@" + echo with GUILE_LOAD_PATH=$GUILE_LOAD_PATH +else + echo ERROR: Cannot execute $guile + exit 1 +fi + +# documentation searching ignores GUILE_LOAD_PATH. +if [ ! -f guile-procedures.txt ] ; then + @LN_S@ libguile/guile-procedures.txt . +fi + +exec $guile $guile_opts \ + -e main -s "$TEST_SUITE_DIR/guile-test" \ + --test-suite "$TEST_SUITE_DIR/tests" \ + --log-file check-guile.log "$@" + +# check-guile ends here diff --git a/pre-inst-guile b/pre-inst-guile new file mode 100755 index 000000000..e69de29bb diff --git a/pre-inst-guile.am b/pre-inst-guile.am new file mode 100644 index 000000000..e69de29bb