Centralize the processing logic for LaTeX documents into the mkhowto script;
do not use mkdvi.sh or mkhtl.sh any more.

This slows down building all versions of the documentation, but if you are
only building one format, it does not matter.
diff --git a/Doc/html/Makefile b/Doc/html/Makefile
index 2115132..0778fb8 100644
--- a/Doc/html/Makefile
+++ b/Doc/html/Makefile
@@ -1,9 +1,6 @@
-# Convenience Makefile for building HTML documentation.  You probably need to
-# set TEXINPUTS from the command line for this to be useful, unless you
-# actually build the .dvi files in the top level directory.
-#
-# Note that the .dvi files must already be built and TEXINPUTS must include the
-# directory where latex's working files (esp. *.aux) are kept.
+# Convenience Makefile for building HTML documentation.  You probably
+# need to set TEXINPUTS from the command line for this to be useful,
+# unless you actually build the .dvi files in the top level directory.
 
 PAPER=letter
 TOPDIR=..
@@ -15,16 +12,10 @@
 # Where are the various programs?
 PYTHON=	   python
 WEBCHECKER=$(PYTHON) $(TOPDIR)/../Tools/webchecker/webchecker.py
-WCNEW=$(PYTHON) $(TOPDIR)/../Tools/webchecker/wcnew.py
-MKAUX=	   PAPER=$(PAPER) TEXINPUTS=$(TEXINPUTS) $(TOOLSDIR)/mkdvi.sh --aux
-MKHTML=	   PAPER=$(PAPER) $(TOOLSDIR)/mkhtml.sh
-KPSEWHICH= TEXINPUTS=$(TEXINPUTS) kpsewhich tex
+MKHOWTO=   $(TOOLSDIR)/mkhowto
 
 BUILDINDEX=$(TOOLSDIR)/buildindex.py
 
-# make it clear to l2h, since our support only generates HTML 4.0
-L2HARGS=   -html_version 4.0
-
 PYTHONDOCS='<hr>See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.'
 HTMLBASE=  file:`pwd`
 
@@ -70,55 +61,43 @@
 		--address $(PYTHONDOCS) \
 		lib/modindex.html mac/modindex.html
 
-api/api.html:  $(PAPERDIR)/api.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
-	$(MKHTML) api $(L2HARGS) -split 5
+api/api.html:  $(APIFILES) $(BUILDINDEX)
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
+		--html $(TOPDIR)/api/api.tex
 
-doc/doc.html:  $(DOCFILES) $(BUILDINDEX) $(TOPDIR)/perl/ltxmarkup.perl
-	$(TOOLSDIR)/mkhowto --about stdabout.dat --address $(PYTHONDOCS) \
+doc/doc.html:  $(DOCFILES) $(BUILDINDEX)
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
 		--html $(TOPDIR)/doc/doc.tex
 
-ext/ext.html:  $(PAPERDIR)/ext.aux $(TOOLSDIR)/mkhtml.sh
-	$(MKHTML) ext $(L2HARGS) -split 5
+ext/ext.html:  $(EXTFILES)
+	echo $(EXTFILES)
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
+		--html $(TOPDIR)/ext/ext.tex
 
-lib/lib.html:  $(PAPERDIR)/lib.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
-	$(TOOLSDIR)/fix_libaux.sed <`$(KPSEWHICH) lib.aux` >lib1.aux
-	mv lib1.aux `$(KPSEWHICH) lib.aux`
-	$(MKHTML) lib $(L2HARGS) -split 5
+lib/lib.html:  $(LIBFILES) $(BUILDINDEX)
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
+		--html $(TOPDIR)/lib/lib.tex
 
 mac/mac.html:  $(MACFILES) $(BUILDINDEX)
-	$(TOOLSDIR)/mkhowto --about stdabout.dat --address $(PYTHONDOCS) \
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
 		--html $(TOPDIR)/mac/mac.tex
 
-ref/ref.html:  $(PAPERDIR)/ref.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
-	$(MKHTML) ref $(L2HARGS) -split 5
+ref/ref.html:  $(REFFILES) $(BUILDINDEX)
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
+		--html $(TOPDIR)/ref/ref.tex
 
-tut/tut.html:  $(PAPERDIR)/tut.aux $(TOOLSDIR)/mkhtml.sh
-	$(MKHTML) --numeric tut $(L2HARGS) -split 3
+tut/tut.html:  $(TUTFILES) $(TOOLSDIR)/mkhowto
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
+		--html --numeric --split 3 $(TOPDIR)/tut/tut.tex
 
-inst/inst.html:$(INSTFILES) $(TOPDIR)/perl/distutils.perl
-	$(TOOLSDIR)/mkhowto --about stdabout.dat --address $(PYTHONDOCS) \
+inst/inst.html: $(INSTFILES) $(TOPDIR)/perl/distutils.perl
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
 		--html $(TOPDIR)/inst/inst.tex
 
 dist/dist.html:$(DISTFILES) $(TOPDIR)/perl/distutils.perl
-	$(TOOLSDIR)/mkhowto --about stdabout.dat --address $(PYTHONDOCS) \
+	$(MKHOWTO) --about stdabout.dat --address $(PYTHONDOCS) \
 		--html $(TOPDIR)/dist/dist.tex
 
-$(PAPERDIR)/api.aux: $(APIFILES)
-	(cd $(PAPERDIR); $(MKAUX) api)
-
-$(PAPERDIR)/ext.aux: $(EXTFILES)
-	(cd $(PAPERDIR); $(MKAUX) ext)
-
-$(PAPERDIR)/lib.aux: $(LIBFILES)
-	(cd $(PAPERDIR); $(MKAUX) lib)
-
-$(PAPERDIR)/ref.aux: $(REFFILES)
-	(cd $(PAPERDIR); $(MKAUX) ref)
-
-$(PAPERDIR)/tut.aux: $(TUTFILES)
-	(cd $(PAPERDIR); $(MKAUX) tut)
-
-
 webcheck: all
 	$(WEBCHECKER) $(HTMLBASE)/api/
 	$(WEBCHECKER) $(HTMLBASE)/doc/
@@ -130,16 +109,6 @@
 	$(WEBCHECKER) $(HTMLBASE)/dist/
 	$(WEBCHECKER) $(HTMLBASE)/inst/
 
-wcnew: all
-	$(WCNEW) $(HTMLBASE)/api/
-	$(WCNEW) $(HTMLBASE)/doc/
-	$(WCNEW) $(HTMLBASE)/ext/
-	$(WCNEW) -m290000 $(HTMLBASE)/lib/
-	$(WCNEW) $(HTMLBASE)/mac/
-	$(WCNEW) $(HTMLBASE)/ref/
-	$(WCNEW) $(HTMLBASE)/tut/
-
-
 clean:
 	rm -rf @webchecker.pickle
 
@@ -154,7 +123,7 @@
 # It's at the end of the file since it wedges font-lock in XEmacs.
 
 BOILERPLATE=$(TOPDIR)/texinputs/boilerplate.tex
-index.html: index.html.in $(BOILERPLATE)
+index.html: $(TOPDIR)/html/index.html.in $(BOILERPLATE)
 	REL=`grep '\\release{' $(BOILERPLATE) | sed 's/.*\\release{\(.*\)}.*$$/\1/'`; \
 		REL=`echo "$$REL" | sed 's/[$$]//g'`; \
 		sed "s/@RELEASE@/$$REL/g" $< >TEMP
@@ -162,4 +131,3 @@
 		if [ "$$DATE" = '\today' ] ; then DATE=`date '+%B %e, %Y'`;fi;\
 		sed "s/@DATE@/$$DATE/g" TEMP >$@
 	rm -f TEMP
-