summaryrefslogtreecommitdiff
path: root/check-guile.in
diff options
context:
space:
mode:
Diffstat (limited to 'check-guile.in')
-rw-r--r--check-guile.in51
1 files changed, 51 insertions, 0 deletions
diff --git a/check-guile.in b/check-guile.in
new file mode 100644
index 000000000..214deec16
--- /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_builddir}/meta/guile.
+# See ${top_srcdir}/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
+
+top_builddir=@top_builddir_absolute@
+top_srcdir=@top_srcdir_absolute@
+
+TEST_SUITE_DIR=${top_srcdir}/test-suite
+export TEST_SUITE_DIR
+
+if [ x"$1" = x-i ] ; then
+ guile=$2
+ shift
+ shift
+else
+ guile=${top_builddir}/meta/guile
+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 \
+ --debug \
+ -L "$TEST_SUITE_DIR" \
+ --no-auto-compile -e main -s "$TEST_SUITE_DIR/guile-test" \
+ --test-suite "$TEST_SUITE_DIR/tests" \
+ --log-file check-guile.log "$@"
+
+# check-guile ends here