#
# This file compiles the documentation 
#

TEX= sml.tex mlrisc.tex mltexdoc.tex
DVI=	$(TEX:.tex=.dvi)
PS=	$(TEX:.tex=.ps)
PDF=	$(TEX:.tex=.pdf)

all:	pictures $(DVI) $(PS)

pictures:
	(cd ../pictures; make)

again:	cleandvi bib
	make

cleandvi:
	rm -f $(TEX:.tex=.dvi)

bib:
	for f in $(TEX:.tex=) ; do bibtex $$f; done

pdf:	$(PDF)

%.dvi:	%.tex sml.sty mltex.sty
	latex $(@:.dvi=.tex)

%.ps:	%.dvi
	dvips -D 600 -t letter $(@:.ps=.dvi) -o

%.pdf:	%.ps
	ps2pdf $<

mlrisc.dvi: annotations.tex graphics.tex instructions.tex mltree.tex \
	delayslots.tex cells.tex cluster.tex constants.tex \
	pseudo-ops.tex streams.tex labelexp.tex labels.tex regions.tex \
	regmap.tex graphs.tex mlrisc-ir.tex compiler-graphs.tex \
	SSA.tex VLIW.tex ra.tex ILP.tex mlrisc-arch.tex \
	future-work.tex asm.tex mc.tex instrsel.tex \
	availability.tex gc.tex mlrisc-gen.tex contributions.tex \
	systems.tex mlrisc-graphics.tex contributors.tex \
	requirements.tex INTRO.tex problem.tex mlrisc-compiler.tex \
	mlrisc-ir-rep.tex backend-opt.tex sys-integration.tex \
	optimizations.tex span-dep.tex mlrisc-md.tex line-counts.tex \
	sparc.tex alpha.tex x86.tex ppc.tex mips.tex hppa.tex C6.tex \
	mltree-ext.tex mltree-util.tex

mltexdoc.dvi:	mltex.tex

clean:	
	/bin/rm -f $(DVI) *.aux *.log *.bbl *.blg
