$CC = gcc

all: masc

masc: lex.o backend.o stack.o parser.o symboltable.o debug_info.o textin.o error.o output_c.o main.o
	$(CC) lex.o backend.o stack.o parser.o symboltable.o debug_info.o textin.o error.o output_c.o main.o -o masc

backend.o: backend.c
	$(CC) -c backend.c
lex.o: lex.c
	$(CC) -c lex.c

stack.o: stack.c 
	$(CC) -c stack.c

parser.o: parser.c
	$(CC) -c parser.c

symboltable.o: symboltable.c
	$(CC) -c symboltable.c

debug_info.o: debug_info.c
	$(CC) -c debug_info.c

textin.o: textin.c
	$(CC) -c textin.c

error.o: error.c
	$(CC) -c error.c
output_c.o: output_c.c
	$(CC) -c output_c.c
main.o:
	$(CC) -c main.c

clean:
	rm -f *.o

install:
	cp masc /usr/bin/masc
