Files
2010-09-30 15:17:54 -07:00

78 lines
1.1 KiB
Makefile

# 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