diff --git a/bootstrap b/bootstrap index 7d4ca37bd..9dfdc41ac 100755 --- a/bootstrap +++ b/bootstrap @@ -3,8 +3,8 @@ # Run the autotools bootstrap sequence to create the configure script -# Abort execution on error -set -e +set -e # Abort execution on error. +set -u # Abort if you reference an undefined variable. if which libtoolize > /dev/null; then libtoolize="libtoolize" @@ -15,13 +15,21 @@ else exit 1 fi -if [ "$1" = "nosubmodule" ]; then - SKIP_SUBMODULE=1 -elif [ -n "$1" ]; then - echo "$0: Illegal argument $1" - echo "USAGE: $0 [nosubmodule]" - exit 1 -fi +SKIP_SUBMODULE=0 + +case "$#" in + 0) ;; + 1) if [ "$1" = "nosubmodule" ]; then + SKIP_SUBMODULE=1 + else + echo "$0: Illegal argument $1" >&2 + echo "USAGE: $0 [nosubmodule]" >&2 + exit 1 + fi;; + *) echo "$0: Wrong number of command-line arguments." >&2 + echo "USAGE: $0 [nosubmodule]" >&2 + exit 1;; +esac # bootstrap the autotools ( @@ -34,7 +42,7 @@ autoheader --warnings=all automake --warnings=all --gnu --add-missing --copy ) -if [ -n "$SKIP_SUBMODULE" ]; then +if [ "$SKIP_SUBMODULE" -ne 0 ]; then echo "Skipping submodule setup" else echo "Setting up submodules"