compilers-lab1/Makefile

40 lines
671 B
Makefile
Raw Normal View History

2025-03-26 10:38:10 +08:00
CC = gcc
2025-03-25 18:31:25 +08:00
2025-03-26 10:38:10 +08:00
program: parser.tab.o lex.yy.o node.o main.o
2025-03-25 18:31:25 +08:00
$(CC) ./parser.tab.o ./lex.yy.o ./node.o ./main.o -o program -lfl
2025-03-24 18:40:16 +08:00
main.o: main.c
2025-03-25 18:31:25 +08:00
$(CC) -c main.c
2025-03-24 18:40:16 +08:00
node.o: node.c
2025-03-25 18:31:25 +08:00
$(CC) -c ./node.c
2025-03-24 18:40:16 +08:00
parser.tab.c parser.tab.h: ./parser.y
bison -d parser.y
parser.tab.o: ./parser.tab.c
2025-03-25 18:31:25 +08:00
$(CC) -c ./parser.tab.c
2025-03-24 18:40:16 +08:00
lex.yy.o: lex.yy.c
2025-03-25 18:31:25 +08:00
$(CC) -c lex.yy.c
2025-03-24 18:40:16 +08:00
lex.yy.c: ./scanner.l
flex scanner.l
2025-03-26 10:38:10 +08:00
.PHONY: clean test
2025-03-24 18:40:16 +08:00
clean:
2025-03-25 18:29:22 +08:00
rm parser.tab.c parser.tab.h parser.tab.o lex.yy.o lex.yy.c program main.o node.o
2025-03-26 10:38:10 +08:00
test: program
@echo Test test1:
./program test1
@read
@echo Test test2:
./program test2
@read
@echo Test test3:
./program test3
@read
@echo Test test4:
./program test4