2015-01-19 2 views
2

Я работаю с проектом autotools, пытаясь добавить новые функции в систему сборки (добавление новых компонентов и т. Д.). Делая это, как ни странно, я обнаружил, что если добавить bla вариант к нему (в configure.ac), но по ошибке называют это нравится:./configure скрипт должен завершиться неудачей при включении ошибочных параметров.

$ ./configure --with-blabla 

Он молча жалуется, что:

configure: WARNING: unrecognized options: --with-blabla 

и конфигурации процесс продолжается. Я хотел бы остановить процесс, если встречается непризнанный --with. Возможно ли это как-то?

ответ

1

Ваш вариант не будет иметь эффекта. В этом смысле достаточно предупреждения. Согласованные параметры --with-<package> включены AC_ARG_WITH, поэтому в то время как blabla может быть проигнорирован сейчас, нет причин, по которым --with-blabla или --enable-blabla может быть не пригодится в будущем.

Подробнее: ./configure --help содержит список допустимых параметров конфигурации. Речь идет не о неудаче с непризнанной опцией, которая приводит нас к важному вопросу:

Некоторые пакеты построены рекурсивно, когда пакет имеет несколько подпакетов, опция может не иметь отношения ко всем из них, и все же вы хотите передать его в пакет, который принимает эту опцию. Короче говоря, я не вижу причин отключать это поведение.

Конечно, если вы действительно хотите, вы можете вызвать autoconf с:

autoconf --warnings=error в генерации configure сценария.