#
#  Makefile  for the...
#
#    LaTeX2HTML  documentation & User Manual
#
#  by  Ross Moore <ross@mpce.mq.edu.au>
#  and  Herb Swan <dprhws@edp.Arco.COM>
#
#  20 April 1996
#
#  modified for v97.1 by  Ross Moore
#
#  10 July 1997
#
#  modified for v99.1 and frames, by  Ross Moore
#
#  26 March 1999
#

#
# These are the usual calls to application programs
#
#DVIPS = dvips -Pnosize 
DVIPS = dvips  
LATEX = latex
MAKEINDEX = makeindex
BIBTEX = bibtex

L2H = latex2html -no_math -html_version 3.2,math -accent_images textrm -toc_depth 6 
#L2H = l2ng  -no_math -html_version 4.0,math -scalable_fonts 

L2Hframes = latex2html -no_math -html_version 4.0,math,frame -accent_images textrm -scalable_fonts 

L2H = $(L2Hframes)

#L2Hno = $(L2H) -no_images
#L2Hon = $(L2H) -images_only


#
# ... however some TeX installations require more,
# to set path-variables before calling other scripts.
# For example...
#
TEXMF = /usr/local/texmf

LATEXINPUTDIR = $(TEXMF)/tex/latex//
PKFONTDIR = $(TEXMF)/fonts/public//pk/cx//
BSTINPUTS = $(TEXMF)/bibtex/bst

#DVIPS     = PKFONTS=.:$(TEXMF)/fonts/public//pk/cx// $(TEXMF)/bin/dvips
#LATEX     = TEXFONTS=.:$(PKFONTDIR):$$TEXFONTS;TEXINPUTS=.:$(LATEXINPUTDIR);latex
#BIBTEX    = set BSTINPUTS .:$(BSTINPUTS);bibtex

LATEX     = latex



TOP	= manual
LIC	= licence
CRE	= credits
DAT	= l2hfiles.dat
OVW	= overview
SUP	= support
ENV	= features
HYP	= hypextra
MAN	= userman
PRO	= problems
CHA	= changes
INT	= internals.pl
IND	= index.pl
FIG	= figure.pl
TAB	= table.pl
TOPTITLE  = "LaTeX2HTML"
S1TITLE	  = "Overview"
S2TITLE	  = "Installation"
S3TITLE	  = "Environments_and_Special_Features"
S4TITLE   = "Hypertext_Extensions"
S5TITLE   = "Customising_the_Layout"
S6TITLE   = "Problems"
S7TITLE   = "Changes"
CHGTITLE   = "Changes"
CONTENTS = "node6"
#CHGNODE = "node8"
REFNODE = "node9"
GLOSSNODE = "node10"
INDEXNODE = "node11"
BIBLIO	= "Bibliography"
GLOSS	= "Glossary"



COMMON	  = -external_file $(TOP) -dir $(TOP) -info 0 -short_index \
		-contents $(CONTENTS).html -index $(INDEXNODE).html \
		-biblio $(REFNODE) -no_auto_link -toc_depth 6 \
		-split 6 -link 6 -up_url $(TOP).html -up_title $(TOPTITLE)

LTOP	  =  -short_index -split 4 -link 3 -toc_depth 6 \
		 -t $(TOPTITLE) $(TOP).tex

LSEC1	  = $(COMMON) -prefix O  \
		-prev_url $(TOP).html -prev_title $(TOPTITLE) \
		-down_url $(SUP).html -down_title $(S2TITLE)  $(OVW).tex 

LSEC2	  = $(COMMON) -prefix S  -debug \
		-prev_url $(OVW).html -prev_title $(S1TITLE) \
		-down_url $(ENV).html -down_title $(S3TITLE)  $(SUP).tex 

#		-down_url $(MAN).html -down_title $(S3TITLE)  $(SUP).tex 

LSEC3	  = $(COMMON) -prefix E \
		-prev_url ../$(TOP)/$(SUP).html -prev_title $(S2TITLE) \
		-down_url ../$(TOP)/$(HYP).html -down_title $(S4TITLE)  $(ENV).tex 

#		-down_url ../$(TOP)/$(HYP).html -down_title $(S4TITLE)  $(MAN).tex 

LSEC4	  = $(COMMON) -prefix H \
		-prev_url ../$(TOP)/$(ENV).html -prev_title $(S3TITLE) \
		-down_url ../$(TOP)/$(MAN).html -down_title $(S5TITLE)  $(HYP).tex 

#		-prev_url ../$(TOP)/$(MAN).html -prev_title $(S3TITLE) \
#		-down_url ../$(TOP)/$(FEA).html -down_title $(S5TITLE)  $(HYP).tex 

LSEC5	  = $(COMMON) -prefix M \
		-prev_url ../$(TOP)/$(HYP).html -prev_title $(S4TITLE) \
		-down_url ../$(TOP)/$(PRO).html -down_title $(S6TITLE)  $(MAN).tex 

#		-down_url ../$(TOP)/$(PRO).html -down_title $(S6TITLE)  $(FEA).tex 

LSEC6	  = $(COMMON) -prefix P \
		-prev_url ../$(TOP)/$(MAN).html -prev_title $(S5TITLE) \
		-down_url ../$(TOP)/$(REFNODE).html -down_title $(BIBLIO)  $(PRO).tex 

#		-prev_url ../$(TOP)/$(FEA).html -prev_title $(S5TITLE) \

#		-down_url ../$(TOP)/$(CHGNODE).html -down_title $(CHGTITLE)  $(PRO).tex 


LSEC7	  = $(COMMON) -prefix C -dir $(TOP)  -info 0  \
		-prev_url ../$(TOP)/$(PRO).html -prev_title $(S6TITLE) \
		-down_url ../$(TOP)/$(GLOSSNODE).html -down_title $(GLOSS)  $(CHA).tex 

#
#  dvi- and  PostScript versions
#

manual.ps:	manual.cb manual.dvi
	$(DVIPS) manual.dvi -o $@

manual.aux manual.cb:
	manual.tex credits.tex licence.tex overview.tex \
	support.tex userman.tex hypextra.tex features.tex \
	problems.tex l2hfiles.dat  manhtml.tex l2hman.sty
	$(LATEX) manual.tex

manual.glo manual.idx:
	manual.tex credits.tex licence.tex overview.tex \
	support.tex userman.tex hypextra.tex features.tex \
	problems.tex l2hfiles.dat  manhtml.tex l2hman.sty
	$(LATEX) manual.tex

manual.dvi:     manual.aux manual.ind manual.gls
	echo "Rerun" > manual.log	;\
	while [ ! -z "`sed -n '/Rerun/p' < manual.log`" ] ; do	\
	    $(LATEX) manual.tex ; done


manual.ind:  manual.idx
	$(MAKEINDEX) -s l2hidx.ist manual.idx

manual.gls:     manual.glo l2hglo.ist l2hfiles.dat
	$(MAKEINDEX) -o $@ -s l2hglo.ist manual.glo

manual.bbl:	manual.aux
	$(BIBTEX) manual



$(TOP).html: $(TOP).aux
	$(MAKE) fresh

test: 
	$(L2H) $(LTOP);

fresh:
	$(L2H) $(LTOP);
	$(L2H) $(LSEC3); $(L2H) $(LSEC4);
	$(L2H) $(LSEC5);
	$(L2H) $(LSEC2);
	$(L2H) $(LSEC6);
	$(L2H) $(LSEC1);
	$(L2H) $(LSEC3); $(L2H) $(LSEC4);
	$(L2H) $(LTOP);
	touch $(TOP)/H$(INT);
	touch $(TOP)/E$(INT);
	touch $(TOP)/M$(INT);
	touch $(TOP)/P$(INT);
	touch $(TOP)/S$(INT);
	touch $(TOP)/O$(INT);
	touch $(TOP)/$(INT);
	touch H.stamp;
	touch E.stamp;
	touch M.stamp;
	touch P.stamp;
	touch S.stamp;
	touch O.stamp;
	touch $(TOP).stamp;

html:
	$(MAKE) $(TOP).stamp;
	$(MAKE) E.stamp; $(MAKE) H.stamp;
	$(MAKE) M.stamp;
	$(MAKE) S.stamp;
	$(MAKE) P.stamp;
	$(MAKE) O.stamp;
	$(MAKE) E.stamp; $(MAKE) H.stamp;
	$(MAKE) $(TOP).stamp;


twosteps:
	if test -f "manual/images.log"; then  \
	rm -f manual/images.log; \
	make noimages; make images;  fi ;

noimages:
	$(L2H) -short_index -no_images manual.tex

images:
	$(L2H) -short_index -images_only manual.tex

htmlclean:
	rm -f manual/.??* manual/*TMP* 

clean:
	rm -f manual.dvi manual.ps manual.glo manual.log manual.aux \
	    manual.ilg manual.lof manual.lot manual.cb manual.idx \
	    manual.toc 


#
#  HTML version, as a segmented document
#

$(TOP).stamp:	$(TOP).tex  \
	$(TOP)/O$(INT) $(TOP)/H$(INT) $(TOP)/E$(INT) $(TOP)/M$(INT) $(TOP)/P$(INT) $(TOP)/S$(INT)
	$(L2H) $(LTOP)
	touch $@

$(TOP)/$(TOP).html:	$(TOP).stamp O.stamp S.stamp M.stamp H.stamp E.stamp P.stamp
	$(L2H) $(LTOP)
	$(MAKE) htmlclean

$(TOP)/$(INT):	$(TOP).tex
	$(L2H) $(LTOP)


$(TOP)images:
	$(L2Hon) $(LTOP)


sections:
	$(L2H) $(LSEC4);
	$(L2H) $(LSEC6);
	$(L2H) $(LSEC5);
	$(L2H) $(LSEC1);
	$(L2H) $(LSEC2);
	$(L2H) $(LSEC3);


$(TOP)/$(OVW).html:	$(OVW).tex $(TOP)/$(INT) \
		$(TOP)/H$(INT) $(TOP)/E$(INT) $(TOP)/M$(INT) $(TOP)/P$(INT) $(TOP)/S$(INT)
	$(MAKE)	O.stamp

$(OVW):
	$(L2H) $(LSEC1)


O.stamp:	$(OVW).tex
	$(L2H) $(LSEC1)
	touch $@

$(TOP)/O$(INT):
	$(L2H) $(LSEC1)



$(TOP)/$(SUP).html:	$(SUP).tex $(TOP)/$(INT) \
			$(TOP)/H$(INT) $(TOP)/E$(INT) $(TOP)/M$(INT)
	$(MAKE)	S.stamp

$(SUP):
	$(L2H) $(LSEC2)

S.stamp:	$(SUP).tex $(TOP)/$(INT) 
	$(L2H) $(LSEC2)
	touch $@

$(TOP)/S$(INT):
	$(L2H) $(LSEC2)



$(TOP)/$(MAN).html:	$(MAN).tex $(TOP)/$(INT) $(TOP)/H$(INT) $(TOP)/E$(INT)
	$(MAKE)	M.stamp

$(MAN):
	$(L2H) $(LSEC5)

M.stamp:	$(MAN).tex $(TOP)/$(INT) 
	$(L2H) $(LSEC5)
	touch $@

$(TOP)/M$(INT):
	$(L2H) $(LSEC5)



$(TOP)/$(HYP).html:	$(HYP).tex $(TOP)/$(INT) $(TOP)/M$(INT) $(TOP)/E$(INT) $(TOP)/O$(INT)
	$(MAKE)	H.stamp

$(HYP):
	$(L2H) $(LSEC4)

H.stamp:	$(HYP).tex $(TOP)/$(INT)
	$(L2H) $(LSEC4)
	touch $@

$(TOP)/H$(INT):
	$(L2H) $(LSEC4)



$(TOP)/$(ENV).html:	$(ENV).tex $(TOP)/$(INT) $(TOP)/M$(INT) $(TOP)/H$(INT) $(TOP)/S$(INT)
	$(MAKE)	E.stamp

$(ENV):
	$(L2H) $(LSEC3)

E.stamp:	$(ENV).tex $(TOP)/$(INT)
	$(L2H) $(LSEC3)
	touch $@

$(TOP)/E$(INT):
	$(L2H) $(LSEC3)



$(TOP)/$(PRO).html:	$(PRO).tex $(TOP)/$(INT) \
		$(TOP)/M$(INT) $(TOP)/H$(INT) $(TOP)/S$(INT) $(TOP)/E$(INT)
	$(MAKE)	P.stamp

$(PRO):
	$(L2H) $(LSEC6)

P.stamp:	$(PRO).tex $(TOP)/$(INT)
	$(L2H) $(LSEC6)
	touch $@

$(TOP)/P$(INT):
	$(L2H) $(LSEC6)



$(TOP)/$(CHA).html:	$(CHA).tex $(TOP)/$(INT)
	$(MAKE)	C.stamp

$(CHA):
	$(L2H) $(LSEC7)

C.stamp:	$(CHA).tex $(TOP)/$(INT)
	$(L2H) $(LSEC7)
	touch $@

$(TOP)/C$(INT):
	$(L2H) $(LSEC7)

