CC= gcc
CFLAGS= -c -DDEBUG

#########################################################################

all: mojprogram

#########################################################################

y.tab.c: parser.y commons.h
	yacc -d parser.y

lex.yy.c: lexer.l y.tab.c commons.h
	lex lexer.l

parser.o: y.tab.c
	$(CC) $(CFLAGS) -o parser.o y.tab.c

lexer.o: lex.yy.c
	$(CC) $(CFLAGS) -o lexer.o lex.yy.c

module1.o: module1.c module1.h commons.h
	$(CC) $(CFLAGS) -o module1.o module1.c

module2.o: module2.c module2.h commons.h
	$(CC) $(CFLAGS) -o module1.o module1.c

mojprogram: module1.o module2.o parser.o lexer.o
	$(CC) -o mojprogram module1.o module2.o parser.o lexer.o


#########################################################################
clean:;	rm -f *.o