-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
26 lines (21 loc) · 739 Bytes
/
Makefile
File metadata and controls
26 lines (21 loc) · 739 Bytes
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
LEX := flex
YACC := bison
CC := g++
CDEBUG := -D DEBUG=2 -g
CFLAGS := -lm -O2 -Wall -std=c++11 #$(CDEBUG)
INCLUDEDIR := -Ifront -Iback
INCLUDE := front/node.cpp front/symtab.cpp main.cpp
INCLUDE += back/eeyore_AST.cpp back/emit_tigger.cpp back/no_alloc.cpp
INCLUDE += back/riscv/emit_riscv.cpp
YACCDEBUG := #-v --report=all
all: compiler
compiler: eeyore-tab $(INCUDE)
$(CC) $(CFLAGS) $(INCLUDEDIR) SysY.tab.cpp lex.yy.cpp $(INCLUDE) -o compiler
eeyore-tab: eeyore-lex $(INCLUDE)
$(YACC) $(YACCDEBUG) -d -o SysY.tab.cpp front/SysY.y
eeyore-lex: front/SysY.l
$(LEX) -o lex.yy.cpp front/SysY.l
clean:
rm -f compiler *.output *.out *.S
rm -f SysY.tab.cpp lex.yy.cpp SysY.tab.hpp
rm -rf *.dSYM .vscode .VSCodeCounter