Как сделать так, чтобы make потерпел неудачу, если генерирование необходимых включений проходит, но файл фактически не создан - PullRequest
1 голос
/ 29 марта 2019

У меня есть make-файл, который ошибочно генерирует требуемый файл включения make-файла.Включенный файл изначально не существует, но есть правило, чтобы сделать это.Правило выполняется успешно, но из-за ошибки требуемый файл include не создается там, где ожидается (и, следовательно, make не может его включить).Однако вместо сбоя make (из-за того, что файл все еще не может быть включен), make успешно завершается.

Ниже приведен мой файл makefile1.mak.

include myfile.mak

default:
    @echo hi

myfile.mak:
    @echo hello

Когда я выполняю 'make -f makefile1.mak', я получаю:

makefile1.mak:1: myfile.mak: No such file or directory
hello
hi

Конечно, я наконец понял, что мой код для генерации myfile.mak генерирует его неправильно, но фактические make-файлы, которыеЯ использую строки длиной в 100 с, поэтому мы не заметили, что включение не происходило в течение долгого времени (это была очень тонкая проблема сборки, которая была представлена).

Итак, мой вопросесть - есть ли способ заставить make потерпеть неудачу в приведенном выше примере?

1 Ответ

3 голосов
/ 30 марта 2019

Добавить строку в правило:

myfile.mak:
    do various things to build myfile.mak
    test -f $@
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...