# flags and libs DEFS = LIBS = # compiler and flags CC = cc CCFLAGS = -Wall -O3 -c CXX = c++ CXXFLAGS = $(CCFLAGS) CPPFLAGS = # linker LD = c++ LDFLAGS = STRIP = strip # misc programs RM = rm -f INSTALL = install MKDEPEND = mkdepend LEX = flex -f YACC = yacc # our target and source code TARGET = hsmc SRCS = hsm-lexer.c hsm-parser.tab.c getopt.cpp main.cpp OBJS = hsm-lexer.o hsm-parser.tab.o getopt.o main.o ## ## all: $(TARGET) $(TARGET): $(OBJS) $(LD) $(LDFLAGS) $(LIBS) -o $@ $(OBJS) hsm-parser.tab.h: \ hsm.y hsm-parser.tab.c: hsm.y $(YACC) -d -bhsm-parser hsm.y hsm-lexer.h: \ hsm.l hsm-lexer.c: hsm.l $(LEX) -ohsm-lexer.c hsm.l depend: $(MKDEPEND) $(SRCS) clean: $(RM) $(OBJS) $(TARGET) .cpp.o: $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(DEFS) $< -o $@ .c.o: $(CC) $(CCFLAGS) $(CPPFLAGS) $(DEFS) $< -o $@ # DO NOT DELETE THIS LINE -- make depend depends on it. hsm-lexer.o: \ hsm-parser.tab.h hsm-parser.o: \ main.h main.o: \ autofile.h \ config.h \ getopt.h \ machine.h \ main.h \ state.h