X-Git-Url: http://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=blobdiff_plain;f=all;h=4d82729188a989b3f83f0411e4655351e6332d4f;hp=bb0fa4833923a3cd08bd995cde7e5a42e2169db4;hb=91bab28ba3142ecb4b1be4613787a76b381bdaed;hpb=f217d0db491385cbf8e5e0ee2446d8222f0d5883 diff --git a/all b/all index bb0fa483..4d827291 100755 --- a/all +++ b/all @@ -319,7 +319,7 @@ case "$cmd" in branches) for d in $repos; do cd "$d0/$d" # am in a pipe, shouldn't use enter - git branch -a -v -v | cut -c 3- | sed "s,^,$d ," + git branch -a -v -v | cut -c 3- | sed "s/^(no branch)/(no_branch)/" | sed "s,^,$d ," cd "$d0" done | { branches_list= @@ -457,22 +457,37 @@ case "$cmd" in cleanqc=true # version info ;; esac - if [ -n "$1" ]; then + if [ $# -gt 0 ] && [ x"$1" = x"" ]; then + # if we give the command make the arg "", it will surely fail (invalid filename), + # so better handle it as an empty client option + BAD_TARGETS=" " + shift + elif [ -n "$1" ]; then + BAD_TARGETS= + TARGETS_SAVE=$TARGETS TARGETS= for X in $1; do case "$X" in sdl) - TARGETS="sdl-debug $TARGETS" + TARGETS="$TARGETS sdl-debug" ;; glx|agl|wgl) - TARGETS="cl-debug $TARGETS" + TARGETS="$TARGETS cl-debug" ;; dedicated) - TARGETS="sv-debug $TARGETS" + TARGETS="$TARGETS sv-debug" + ;; + *) + BAD_TARGETS="$BAD_TARGETS $X" ;; esac done - shift + if [ "$TARGETS" ]; then # at least a valid client + shift + else # no valid client, let's assume this option is not meant to be a client then + TARGETS=$TARGETS_SAVE + BAD_TARGETS= + fi fi if [ -z "$MAKEFLAGS" ]; then if [ -f /proc/cpuinfo ]; then @@ -504,12 +519,18 @@ case "$cmd" in verbose make FTEQCC="$d0/fteqcc/fteqcc.bin" "$@" $MAKEFLAGS enter "$d0/darkplaces" verbose + if [ x"$BAD_TARGETS" = x" " ]; then + echo "Warning: invalid empty client, default clients will be used." + fi if $cleandp; then verbose make $MAKEFLAGS clean fi for T in $TARGETS; do verbose make $MAKEFLAGS "$@" "$T" done + for T in $BAD_TARGETS; do + echo "Warning: discarded invalid client $T." + done verbose "$SELF" update-maps ;;