2014-09-15 3 views
1

Я хочу, чтобы запустить дифф в Makefile и поймать выход,Как заставить замолчать ошибку в make-файле?

test: 
    diff a b > tmp 

но дифф возвращает ненулевое значение, если он улавливает какие-либо различия.

Сделать интерпретацию ненулевого кода возврата в качестве ошибки, и даже если я игнорирую ошибку с использованием -diff, она все равно печатает предупреждение.

makefile:7: recipe for target 'test' failed 
make: [test] Error 1 (ignored) 

Могу ли я заткнуться?

ответ

3

Вам нужно убедиться, что ваш рецепт возвращает 0 (успех), даже если команда diff не работает. Что-то вроде:

test: 
     diff a b > tmp || true