all: main CPP=g++ CPPFLAGS=-Wall -DGEN_CHARPTR CPPTEMPL=-fno-implicit-templates LDFLAGS=-L/opt/local/lib -lfl ../lib/libgc.a INCDIR=-I../include -I../include/gc LD=g++ OBJS= h-syn.o h-lex.o h-fun.o symbol.o templates.o Cname.o main.o gen.o SRCS= $(OBJS:.o=.cc) main: $(OBJS) $(LD) -o main $(OBJS) $(LDFLAGS) h-lex.cc: h-lex.l flex -t h-lex.l > h-lex.cc h-syn.cc: h-syn.y bison -d h-syn.y mv h-syn.tab.c h-syn.cc h-fun.o: h-fun.cc $(CPP) -c $(INCDIR) $(CPPFLAGS) $(CPPTEMPL) -fhandle-exceptions $< symbol.o: symbol.cc $(CPP) -c $(INCDIR) $(CPPFLAGS) -fhandle-exceptions $< templates.o: templates.cc $(CPP) -c $(INCDIR) $(CPPFLAGS) $< .cc.o: $(CPP) -c $(INCDIR) $(CPPFLAGS) $(CPPTEMPL) $< clean: rm -f *.o h-lex.cc h-syn.cc h-syn.tab.h h-syn.output main depend: h-lex.cc h-syn.cc rm -f .depend; \ for f in $(SRCS); do \ $(CPP) -E -M -MG -MM $(INCDIR) $(CPPFLAGS) $(CPPTEMPL) $$f >> .depend; \ done include .depend