-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
66 lines (46 loc) · 1.09 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
#--------------------------------
# Variables
#--------------------------------
SIZES := 1 2 3 4 5 6 7 8
#--------------------------------
# Constants
#--------------------------------
PYFILES :=
PYFILES += csf.py
PYFILES += fragment.py
PYFILES += hess.py
PYFILES += makedeps.py
PYFILES += path.py
PYFILES += perm.py
PYFILES += util.py
OUTFILES :=
#--------------------------------
# Top-level targets
#--------------------------------
all: output.py
clean:
git clean -dfx
test:
python -m doctest $(PYFILES)
#--------------------------------
# Included makefiles
#--------------------------------
include $(SIZES:%=var/size-%.d)
#--------------------------------
# Internal targets
#--------------------------------
output:
mkdir output
var:
mkdir var
output.py: output-preamble.py $(OUTFILES)
@echo 'cat output-preamble.py (...) >output.py'
@cat output-preamble.py $(sort $(OUTFILES)) >output.py
var/size-%.d: | var
python makedeps.py $* >$@
var/csf-size-%: $(PYFILES) | output var
python csf.py $*
touch $@
output/hess-%.py: $(PYFILES) | output
python hess.py $*
.PHONY: all clean test