9637e6a50e1726c0ac560348fefb3ee8ccd39b8f
[IRC.git] / Robust / src / Makefile
1 CLASSFILES=Main/Main.class IR/AssignOperation.class IR/Descriptor.class \
2 IR/FieldDescriptor.class IR/MethodDescriptor.class                      \
3 IR/NameDescriptor.class IR/Operation.class IR/State.class               \
4 IR/SymbolTable.class IR/Tree/AssignmentNode.class                       \
5 IR/Tree/BlockExpressionNode.class IR/Tree/BlockNode.class               \
6 IR/Tree/BlockStatementNode.class IR/Tree/BuildIR.class                  \
7 IR/Tree/CastNode.class IR/Tree/CreateObjectNode.class                   \
8 IR/Tree/DeclarationNode.class IR/Tree/ExpressionNode.class              \
9 IR/Tree/FieldAccessNode.class IR/Tree/IfStatementNode.class             \
10 IR/Tree/LiteralNode.class IR/Tree/LoopNode.class                        \
11 IR/Tree/MethodInvokeNode.class IR/Tree/Modifiers.class                  \
12 IR/Tree/NameNode.class IR/Tree/OpNode.class IR/Tree/ParseNode.class     \
13 IR/Tree/ParseNodeDOTVisitor.class IR/Tree/ParseNodeVector.class         \
14 IR/Tree/ReturnNode.class IR/Tree/SubBlockNode.class                     \
15 IR/Tree/TreeNode.class IR/Tree/Walkable.class IR/TypeDescriptor.class   \
16 IR/VarDescriptor.class Lex/BooleanLiteral.class                         \
17 Lex/CharacterLiteral.class Lex/Comment.class                            \
18 Lex/DocumentationComment.class Lex/DoubleLiteral.class                  \
19 Lex/EndOfLineComment.class Lex/EOF.class                                \
20 Lex/EscapedUnicodeReader.class Lex/FIFO.class Lex/FloatLiteral.class    \
21 Lex/Identifier.class Lex/InputElement.class Lex/IntegerLiteral.class    \
22 Lex/Keyword.class Lex/Lexer.class Lex/Literal.class                     \
23 Lex/LongLiteral.class Lex/NullLiteral.class Lex/NumericLiteral.class    \
24 Lex/Operator.class Lex/Separator.class Lex/StringLiteral.class          \
25 Lex/Token.class Lex/TraditionalComment.class Lex/WhiteSpace.class
26
27 all: Parse/Sym.class Parse/Parser.class $(CLASSFILES)
28
29 Parse/Parser.java Parse/Sym.java: Parse/java14.cup
30         cd Parse && \
31         java -cp ../../cup:$(CLASSPATH) java_cup.Main -parser Parser -symbols Sym < java14.cup
32
33 %.class: %.java
34         javac -cp ../cup:.:$(CLASSPATH) $<
35
36 clean:
37         rm IR/*.class IR/Tree/*.class Main/*.class Lex/*.class Parse/*.class Parse/Sym.java Parse/Parser.java IR/Flat/*.class