POHJAT_DIR = ../pohjat
TEXSEARCHPATH = :.:${POHJAT_DIR}
DVIPS = dvips
RM = rm
MPAGE_CMD = mpage
DIA = dia

TEX_SRC = *.tex ${POHJAT_DIR}/asetukset.tex ${POHJAT_DIR}/sanasto.tex
DIA_SRC = arkkitehtuuri.dia
BIB_SRC = ${POHJAT_DIR}/lahteet.bib

CTAGS=ctags
CTAGS_FLAGS=--langdef=tex\
--langmap=tex:.tex\
--regex-tex='/\\subsubsection[ \t]*\*?\{[ \t]*([^}]*)\}/- \1/s,subsubsection/'\
--regex-tex='/\\subsection[ \t]*\*?\{[ \t]*([^}]*)\}/+\1/s,subsection/'\
--regex-tex='/\\section[ \t]*\*?\{[ \t]*([^}]*)\}/\1/s,section/'\
--regex-tex='/\\chapter[ \t]*\*?\{[ \t]*([^}]*)\}/\1/c,chapter/'\
--regex-tex='/\\label[ \t]*\*?\{[ \t]*([^}]*)\}/\1/l,label/'\

DOCNAME = vaatimusdokumentti

$(DOCNAME).ps: $(DOCNAME).dvi
	$(DVIPS) -t a4 $(DOCNAME).dvi

$(DOCNAME).dvi: $(TEX_SRC) $(patsubst %.dia,%.dia.eps,$(DIA_SRC)) $(BIB_SRC)
	@sh ${POHJAT_DIR}/compile_doc.sh "$(TEXSEARCHPATH)" $(DOCNAME)

clean:
	@for f in $(TEX_SRC) ; do \
		f=`basename $$f .tex` ; \
		$(RM) -fv $$f.dvi $$f.log $$f.texlog $$f.lis $$f.list \
			$$f.aux $$f.toc $$f.lof $$f.lot \
			$$f.bbl $$f.blg $$f.bst $$f.idx ; \
	done
	@for f in $(DIA_SRC) ; do \
		$(RM) -fv $$f.eps ; \
	done
	@rm -fv $(DOCNAME).ps $(DOCNAME)-2.ps $(DOCNAME).pdf
	@rm -fv texput.log
	@rm -fv tags

ps: $(DOCNAME).ps
	gv $(DOCNAME).ps

pdf: $(DOCNAME).ps
	ps2pdf $(DOCNAME).ps $(DOCNAME).pdf

xdvi: $(DOCNAME).dvi
	xdvi $(DOCNAME).dvi

$(DOCNAME)-2.ps: $(DOCNAME).dvi
	$(DVIPS) -f $(DOCNAME).dvi | $(MPAGE_CMD) -2ot > $(DOCNAME)-2.ps ; \
	if [ ! -s $(DOCNAME)-2.ps ]; then \
		rm -f $(DOCNAME)-2.ps ; \
	fi

backup: clean
	tar fcz ~/ohtu-backup.tar.gz `find -maxdepth 1 -type f`

tags:
	$(CTAGS) $(CTAGS_FLAGS) $(TEX_SRC)

all: $(DOCNAME).ps $(DOCNAME)-2.ps

%.dia.eps: %.dia
	$(DIA) -ne $<.eps $<

.PHONY: clean ps xdvi $(DOCNAME)-2.ps backup tags all
