.PHONY: pdf view-pdf PROJECT_NAME = demo # shall we stop latex when encoutering an error? INTERACTION = errorstopmode all: pdf pdf: python preprocess.py $(PROJECT_NAME).tex b > $(PROJECT_NAME).pp.tex; \ # we need to run through xelatex a couple of times to get all the crossrefs etc. sorted out xelatex -interaction=$(INTERACTION) -no-pdf -papersize=a4 $(PROJECT_NAME).pp.tex #bibtex $(PROJECT_NAME).pp # use this if you are using an external bibliography file xelatex -interaction=$(INTERACTION) -no-pdf -papersize=a4 $(PROJECT_NAME).pp.tex xelatex -interaction=$(INTERACTION) -papersize=a4 $(PROJECT_NAME).pp.tex mv $(PROJECT_NAME).pp.pdf $(PROJECT_NAME).pdf #view-pdf: pdf #evince $(PROJECT_NAME).pdf & #delete temp files clean: rm *.pp.pdf rm *.aux rm *.log rm *.dvi rm *.ps rm *.toc rm *.bbl rm *.blg rm *.pp.tex rm *.xdv