[MPlayer-cvslog] r23968 - trunk/TOOLS/checktree.sh
ivo
subversion at mplayerhq.hu
Tue Jul 31 16:48:13 CEST 2007
Author: ivo
Date: Tue Jul 31 16:48:13 2007
New Revision: 23968
Log:
Much smaller command line parser
This removes all code duplication for setting and unsetting -(no)flags specified
on the command line
Modified:
trunk/TOOLS/checktree.sh
Modified: trunk/TOOLS/checktree.sh
==============================================================================
--- trunk/TOOLS/checktree.sh (original)
+++ trunk/TOOLS/checktree.sh Tue Jul 31 16:48:13 2007
@@ -27,6 +27,12 @@
# -----------------------------------------------------------------------------
+# All yes/no flags. Spaces around flagnames are important!
+
+testflags=" spaces extensions crlf tabs trailws rcsid oll charset stupid gnu \
+res "
+allflags="$testflags showcont color head svn "
+
# Default settings
_spaces=yes
@@ -141,78 +147,6 @@ for i in "$@"; do
echo -e "If there are, -(no)svn has no effect.\n"
exit
;;
- -stupid)
- _stupid=yes
- ;;
- -nostupid)
- _stupid=no
- ;;
- -charset)
- _charset=yes
- ;;
- -nocharset)
- _charset=no
- ;;
- -oll)
- _oll=yes
- ;;
- -nooll)
- _oll=no
- ;;
- -svn)
- _svn=yes
- ;;
- -nosvn)
- _svn=no
- ;;
- -head)
- _head=yes
- ;;
- -nohead)
- _head=no
- ;;
- -color)
- _color=yes
- ;;
- -nocolor)
- _color=no
- ;;
- -spaces)
- _spaces=yes
- ;;
- -nospaces)
- _spaces=no
- ;;
- -extensions)
- _extensions=yes
- ;;
- -noextensions)
- _extensions=no
- ;;
- -crlf)
- _crlf=yes
- ;;
- -nocrlf)
- _crlf=no
- ;;
- -tabs)
- _tabs=yes
- ;;
- -notabs)
- _tabs=no
- ;;
- -trailws)
- _trailws=yes
- ;;
- -notrailws)
- _trailws=no
- ;;
- -rcsid)
- _rcsid=yes
- ;;
- -norcsid)
- _rcsid=no
- ;;
-all)
enable_all_tests
;;
@@ -222,28 +156,25 @@ for i in "$@"; do
-none)
disable_all_tests
;;
- -showcont)
- _showcont=yes
- ;;
- -noshowcont)
- _showcont=no
- ;;
- -gnu)
- _gnu=yes
- ;;
- -nognu)
- _gnu=no
- ;;
- -res)
- _res=yes
- ;;
- -nores)
- _res=no
- ;;
-*)
+ var=`echo X$i | sed 's/^X-//'`
+ val=yes
+ case "$var" in
+ no*)
+ var=`echo "$var" | cut -c 3-`
+ val=no
+ ;;
+ esac
+ case "$allflags" in
+ *\ $var\ *)
+ eval _$var=$val
+ ;;
+ *)
echo "unknown option: $i" >&2
exit 0
;;
+ esac
+ ;;
*)
_files="$_files $i"
;;
More information about the MPlayer-cvslog
mailing list