-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
74 lines (60 loc) · 1.47 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# TBH Makefile
all: pdf html
.SECONDARY: cv.texml cv.html
.PHONY: pdf html
pdf: cv.pdf
html: cv.html index.html
%.pdf: %.tex
latexmk -pdf $*
%.tex: %.texml
rm -f $@
texml -e UTF-8 $^ $@
sed -i "s/\r//g" $@
%.texml: %.tex.xsl %.xml
xsltproc $^ > $@
%.full.html: %.xsl %.xml
xsltproc $^ > $@
CV_VERSION_HTML:: CV_VERSION_FILE
echo "<div id='version'>" > $@
sed -n '1s!\(.*\)!<span class="hash">\1</span>!gp' $^ >> $@
sed -n '2s!\(.*\)!<span class="date">\1</span>!gp' $^ >> $@
echo "</div>" >> $@
cv.html: cv.full.html CV_VERSION_HTML
sed -n '/<body>/,/<\/body>/p' $^ | sed -n '1!p' | sed -n '$$!p' > $@
cat CV_VERSION_HTML >> $@
index.html: cv.html
echo "---" > $@
echo " layout: default" >> $@
echo " title: T.B. Hartman - CV" >> $@
echo " css: ['/cv/cv.css']" >> $@
echo "---" >> $@
cat $^ >> $@
clean:
rm -f cv-blx.bib
rm -f cv.aux
rm -f cv.fdb_latexmk
rm -f cv.fls
rm -f cv.log
rm -f cv.out
rm -f cv.tex
rm -f cv.texml
rm -f CV_VERSION_FILE
rm -f CV_VERSION_HTML
rm -f cv.full.html
rm -f cv.pdf
CV_VERSION_FILE::
git log -n 1 --pretty="%H" > $@
git log -n 1 --pretty="%cd" --date=rfc | \
gawk '{printf "%02d %s %d\n", $$2, $$3, $$4}' | \
sed 's/Jan/January/' | \
sed 's/Feb/February/' | \
sed 's/Mar/March/' | \
sed 's/Apr/April/' | \
sed 's/May/May/' | \
sed 's/Jun/June/' | \
sed 's/Jul/July/' | \
sed 's/Aug/August/' | \
sed 's/Sep/September/' | \
sed 's/Oct/October/' | \
sed 's/Nov/November/' | \
sed 's/Dec/December/' >> $@