Support long options that take arguments of the form --option=value as well
as --option value.
Minor nits cleaned up.
diff --git a/Doc/tools/mkhowto.sh b/Doc/tools/mkhowto.sh
index 69b9b4d..6fa83b2 100755
--- a/Doc/tools/mkhowto.sh
+++ b/Doc/tools/mkhowto.sh
@@ -22,10 +22,12 @@
ICONSERVER=''
-L2H_INIT_FILE=$TOPDIR/perl/l2hinit.perl
-L2H_AUX_INIT_FILE=/usr/tmp/mkhowto-$LOGNAME-$$.perl
+TEMPBASE=mkhowto-$LOGNAME-$$
-LOGFILE=/usr/tmp/mkhowto-$LOGNAME-$$.how
+L2H_INIT_FILE=$TOPDIR/perl/l2hinit.perl
+L2H_AUX_INIT_FILE=/usr/tmp/$TEMPBASE.perl
+
+LOGFILE=/usr/tmp/$TEMPBASE.how
LOGGING=''
usage() {
@@ -160,9 +162,23 @@
rm -f $1/IMG* $1/*.pl $1/WARNINGS $1/index.dat $1/modindex.dat
}
+parse_option() {
+ # When using a long option with a parameter separated by '=',
+ # generalize the parsing of the two:
+ OPTION="$1"
+ unset VALUE
+ STUFF=`echo "$1" | grep '^--[-a-zA-Z0-9]*='`
+ if [ "$STUFF" ] ; then
+ # This leaves OPTION=--option= and VALUE=value
+ OPTION=`echo "$STUFF" | sed 's/^\(--[-a-zA-Z0-9]*=\)\(.*\)$/\1/'`
+ VALUE=`echo "$STUFF" | sed 's/^\(--[-a-zA-Z0-9]*=\)\(.*\)$/\2/'`
+ fi
+}
+
# figure out what our targets are:
while [ "$1" ] ; do
- case "$1" in
+ parse_option "$1"
+ case "$OPTION" in
--all|--al)
BUILD_PDF=true
BUILD_PS=true
@@ -204,10 +220,18 @@
ICONSERVER="$2"
shift 2
;;
+ --iconserver=*|--iconserve=*|--iconserv=*|--iconser=*|--iconse=*|--icons=*|--icon=*|--ico=*|--ic=*|--i=*)
+ ICONSERVER="$VALUE"
+ shift 1
+ ;;
-a|--address|--addres|--addre|-addr|--add|--ad)
ADDRESS="$2"
shift 2
;;
+ --address=*|--addres=*|--addre=*|-addr=*|--add=*|--ad=*)
+ ADDRESS="$VALUE"
+ shift 1
+ ;;
--a4)
TEXINPUTS=$TOPDIR/paper-a4:$TEXINPUTS
shift 1
@@ -219,10 +243,18 @@
LINK="$2"
shift 2
;;
+ --link=*|--lin=*|--li=*)
+ LINK="$VALUE"
+ shift 1
+ ;;
-s|--split|--spli|--spl|--sp|--s)
MAX_SPLIT_DEPTH="$2"
shift 2
;;
+ --split=|--spli=|--spl=|--sp=|--s=)
+ MAX_SPLIT_DEPTH="$VALUE"
+ shift 1
+ ;;
-l|--logging|--loggin|--loggi|--logg|--log|--lo)
LOGGING=true
shift 1
@@ -244,7 +276,7 @@
break
;;
-*)
- usage 2
+ usage 2 "Unknown option: ${VALUE%=}"
;;
*)
break;;
@@ -277,6 +309,9 @@
echo '# auxillary init file for latex2html' >$L2H_AUX_INIT_FILE
echo '# generated by mkhowto.sh -- do no edit' >>$L2H_AUX_INIT_FILE
+if [ "$ICONSERVER" ] ; then
+ ICONSERVER="${ICONSERVER%/}"
+fi
l2hoption ICONSERVER "$ICONSERVER"
l2hoption ADDRESS "$ADDRESS"
l2hoption MAX_LINK_DEPTH "$MAX_LINK_DEPTH"
@@ -285,7 +320,7 @@
for FILE in $@ ; do
FILEDIR=`dirname $FILE`
- FILE=`basename ${FILE%.tex}`
+ FILE=`basename $FILE .tex`
#
# Put the directory the .tex file is in is also the first directory in
# TEXINPUTS, to allow files there to override files in the common area.