Вот мой Makefile:
.PHONY: all homework1
CFLAGS= -g -O0 -Wall -Werror -Wno-unused-function
LDFLAGS= -lm
all : homework1
homework1 : program.tab.o program.lex.o
%.o : %.c
gcc -o$@ -c $(CFLAGS) $<
%.lex.c : %.lex %.tab.h
flex -o$@ $<
%.tab.c %.tab.h : %.y
bison --verbose -o$@ -d $<
Всякий раз, когда я пытаюсь скомпилировать, я получаю предупреждение make: Circular program.lex <- program.lex.o dependency dropped.
Я не вижу, как program.lex
вообще зависит от program.lex.o
в make-файле. Я вижу, что дерево зависимостей имеет глубину около 4 слоев, но оно не выглядит круглым.
Как я могу улучшить свой make-файл?