-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmakefile
30 lines (25 loc) · 875 Bytes
/
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
cleanup: build
@echo "Cleanup"
@rm ./lexyacc-code/lex.yy.o
@rm ./lexyacc-code/y.tab.o
@rm ./lexyacc-code/lex.yy.c
@rm ./lexyacc-code/y.tab.c
@rm ./lexyacc-code/y.tab.h
build: flex_bison
@echo "Building: gcc ./lexyacc-code/y.tab.o ./lexyacc-code/lex.yy.o ./lexyacc-code/calc3i.c -o calc3i"
@gcc ./lexyacc-code/y.tab.o ./lexyacc-code/lex.yy.o ./lexyacc-code/calc3i.c -o calc3i
@mv calc3i ./bin
flex_bison: flex
@echo "flex_bison: gcc -c ./lexyacc-code/y.tab.c ./lexyacc-code/lex.yy.c"
@gcc -c ./lexyacc-code/y.tab.c ./lexyacc-code/lex.yy.c
@mv lex.yy.o ./lexyacc-code
@mv y.tab.o ./lexyacc-code
flex: bison
@echo "Flex: flex ./lexyacc-code/calc3.l"
@flex ./lexyacc-code/calc3.l
@mv lex.yy.c ./lexyacc-code
bison:
@echo "Bison: bison -y -d ./lexyacc-code/calc3.y"
@bison -y -d ./lexyacc-code/calc3.y
@mv y.tab.c ./lexyacc-code
@mv y.tab.h ./lexyacc-code