Обычно нормально прерывается, если любая выполняемая команда возвращает ненулевой код выхода (в том числе, будучи убитым сигналом). Так что вам просто нужно убедиться, что ваш скрипт существует (с ошибкой) в случае сбоя команды. Кроме того, make сам по себе существует с ненулевым статусом (так что вы можете обнаружить ошибку make
или make install
). Обратите внимание, что make можно указать игнорировать ошибки для каждой команды (с помощью префикса команды -
), но это не значение по умолчанию.
Вы можете сделать это двумя основными способами:
set -e
(хотя учтите, что set -e
имеет много проблем )
- Проверка каждой команды на неудачу (например,
tar xzf foo.tar.gz || exit 1
)
В качестве альтернативы, вы можете использовать make
так, как это задумано, и написать make rules для выполнения всех этих шагов.