-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmakefile
More file actions
112 lines (76 loc) · 3.82 KB
/
makefile
File metadata and controls
112 lines (76 loc) · 3.82 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
106
107
108
109
110
111
112
OBJECT_FILES = Symbol.o Start.o Number.o Expression.o ExpressionTail.o \
Term.o TermTail.o Factor.o BinaryOperator.o AddOperator.o SubtractOperator.o \
MultiplyOperator.o DivideOperator.o LeftParenthesis.o RightParenthesis.o \
Context.o ExpressionParser.o ParseTree.o SymbolVisitor.o DerivationVisitor.o main.o
CFLAGS = --std=c++11 -g -c
calculator: $(OBJECT_FILES)
g++ $(OBJECT_FILES) -o calculator
Symbol.o: Symbol.h Symbol.cpp
g++ $(CFLAGS) Symbol.cpp
Start.o: Variable.h Start.h Start.cpp
g++ $(CFLAGS) Start.cpp
Number.o: Terminal.h Number.h Number.cpp
g++ $(CFLAGS) Number.cpp
Expression.o: Symbol.o Expression.h Expression.cpp
g++ $(CFLAGS) Expression.cpp
ExpressionTail.o: Symbol.o ExpressionTail.h ExpressionTail.cpp
g++ $(CFLAGS) ExpressionTail.cpp
Term.o: Variable.h Term.h Term.cpp
g++ $(CFLAGS) Term.cpp
TermTail.o: Variable.h TermTail.h TermTail.cpp
g++ $(CFLAGS) TermTail.cpp
Factor.o: Variable.h Factor.h Factor.cpp
g++ $(CFLAGS) Factor.cpp
BinaryOperator.o: Terminal.h Operator.h BinaryOperator.h BinaryOperator.cpp
g++ $(CFLAGS) BinaryOperator.cpp
AddOperator.o: BinaryOperator.o AddOperator.h AddOperator.cpp
g++ $(CFLAGS) AddOperator.cpp
SubtractOperator.o: BinaryOperator.o SubtractOperator.h SubtractOperator.cpp
g++ $(CFLAGS) SubtractOperator.cpp
MultiplyOperator.o: BinaryOperator.o MultiplyOperator.h MultiplyOperator.cpp
g++ $(CFLAGS) MultiplyOperator.cpp
DivideOperator.o: BinaryOperator.o DivideOperator.h DivideOperator.cpp
g++ $(CFLAGS) DivideOperator.cpp
LeftParenthesis.o: Terminal.h LeftParenthesis.h LeftParenthesis.cpp
g++ $(CFLAGS) LeftParenthesis.cpp
RightParenthesis.o: Terminal.h RightParenthesis.h RightParenthesis.cpp
g++ $(CFLAGS) RightParenthesis.cpp
Context.o: Context.h Context.cpp
g++ $(CFLAGS) Context.cpp
ExpressionParser.o: ExpressionParser.h ExpressionParser.cpp
g++ $(CFLAGS) ExpressionParser.cpp
ParseTree.o: Symbol.o ParseTree.h ParseTree.cpp
g++ $(CFLAGS) ParseTree.cpp
StartProduction.o: Production.h StartProduction.h StartProduction.cpp
g++ $(CFLAGS) StartProduction.cpp
ExpressionProduction.o: Production.h ExpressionProduction.h ExpressionProduction.cpp
g++ $(CFLAGS) ExpressionProduction.cpp
ExpressionTailAddProduction.o: Production.h ExpressionTailAddProduction.h ExpressionTailAddProduction.cpp
g++ $(CFLAGS) ExpressionTailAddProduction.cpp
ExpressionTailSubtractProduction.o: Production.h ExpressionTailSubtractProduction.h ExpressionTailSubtractProduction.cpp
g++ $(CFLAGS) ExpressionTailSubtractProduction.cpp
EpsilonProduction.o: Production.h EpsilonProduction.h EpsilonProduction.cpp
g++ $(CFLAGS) EpsilonProduction.cpp
TermProduction.o: Production.h TermProduction.h TermProduction.cpp
g++ $(CFLAGS) TermProduction.cpp
TermTailMultiplyProduction.o: Production.h TermTailMultiplyProduction.h TermTailMultiplyProduction.cpp
g++ $(CFLAGS) TermTailMultiplyProduction.cpp
TermTailDivideProduction.o: Production.h TermTailDivideProduction.h TermTailDivideProduction.cpp
g++ $(CFLAGS) TermTailDivideProduction.cpp
FactorParenthesisProduction.o: Production.h FactorParenthesisProduction.h FactorParenthesisProduction.cpp
g++ $(CFLAGS) FactorParenthesisProduction.cpp
FactorNumberProduction.o: Production.h FactorNumberProduction.h FactorNumberProduction.cpp
g++ $(CFLAGS) FactorNumberProduction.cpp
ProductionFlyweightFactory.o: ProductionFactory.h ProductionFlyweightFactory.h ProductionFlyweightFactory.cpp
g++ $(CFLAGS) ProductionFlyweightFactory.cpp
SymbolVisitor.o: SymbolVisitor.h SymbolVisitor.cpp
g++ $(CFLAGS) SymbolVisitor.cpp
DerivationVisitor.o: SymbolVisitor.o DerivationVisitor.h DerivationVisitor.cpp
g++ $(CFLAGS) DerivationVisitor.cpp
main.o: main.cpp
g++ $(CFLAGS) main.cpp
valgrind:
make
valgrind --leak-check=full -v --track-origins=yes --log-file=valgrind.txt ./calculator
clean:
rm *.o calculator valgrind.txt