# a tar file with no directory prefixes. Since sbcl-0.6.10, we've
 # switched over to trying to do this the way everyone else does.)
 
-b=${1:?missing base directory name argument}
+b=${1:?"missing base directory name argument"}
 tar -cf $b-binary.tar \
     $b/output/sbcl.core $b/src/runtime/sbcl \
     $b/BUGS $b/COPYING $b/CREDITS $b/INSTALL $b/NEWS $b/README \
 
     $INSTALL_ROOT/man $INSTALL_ROOT/man/man1 \
     $SBCL_HOME $SBCL_HOME/systems
 
-test -e $INSTALL_ROOT/bin/sbcl && \
+test -f $INSTALL_ROOT/bin/sbcl && \
     cp $INSTALL_ROOT/bin/sbcl $INSTALL_ROOT/bin/sbcl.old
-test -e $SBCL_HOME/sbcl.core && \
+test -f $SBCL_HOME/sbcl.core && \
     cp $SBCL_HOME/sbcl.core $SBCL_HOME/sbcl.core.old
 
 cp src/runtime/sbcl $INSTALL_ROOT/bin/
 gnumake=${GNUMAKE:-gmake}
 for i in contrib/*; do
     test -d $i && test -f $i/test-passed || continue;
-    export INSTALL_DIR=$SBCL_HOME/`basename $i `
+    INSTALL_DIR=$SBCL_HOME/`basename $i `
+    export INSTALL_DIR
     ensure_dirs $INSTALL_DIR && $gnumake -C $i install
 done
 
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
 
-"0.7.12.53"
+"0.7.12.54"