Makefile
649 Bytes
HEADERS=ast.hh conexpr.hh flatzinc.hh option.hh parser.hh parser.tab.hh registry.hh symboltable.hh varspec.hh
SOURCES=flatzinc.cpp fz.cpp lexer.yy.cpp parser.tab.cpp registry.cpp
CXXFLAGS=-O2 -g
all: fz
%.o: %.cpp $(HEADERS)
$(CXX) $(CXXFLAGS) -c $< -o $@
fz: $(SOURCES:%.cpp=%.o)
$(CXX) $(CXXFLAGS) -o $@ $(SOURCES:%.cpp=%.o)
lexer.yy.cpp: lexer.lxx parser.tab.hh
flex -olexer.yy.cpp lexer.lxx
parser.tab.hh parser.tab.cpp: parser.yxx
bison -t -o parser.tab.cpp -d $<
mv parser.tab.hpp parser.tab.hh
.PHONY: clean distclean
clean:
rm -f $(SOURCES:%.cpp=%.o)
rm -f fz
distclean: clean
rm -f lexer.yy.cpp parser.tab.hh parser.tab.cpp