You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.2 KiB
Makefile
49 lines
1.2 KiB
Makefile
# Makefile for Master's Thesis
|
|
|
|
## The output filename
|
|
TARGET := thesis.pdf
|
|
|
|
## Input files
|
|
MD_SRC := $(wildcard include/*.md)
|
|
TEX_SRC := $(patsubst %.md,%.tex,$(MD_SRC))
|
|
RASTERIMG := $(wildcard images/*.png)
|
|
VECTORIMG := $(wildcard images/*.svg)
|
|
BIB := include/references.bib
|
|
|
|
|
|
.PHONY: all clean distclean
|
|
|
|
## "all" should be the first (default) target in the makefile
|
|
all: $(TARGET)
|
|
|
|
## Note:
|
|
## '$@' is a variable holding the name of the target,
|
|
## and '$<' is a variable holding the (first) dependency of a rule.
|
|
|
|
## Produce final target from all input files
|
|
$(TARGET): $(TEX_SRC) $(RASTERIMG) $(patsubst %.svg,%.pdf,$(VECTORIMG)) $(BIB) IEEEtranUrldate.bst
|
|
|
|
|
|
## Convert markdown source to LaTeX
|
|
%.tex: %.md
|
|
pandoc -f markdown -t latex -o $@ $<
|
|
|
|
## Convert SVG vector graphics to PDF
|
|
%.pdf: %.svg
|
|
inkscape -A $@ $<
|
|
|
|
## Generate PDF from LaTeX
|
|
%.pdf: %.tex aaltothesis.cls
|
|
latexmk -use-make -pdf -pdflatex="pdflatex -interaction=nonstopmode" $<
|
|
|
|
## Clean most things
|
|
clean:
|
|
-latexmk -c
|
|
rm -f *.aux *.idx *.ind *.out *.toc *.log *.bbl *.blg *.brf *.lof *.lot *.xmpdata
|
|
rm -f include/*.aux include/*.tex
|
|
|
|
## Clean everything
|
|
distclean: clean
|
|
latexmk -C
|
|
rm -f *.pdf
|