diff options
Diffstat (limited to 'benchmark-guile.in')
-rw-r--r-- | benchmark-guile.in | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/benchmark-guile.in b/benchmark-guile.in new file mode 100644 index 000000000..8378e9d01 --- /dev/null +++ b/benchmark-guile.in @@ -0,0 +1,49 @@ +#! /bin/sh +# Usage: benchmark-guile [-i GUILE-INTERPRETER] [GUILE-BENCHMARK-ARGS] +# If `-i GUILE-INTERPRETER' is omitted, use ${top_builddir}/meta/guile. +# See ${top_srcdir}/benchmark-suite/guile-benchmark for documentation on GUILE-BENCHMARK-ARGS. +# +# Example invocations: +# ./benchmark-guile +# ./benchmark-guile numbers.bm +# ./benchmark-guile -i /usr/local/bin/guile +# ./benchmark-guile -i /usr/local/bin/guile numbers.bm + +set -e + +top_builddir=@top_builddir_absolute@ +top_srcdir=@top_srcdir_absolute@ + +BENCHMARK_SUITE_DIR=${top_srcdir}/benchmark-suite + +if [ x"$1" = x-i ] ; then + guile=$2 + shift + shift +else + guile=${top_builddir}/meta/guile +fi + +GUILE_LOAD_PATH="$BENCHMARK_SUITE_DIR${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH" +export GUILE_LOAD_PATH + +if [ -f "$guile" -a -x "$guile" ] ; then + echo Benchmarking $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 \ + -L "$BENCHMARK_SUITE_DIR" \ + -e main -s "$BENCHMARK_SUITE_DIR/guile-benchmark" \ + --benchmark-suite "$BENCHMARK_SUITE_DIR/benchmarks" \ + --log-file benchmark-guile.log "$@" + +# benchmark-guile ends here |