all: ../../../ddreader

../../../ddreader: parser.c parser.h main.cpp l_struct.h\
	scanner.cpp tipi.cpp\
	../../comuni/asksay.h\
	../../comuni/case.h ../../comuni/case.cpp\
	../../comuni/codeprocessor.h ../../comuni/codeprocessor.cpp\
	../../comuni/except.h\
	../../comuni/linecol.h ../../comuni/linecol.cpp\
	../../comuni/mystring.h ../../comuni/utility.cpp\
	../../comuni/protocol.h ../../comuni/protocol.cpp\
	../../comuni/protocolvect.h ../../comuni/protocolvect.cpp\
	../../comuni/stack_cl.h\
	../../comuni/string_l.h\
	../../comuni/structs.h\
	../../comuni/vec_cl.h
	$(CC) $(CFLAGS) -o../../../ddreader scanner.cpp parser.cpp main.cpp tipi.cpp\
	../../comuni/protocolvect.cpp ../../comuni/protocol.cpp\
	../../comuni/utility.cpp ../../comuni/linecol.cpp ../../comuni/case.cpp\
	../../comuni/codeprocessor.cpp;

parser.cpp parser.h: parser.y 
	$(YACC) $(YFLAGS) -oparser parser.y;
	mv parser parser.cpp

scanner.cpp: scanner.l parser.y
	$(LEX) $(LFLAGS) -t scanner.l >scanner.cpp

clean:
	rm -f ../../../ddreader.exe ../../../ddreader
	rm -f scanner.cpp parser.cpp parser.h











