.PHONY: clean clobber all DOCUMENT:=$(shell grep -Fl documentclass *.tex) LATEX?=pdflatex LATEXFLAGS?=-synctex=1 -no-shell-escape -file-line-error -halt-on-error BIBTEX?=bibtex MAKEGLOSSARIES?=makeglossaries MAKEINDEX?=makeindex all: $(patsubst %.tex,%.pdf,$(shell grep -Fl documentclass *.tex)) %.pdf: %.tex $(wildcard *.tex) $(LATEX) $(LATEXFLAGS) $* grep -q '^\\bibdata{' $*.aux && $(BIBTEX) $(BIBTEXFLAGS) $* || true grep -q '\@istfilename' $*.aux && $(MAKEGLOSSARIES) $(MAKEGLOSSARIESFLAGS) $* || true [ -f $*.idx ] && $(MAKEINDEX) $(MAKEINDEXFLAGS) $* || true $(LATEX) $(LATEXFLAGS) $* $(LATEX) $(LATEXFLAGS) $* clean: $(RM) $(addprefix *.,acn acr alg aux bbl blg fmt glg glo gls idx ilg ind ist loa lof log lol lot nav out snm tdo toc vrb) clobber: clean $(RM) -i *.pdf