BUILDDIR = build TARGET_SRC = main build: mkdir main all: mkdir main run mkdir: # create build directory mkdir -p $(BUILDDIR) run: # run binary ./$(BUILDDIR)/main main: lex.yy.c cc $(BUILDDIR)/lex.yy.c -o $(BUILDDIR)/$(TARGET_SRC) -lfl # generate c file for lex lex.yy.c: flex -o $(BUILDDIR)/lex.yy.c $(TARGET_SRC).l clean: # wipe the build directory rm -f $(BUILDDIR)/*