DOC := faq manual hacker
MANS := gontc
TXT_DOC := $(addsuffix .txt, $(DOC) $(MANS))
PS_DOC := $(addsuffix .ps, $(DOC) $(MANS))
PDF_DOC := $(addsuffix .pdf, $(DOC) $(MANS))
HTML_DOC := $(addsuffix -html, $(DOC)) $(addsuffix .html, $(MANS) index)
MAN_DOC := $(addsuffix .1, $(MANS))
HEVEA := hevea -fix -s
HACHA := hacha

all: pdf html man

clean-aux:
	rm -f *.toc *.log *.aux *-html *.dvi *.haux
	$(MAKE) -C tutorial clean

clean: clean-aux
	rm -f *.dvi *.ps *.txt *.png *.pdf *.1 $(HTML_DOC)
	rm -rf $(DOC)

ps: $(PS_DOC)

pdf: $(PDF_DOC)

txt: $(TXT_DOC)

html: $(HTML_DOC)

man: $(MAN_DOC)

%.dvi: %.tex
	latex $<
	latex $<

%.ps: %.dvi
	dvips $< -o $@

%.pdf: %.tex
	latex $<
	pdflatex $<

#%.pdf: %.dvi
#	dvipdf $< $@

%-html: %.tex fixup.pl
	$(HEVEA) $<
	rm -rf $(basename $<)
	mkdir $(basename $<)
	mv $(basename $<).html $(basename $<)
	(cd $(basename $<) && $(HACHA) *.html)
	rm $(basename $<)/*motif*.gif $(basename $<)/$(basename $<).html
	perl fixup.pl $(basename $<)/*
	cp icons/*.png $(basename $<)
	touch $@

%.html: %.tex fixup.pl
	$(HEVEA) $< -o xindex.html
	perl fixup.pl xindex.html
	mv xindex.html $@
	perl -i -p -e 's|../index.html|index.html|' $@

%.1: %.tex man/manfix.pl
	$(HEVEA) -I man $< -o $(basename $<).1
	perl man/manfix.pl $(basename $<).1

index.html: homepage.html fixup.pl
	cp homepage.html index.html
	perl fixup.pl index.html
	cp icons/*.png .

%.txt: %.tex
	$(HEVEA) $<
	lynx -dump $(basename $<).html > $@
	rm $(basename $<).html
