-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
105 lines (83 loc) · 2.41 KB
/
Makefile
File metadata and controls
105 lines (83 loc) · 2.41 KB
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
CC = gcc
CFLAGS = -Wall -g
TARFILES = Makefile scanner.mll parser.mly ast.mli calc.ml
OBJS = parser.cmo scanner.cmo
ALLOBJS = ast.cmo cast.cmo stubs.cmo sast.cmo parser.cmo scanner.cmo compile.cmo execute.cmo \
iast.cmo iparser.cmo iscanner.cmo imports.cmo pltree.cmo
pltree: $(ALLOBJS)
ocamlc -o pltree $(ALLOBJS)
scanner.ml : scanner.mll
ocamllex scanner.mll
parser.ml parser.mli : parser.mly
ocamlyacc parser.mly
iscanner.ml : iscanner.mll
ocamllex iscanner.mll
iparser.ml iparser.mli : iparser.mly
ocamlyacc iparser.mly
%.cmo : %.ml
ocamlc -c $<
%.cmi : %.mli
ocamlc -c $<
.PHONY : menhir
menhir:
menhir -v parser.mly
.SECONDARY:
%: %.o
$(CC) $(CFLAGS) -o $@ $<
%.o: %.c %.h
$(CC) $(CFLAGS) -c $< -o $@
%.c: %.tree pltree
./pltree $< $@
calculator.tar.gz : $(TARFILES)
cd .. && tar zcf calculator/calculator.tar.gz $(TARFILES:%=calculator/%)
/usr/local/bin/pltree_std/:
mkdir /usr/local/bin/pltree_std
/usr/local/bin/pltree_std/stdio.tree: stdio.tree /usr/local/bin/pltree_std/
cp stdio.tree /usr/local/bin/pltree_std
.PHONY: install
install: pltree /usr/local/bin/pltree_std/stdio.tree
cp pltree /usr/local/bin
.PHONY: uninstall
uninstall: clean
rm -rf /usr/local/bin/pltree_std
rm -f /usr/local/bin/pltree
.PHONY : clean
clean :
rm -f calc pltree parser.ml parser.mli scanner.ml
rm -f iparser.ml iparser.mli iscanner.ml
rm -f *.cmo *.cmi *.o *.tmp *.c
rm -f hello func_test gcd tree fact ll fibo pretty_tree
rm -f *.automaton *.conflicts
# Generated by ocamldep *.ml *.mli
ast.cmo :
ast.cmx :
cast.cmo :
cast.cmx :
compile.cmo : sast.cmo ast.cmo
compile.cmx : sast.cmx ast.cmx
execute.cmo : stubs.cmo sast.cmo cast.cmo
execute.cmx : stubs.cmx sast.cmx cast.cmx
iast.cmo :
iast.cmx :
imports.cmo : iscanner.cmo iparser.cmi iast.cmo
imports.cmx : iscanner.cmx iparser.cmx iast.cmx
iparser.cmo : iast.cmo iparser.cmi
iparser.cmx : iast.cmx iparser.cmi
iscanner.cmo : iparser.cmi
iscanner.cmx : iparser.cmx
parser.cmo : ast.cmo parser.cmi
parser.cmx : ast.cmx parser.cmi
pltree.cmo : scanner.cmo parser.cmi imports.cmo execute.cmo compile.cmo
pltree.cmx : scanner.cmx parser.cmx imports.cmx execute.cmx compile.cmx
read.cmo : scanner.cmo parser.cmi ast.cmo
read.cmx : scanner.cmx parser.cmx ast.cmx
read_tree.cmo : scanner.cmo parser.cmi
read_tree.cmx : scanner.cmx parser.cmx
sast.cmo :
sast.cmx :
scanner.cmo : parser.cmi
scanner.cmx : parser.cmx
stubs.cmo :
stubs.cmx :
iparser.cmi : iast.cmo
parser.cmi : ast.cmo