build_html():  Simplify, so there's only one version of the latex2html
	command line.

l2hoption():  Convenience function, to write out an option to the aux. init.
	file only if set.

Added --iconserver option to set the $ICONSERVER variable in latex2html; this
requires the use of an auxillary init. file since this can't be initialized
using a standard latex2html command-line option.  So the aux. init. file is
used for just about all the special options since it has to be written anyway
when $ICONSERVER needs to be set.
diff --git a/Doc/tools/mkhowto.sh b/Doc/tools/mkhowto.sh
index a30afb2..ec480c5 100755
--- a/Doc/tools/mkhowto.sh
+++ b/Doc/tools/mkhowto.sh
@@ -1,4 +1,4 @@
-#! /depot/gnu/plat/bin/bash
+#! /usr/bin/env bash
 
 MYDIR=`dirname $0`
 WORKDIR=`pwd`
@@ -13,7 +13,10 @@
 USE_DEFAULT_FORMAT=true
 DISCARD_TEMPS=true
 
+ICONSERVER=''
+
 L2H_INIT_FILE=$TOPDIR/perl/l2hinit.perl
+L2H_AUX_INIT_FILE=/usr/tmp/mkhowto-$LOGNAME-$$.perl
 
 LOGFILE=/usr/tmp/mkhowto-$LOGNAME-$$.how
 LOGGING=''
@@ -35,6 +38,7 @@
     --address, -a	Specify an address for page footers.
     --link		Specify the number of levels to include on each page.
     --split, -s		Specify a section level for page splitting.
+    --iconserver, -i	Specify location of icons (default: ../).
 
 Other options:
     --a4		Format for A4 paper.
@@ -47,7 +51,7 @@
 			(stderr is also lost,  sorry; see *.how for errors)
 
 EOF
-    
+
     exit $1
 }
 
@@ -60,16 +64,10 @@
 
 build_html() {
     TEXFILE=`kpsewhich $1.tex`
-    if [ "$ADDRESS" ] ; then
-	latex2html -init_file $L2H_INIT_FILE \
-	 -address "$ADDRESS" \
-	 -link $MAX_LINK_DEPTH -split $MAX_SPLIT_DEPTH \
-	 -dir $1 $TEXFILE || exit $?
-    else
-	latex2html -init_file $L2H_INIT_FILE \
-	 -link $MAX_LINK_DEPTH -split $MAX_SPLIT_DEPTH \
-	 -dir $1 $TEXFILE || exit $?
-    fi
+    latex2html \
+     -init_file $L2H_INIT_FILE \
+     -init_file $L2H_AUX_INIT_FILE \
+     -dir $1 $TEXFILE || exit $?
     if [ "$MAX_SPLIT_DEPTH" -ne 1 ] ; then
 	(cd $1; $MYDIR/node2label.pl *.html) || exit $?
     fi
@@ -129,6 +127,12 @@
     dvips -N0 -o $1.ps $1 || exit $?
 }
 
+l2hoption() {
+    if [ "$2" ] ; then
+	echo "\$$1 = \"$2\";" >>$L2H_AUX_INIT_FILE
+    fi
+}
+
 cleanup() {
     rm -f $1.aux $1.log $1.out $1.toc $1.bkm $1.idx $1.ilg $1.ind $1.syn
     rm -f mod$1.idx mod$1.ilg mod$1.ind
@@ -164,6 +168,10 @@
 	-H|--help|--hel|--he)
 	    usage 0
 	    ;;
+	-i|--iconserver|--iconserve|--iconserv|--iconser|--iconse|--icons|--icon|--ico|--ic|--i)
+	    ICONSERVER="$2"
+	    shift 2
+	    ;;
 	-a|--address|--addres|--addre|-addr|--add|--ad)
 	    ADDRESS="$2"
 	    shift 2
@@ -227,7 +235,13 @@
     exec >/dev/null
 fi
 
-COMMONTEXINPUTS=$TOPDIR/texinputs:$TEXINPUTS
+echo '# auxillary init file for latex2html' >$L2H_AUX_INIT_FILE
+echo '# generated by mkhowto.sh -- do no edit' >>$L2H_AUX_INIT_FILE
+l2hoption ICONSERVER "$ICONSERVER"
+l2hoption ADDRESS "$ADDRESS"
+l2hoption MAX_LINK_DEPTH "$MAX_LINK_DEPTH"
+l2hoption MAX_SPLIT_DEPTH "$MAX_SPLIT_DEPTH"
+echo '1;' >>$L2H_AUX_INIT_FILE
 
 for FILE in $@ ; do
     FILEDIR=`dirname $FILE`
@@ -236,7 +250,7 @@
     # 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.
     #
-    TEXINPUTS=$FILEDIR:$COMMONTEXINPUTS
+    TEXINPUTS=$FILEDIR:$TOPDIR/texinputs:$TEXINPUTS
     export TEXINPUTS
     #
     if [ "$BUILD_DVI" -o "$BUILD_PS" ] ; then
@@ -264,3 +278,5 @@
     fi
     rm -f $LOGFILE
 done
+
+rm -f $L2H_AUX_INIT_FILE