X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Makefile;h=b26533f9cca9189b10a0064541cd10ea3e8dfaf4;hb=2857e75ec894637ddbc8fc1268719ef3cbcbe8ed;hp=04e20c52e5f991c9ffddbefef51ffb6e6b3dcd7b;hpb=4ac8ff3216dd921df44fbed2ba7d4ad01ff7033d;p=msc-thesis1617.git diff --git a/Makefile b/Makefile index 04e20c5..b26533f 100644 --- a/Makefile +++ b/Makefile @@ -3,28 +3,43 @@ GREP?=grep LATEX?=pdflatex BIBTEX?=bibtex BIBTEXFLAGS:= -MAKEGLOSSARIES?=makeglossaries -MAKEGLOSSARIESFLAGS?= -LATEXFLAGS:=-file-line-error -halt-on-error -no-shell-escape +MAKEGL?=makeglossaries +MAKEGLFLAGS?= +MAKEIDX?=makeindex +MAKEIDXFLAGS?= +DOT?=dot +DOTFLAGS?=-Tpng +LATEXFLAGS:=-file-line-error -halt-on-error + +FIGURES:=$(patsubst fig/%.dot,img/%.png,$(wildcard fig/*.dot)) +LISTINGS:=$(wildcard listings/*) +TEXS:=$(wildcard *.bib) +BIBS:=$(wildcard *.tex) .PHONY: all clean -.SECONDARY: $(addsuffix .fmt,$(DOCS)) +.SECONDARY: $(DOCS:%=%.fmt) $(FIGURES) -all: $(addsuffix .pdf,$(DOCS)) +all: $(DOCS:%=%.pdf) %.fmt: %.pre - $(LATEX) $(LATEXFLAGS) -ini -jobname="$(basename $@)" "&$(LATEX) $<\dump" + $(LATEX) $(LATEXFLAGS) -ini -jobname="$(basename $<)" "&$(LATEX) $<\dump" %.pdf: %.mlog - if $(GREP) -iFq 'Rerun to get' $<; then $(LATEX) $(LATEXFLAGS) $(basename $<); fi + if grep -Fiq "Rerun" $<; then $(LATEX) $(LATEXFLAGS) $(basename $<); fi -%.mlog: %.tex %.fmt $(wildcard *.bib) $(wildcard *.tex) +%.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 + if $(GREP) -q '\@istfilename' $(basename $<).aux; then $(MAKEGL) $(MAKEGLFLAGS) $(basename $<); fi + if [ -f $(basename $<).idx ]; then $(MAKEIDX) $(MAKEIDXFLAGS) $(basename $<); fi $(LATEX) $(LATEXFLAGS) $< | tee $@ -clean: - $(RM) $(foreach DOC,$(DOCS),$(addprefix $(DOC).,\ - acn acr alg aux bbl blg fmt glg glo gls ist lof log lol lot nav out\ - pdf run.xml snm tdo toc vrb xdy)) +img/%.png: fig/%.dot + $(DOT) $(DOTFLAGS) $< > $@ + +clean: $(DOCS:%=clean-%) + $(RM) $(FIGURES) + +clean-%: + $(RM) $(addprefix $(@:clean-%=%).,acn acr alg aux bbl blg idl idx ilg ind\ + fmt glg glo gls ist loa lof log lol lot mlog nav out pdf snm tdo toc)