X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=run-sbcl.sh;h=f1876c3757ddc1c8ef6b80836c97a816e6f1a2f4;hb=2db542f484283726e64dd4606e7a0f74b9b228ee;hp=1fa7146ba05a6ecf493a9a3dd894b41628f68860;hpb=e9d20dbcc57faf5be8ebccf95b4a8da680589990;p=sbcl.git diff --git a/run-sbcl.sh b/run-sbcl.sh index 1fa7146..f1876c3 100644 --- a/run-sbcl.sh +++ b/run-sbcl.sh @@ -1,6 +1,6 @@ +#!/bin/sh # A simple shell-script to run the freshly build SBCL without -# installing it. Expects to be run from the top of the SBCL source -# tree. +# installing it. # This software is part of the SBCL system. See the README file for # more information. @@ -13,31 +13,36 @@ 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 - echo "Expects the current directory to be the topmost directory of the SBCL" - echo "source tree or binary tarball." - echo - exit 1 +BASE=`dirname "$0"` +CORE_DEFINED=no + +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 [ -f sbcl-pwd.sh -a -x src/runtime/sbcl -a -f output/sbcl.core ]; then - . sbcl-pwd.sh - sbcl_pwd - echo "(running SBCL from: $SBCL_PWD)" - SBCL_HOME=$SBCL_PWD/contrib src/runtime/sbcl --core output/sbcl.core $@ -elif [ -f run-sbcl.sh -a -f version.lisp-expr ]; then - echo "No built SBCL here ($(pwd)): run 'sh make.sh' first!" - exit 1 +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 $ARGUMENTS "$@" else - echo "No SBCL here ($(pwd))!" - echo - echo "run-sbcl.sh needs to be run from the top of the SBCL source tree or" - echo "binary tarball." + echo "No built SBCL here ($BASE): run 'sh make.sh' first!" exit 1 fi