LATEXFLAGS:=\
-file-line-error\
-halt-on-error\
- -no-shell-escape\
- -output-directory=./output/
+ -no-shell-escape
FIGURES:=$(addsuffix .png,$(addprefix img/,$(notdir $(basename $(wildcard fig/*.dot)))))
LISTINGS:=$(wildcard listings/*)
.PHONY: all clean
.SECONDARY: $(addsuffix .fmt,$(DOCS)) $(FIGURES)
-all: $(addprefix output/,$(addsuffix .pdf,$(DOCS)))
+all: $(addsuffix .pdf,$(DOCS))
-output/%.fmt: %.pre
+%.fmt: %.pre
$(LATEX) $(LATEXFLAGS) -ini -jobname="$(basename $<)" "&$(LATEX) $<\dump"
-output/%.pdf: %.mlog
- if $(GREP) -iFq 'Rerun' $<; then $(LATEX) $(LATEXFLAGS) $(basename $<); fi
+%.pdf: %.mlog
+ if grep -Fiq "Rerun" $<; then $(LATEX) $(LATEXFLAGS) $(basename $<); fi
-%.mlog: %.tex output/%.fmt $(BIBS) $(TEXS) $(FIGURES) $(LISTINGS)
+%.mlog: %.tex %.fmt $(BIBS) $(TEXS) $(FIGURES) $(LISTINGS)
$(LATEX) $(LATEXFLAGS) $<
if $(GREP) -q '^\\bibdata{' $(basename $<).aux; then $(BIBTEX) $(BIBTEXFLAGS) $(basename $<); fi
if $(GREP) -q '\@istfilename' $(basename $<).aux; then $(MAKEGLOSSARIES) $(MAKEGLOSSARIESFLAGSFLAGS) $(basename $<); fi
img/%.png: fig/%.dot
dot -Tpng $< > $@
-clean:
- $(RM) output/* $(FIGURES)
+clean: $(addprefix clean-,$(DOCS))
+ $(RM) -v $(FIGURES)
+
+clean-%:
+ $(RM) -v $(addprefix $(@:clean-=).,acn acr alg aux bbl blg fmt glg glo\
+ gls ist lof log lol lot out pdf tdo toc)