SHELL := bash NAME := ag CFLAGS := -ansi -pedantic -D_GNU_SOURCE OBJS := scanner.o parser.o symtable.o all: $(NAME) $(NAME): $(OBJS) @echo " LINK $@" @gcc -o $@ $(OBJS) -lfl scanner.c: oxout.l @echo " FLEX $<" @flex -o$@ $< %.o: %.c parser.h symtable.h @echo " CC $<" @gcc -c $(CFLAGS) $< #-Wall parser.c: oxout.y @echo " YACC $<" @yacc -t -v -d $< -o $@ parser.h: parser.c oxout.y oxout.l: parser.y scanner.lex @echo " OX $^" @ox $^ .PHONY: clean clean: rm -f $(NAME) $(OBJS) scanner.c parser.{h,c,output} oxout.{y,l,h} cscope.out tags 1test: 2test 2test: /usr/ftp/pub/ublu/test/$(NAME)/test 2>&1