Есть ли способ выйти с условием ошибки, если файл не существует? В настоящее время я делаю что-то вроде этого:
all: foo
foo:
test -s /opt/local/bin/gsort || echo "GNU sort does not exist! Exiting..." && exit
Запуск make
запускает цель all
, которая запускает foo
.
Ожидается, что если условие test -s
не выполнено, то выполняются операторы echo/exit
.
Однако, даже если /usr/bin/gsort
существует, я получаю результат оператора echo
, но команда exit
не запускается. Это противоположность тому, что я надеюсь выполнить.
Каков правильный способ сделать что-то вроде выше?