-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
123 lines (106 loc) · 4.03 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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
PYTHON = python3
WINDOW_SIZE = 181
WORKS = \
aratus \
argonautica \
callimachushymns \
homerichymns \
iliad \
nonnusdionysiaca \
odyssey \
quintussmyrnaeus \
shield \
theocritus \
theogony \
worksanddays
WORKS_ARCHAIC = iliad odyssey homerichymns theogony worksanddays shield
WORKS_HELLENISTIC = argonautica callimachushymns aratus theocritus
WORKS_IMPERIAL = quintussmyrnaeus nonnusdionysiaca
.PHONY: all
all: \
expectancy.sedes-work,metrical_shape.csv \
expectancy.sedes-metrical_shape.archaic.csv \
expectancy.sedes-metrical_shape.archaic+hellenistic.csv \
expectancy.sedes-metrical_shape.csv \
tables.html \
summary-table.html \
table-ssl.html \
unexpected-table.html \
unexpected.txt \
Hom.Hymn.4-windows-181.png \
Hom.Hymn.4-windows-181.pdf \
Hom.Hymn.2-windows-74.png \
Hom.Hymn.4-windows-74.png \
Sh.-windows-74.png \
Il..18-windows-74.png
.PHONY: test
test:
$(PYTHON) -m unittest
corpus-appositive/*.csv: .EXTRA_PREREQS = merge-appositives.r
corpus-appositive/%.csv: corpus/%.csv
Rscript merge-appositives.r "$<" > "$@"
# Rules that depend on sedes-var will raise an error if $SEDES is not set.
.PHONY: sedes-var
sedes-var:
ifndef SEDES
$(error You must define the SEDES variable: `make SEDES=../sedes/`)
endif
CSV_ARCHAIC = $(addprefix corpus-appositive/,$(addsuffix .csv,$(WORKS_ARCHAIC)))
CSV_HELLENISTIC = $(addprefix corpus-appositive/,$(addsuffix .csv,$(WORKS_HELLENISTIC)))
CSV_IMPERIAL = $(addprefix corpus-appositive/,$(addsuffix .csv,$(WORKS_IMPERIAL)))
expectancy.sedes-work,metrical_shape.csv: $(CSV_ARCHAIC) $(CSV_HELLENISTIC) $(CSV_IMPERIAL) | sedes-var
"$(SEDES)/src/expectancy" --by sedes/work,metrical_shape $^ > "$@"
expectancy.sedes-metrical_shape.archaic.csv: $(CSV_ARCHAIC) | sedes-var
expectancy.sedes-metrical_shape.archaic+hellenistic.csv: $(CSV_ARCHAIC) $(CSV_HELLENISTIC) | sedes-var
expectancy.sedes-metrical_shape.csv: $(CSV_ARCHAIC) $(CSV_HELLENISTIC) $(CSV_IMPERIAL) | sedes-var
expectancy.sedes-metrical_shape.archaic.csv \
expectancy.sedes-metrical_shape.archaic+hellenistic.csv \
expectancy.sedes-metrical_shape.csv \
:
"$(SEDES)/src/expectancy" --by sedes/metrical_shape $^ > "$@"
joined.sedes-metrical_shape.csv: \
$(CSV_ARCHAIC) \
$(CSV_HELLENISTIC) \
$(CSV_IMPERIAL) \
expectancy.sedes-metrical_shape.archaic.csv \
expectancy.sedes-metrical_shape.archaic+hellenistic.csv \
expectancy.sedes-metrical_shape.csv
( \
"$(SEDES)/src/join-expectancy" --by sedes/metrical_shape $(CSV_ARCHAIC) expectancy.sedes-metrical_shape.archaic.csv; # Keep the header line on the first one. \
"$(SEDES)/src/join-expectancy" --by sedes/metrical_shape $(CSV_HELLENISTIC) expectancy.sedes-metrical_shape.archaic+hellenistic.csv | sed -e '1d'; \
"$(SEDES)/src/join-expectancy" --by sedes/metrical_shape $(CSV_IMPERIAL) expectancy.sedes-metrical_shape.csv | sed -e '1d'; \
) > "$@"
tables.html: .EXTRA_PREREQS = tables.py
tables.html: expectancy.sedes-work,metrical_shape.csv
$(PYTHON) tables.py < "$<" > "$@"
summary-table.html: .EXTRA_PREREQS = summary-table.py
summary-table.html: expectancy.sedes-metrical_shape.csv
$(PYTHON) summary-table.py < "$<" > "$@"
table-ssl.html: .EXTRA_PREREQS = table-ssl.py
table-ssl.html: expectancy.sedes-work,metrical_shape.csv
$(PYTHON) table-ssl.py < "$<" > "$@"
unexpected-table.html: .EXTRA_PREREQS = unexpected-table.py
unexpected-table.html: joined.sedes-metrical_shape.csv
$(PYTHON) unexpected-table.py < "$<" > "$@"
unexpected.txt \
unexpected-window-$(WINDOW_SIZE).archaic.png \
unexpected-window-$(WINDOW_SIZE)-cumul.archaic.png \
Hom.Hymn.4-windows-181.png \
Hom.Hymn.4-windows-181.pdf \
Hom.Hymn.2-windows-74.png \
Hom.Hymn.4-windows-74.png \
Sh.-windows-74.png \
Il.18-windows-74.png \
: .EXTRA_PREREQS = unexpected.r
unexpected.txt \
unexpected-window-$(WINDOW_SIZE).archaic.png \
unexpected-window-$(WINDOW_SIZE)-cumul.archaic.png \
Hom.Hymn.4-windows-181.png \
Hom.Hymn.4-windows-181.pdf \
Hom.Hymn.2-windows-74.png \
Hom.Hymn.4-windows-74.png \
Sh.-windows-74.png \
Il.18-windows-74.png \
&: joined.sedes-metrical_shape.csv
Rscript unexpected.r > unexpected.txt
.DELETE_ON_ERROR: