Включить сгенерированный make-файл без предупреждения
Для моего проекта я автоматически создаю make-файлы и включаю их, например:
all:
@echo 'SUCCESS is $(SUCCESS)'
clean:
rm depend.mk
depend.mk:
@echo 'Creating $@'
@echo 'SUCCESS := 1' > $@
.PHONY: all clean
include depend.mk
Это работает, но строка включения генерирует предупреждающее сообщение:
$ make
Makefile:13: depend.mk: No such file or directory
Creating depend.mk
SUCCESS is 1
Я хотел бы заставить замолчать эту первую предупреждающую строку о том, что зависимость.mk не существует. Я знаю, что его не существует, так как у меня есть правило, написанное для его генерации, поэтому предупреждение не нужно (если, конечно, для него нет правила). Я НЕ хочу, чтобы make игнорировал ошибку, когда включенный файл не существует, и для него нет правила, поэтому префиксinclude
с-
игнорировать ошибку не будет работать для меня. Я бы хотел что-то похожее на соглашение bash о передаче pder-stderr в / dev / null какsome_cmd 2>/dev/null
но для включения в make.
Приведенный выше пример является очень упрощенным примером этого случая. В моем реальном проекте есть много автоматически сгенерированных make-файлов (с помощью автоматической генерации зависимостей clang), что означает новый запускmake
залейте мой экран этими предупреждающими сообщениями.
Возможно ли что-то подобное, или мне просто придется иметь дело с раздражающими предупреждающими сообщениями?