X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=run-sbcl.sh;h=26dc4068928f7cbb60b642f7de6d434f543de833;hb=26d0559df82a00acf85b8ec89541ee8e09bb3e55;hp=d14b202778d93878a2585aaa17793ecbd787e209;hpb=f86c1ec4e8782fd24c758c9775c8592a16768215;p=sbcl.git diff --git a/run-sbcl.sh b/run-sbcl.sh index d14b202..26dc406 100644 --- a/run-sbcl.sh +++ b/run-sbcl.sh @@ -13,22 +13,43 @@ set -e -if [ "$1" = "--help" ]; then - echo "usage: run-sbcl.sh sbcl-options*" - echo - echo "Runs SBCL from the build directory or binary tarball without need for" - echo "installation. Except for --help and --core, accepts all the same" - echo "command-line options as SBCL does." - echo - exit 1 +BASE=`dirname "$0"` +if (readlink -f "${BASE}") >/dev/null 2>&1; then + BASE=`readlink -f ${BASE}` +else + opwd=`pwd` + cd "${BASE}" + BASE=`pwd` + cd "${opwd}" fi +CORE_DEFINED=no -BASE=`dirname "$0"` +for arg in $*; do + case $arg in + --core) + CORE_DEFINED=yes + ;; + --help) + echo "usage: run-sbcl.sh sbcl-options*" + echo + echo "Runs SBCL from the build directory or binary tarball without need for" + echo "installation. Except for --help, accepts all the same command-line options" + echo "as SBCL does." + echo + exit 1 + ;; + esac +done + +ARGUMENTS="" + +if [ "$CORE_DEFINED" = "no" ]; then + ARGUMENTS="--core "$BASE"/output/sbcl.core" +fi if [ -x "$BASE"/src/runtime/sbcl -a -f "$BASE"/output/sbcl.core ]; then echo "(running SBCL from: $BASE)" - SBCL_HOME="$BASE"/contrib \ - "$BASE"/src/runtime/sbcl --core "$BASE"/output/sbcl.core "$@" + SBCL_HOME="$BASE"/contrib "$BASE"/src/runtime/sbcl $ARGUMENTS "$@" else echo "No built SBCL here ($BASE): run 'sh make.sh' first!" exit 1