Я не могу воспроизвести эту ошибку с серией включений; в этом есть что-то еще. Я предлагаю вам попробовать следующее и сообщить нам результаты:
@echo filename: $(FILENAME)
@echo origin: $(origin FILENAME)
@echo flavor: $(flavor FILENAME)
EDIT:
Хорошо, теперь мы знаем, что FILENAME
определяется где-то просто (т.е. с :=
). Поэтому попробуйте отследить цепочку включений и выяснить, где это происходит. Вот хитрость: поместите эти строки в любой интересующий вас make-файл
ifeq ($(flavor FILENAME),simple)
$(warning FILENAME is simply defined)
endif