SHELL := bash NAME := parser PARSER := $(NAME) SCANNER := scanner CFLAGS := -pedantic -ansi -g -D_GNU_SOURCE all: $(NAME) $(NAME): $(SCANNER).o $(PARSER).o @echo " LINK $<" @gcc $(CFLAGS) -o $@ $? -lfl %.o: %.c parser.h @echo " CC $<" @gcc -c $(CFLAGS) $< #-Wall $(PARSER).c: $(PARSER).y @echo " YACC $<" @yacc -t -v -d $< -o $@ $(PARSER).h: $(PARSER).c $(SCANNER).c: $(SCANNER).lex @echo " FLEX $<" @flex -o$@ $< .PHONY: clean clean: rm -f $(PARSER){,.o,.c,.h,.output} $(SCANNER).{c,o} 1test: 2test 2test: /usr/ftp/pub/ublu/test/$(NAME)/test 2>&1