You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.5 KiB
68 lines
1.5 KiB
LATEXMK ?= latexmk
|
|
PDFLATEX ?= pdflatex
|
|
PLANTUML ?= plantuml
|
|
MAIN_TEX ?= ./thesis.tex
|
|
|
|
MKARGS = -interaction=nonstopmode -use-make -shell-escape
|
|
|
|
default: pdf
|
|
|
|
dvi: $(MAIN_TEX:.tex=.dvi)
|
|
pdf: $(MAIN_TEX:.tex=.pdf)
|
|
|
|
# Rules to compile zhawthesis document class
|
|
zhawthesis.cls: zhawthesis.dtx
|
|
'$(PDFLATEX)' zhawthesis.dtx
|
|
|
|
# Rule to compile glossary
|
|
thesis.gls:
|
|
makeglossaries thesis
|
|
skins.sty:
|
|
|
|
|
|
# Dependencies of thesis TeX
|
|
-include $(MAIN_TEX).d
|
|
|
|
# Thesis document creation rules (DVI, PDF)
|
|
$(MAIN_TEX:.tex=.dvi): $(MAIN_TEX)
|
|
'$(LATEXMK)' -dvi -pdf- -ps- -deps-out='$<.d' $(MKARGS) '$<'
|
|
|
|
$(MAIN_TEX:.tex=.pdf): $(MAIN_TEX)
|
|
'$(LATEXMK)' -pdf -dvi- -ps- -deps-out='$<.d' $(MKARGS) '$<'
|
|
|
|
# Continuous recompilation when the source files change
|
|
watch:
|
|
'$(LATEXMK)' -pvc -pdf -dvi- -ps- $(MKARGS) '$(MAIN_TEX)'
|
|
|
|
# Open the compiled pdf
|
|
view: $(MAIN_TEX:.tex=.pdf)
|
|
'$(shell command -v xdg-open open | head -n 1)' '$<' >/dev/null 2>&1 &
|
|
|
|
# Clean up temprary files
|
|
clean:
|
|
'$(LATEXMK)' -C '$(MAIN_TEX)'
|
|
$(RM) zhawthesis.aux zhawthesis.glo zhawthesis.hd zhawthesis.idx zhawthesis.log zhawthesis.out
|
|
$(RM) *.synctex.gz *.bbl *.ilg
|
|
$(RM) '$(MAIN_TEX).d'
|
|
$(RM) *.ist
|
|
|
|
.PHONY: clean dvi pdf view watch
|
|
|
|
|
|
# Resource compilation rules
|
|
%-%.pdf: %.mp
|
|
cd '$(dir $(@))' && mpost '$(realpath $(@:.pdf=.mp))'
|
|
|
|
%.eps: %.plantuml
|
|
$(PLANTUML) -teps -v '$<'
|
|
|
|
%.pdf: %.eps
|
|
epstopdf -o='$@' '$<'
|
|
|
|
%.pdf: %.svg
|
|
rsvg-convert -f pdf -o '$@' -d 300 -p 300 '$<'
|
|
|
|
|
|
logos/zhaw/%.pdf: logos/zhaw/%.ai
|
|
inkscape --without-gui --export-file='$@' --export-area-drawing --export-margin=1 '$<'
|