#c #компиляция #autoconf #autotools
Необходимо, чтобы в файле configure.ac была переменная "XXX". При этом, необходимо,
чтобы у нее было значение по умолчанию и возможность установить значение, при вызове
./configure. Т.е., чтобы можно было сделать что-то такое:
если вызывается ./configure
используется значение XXX по умолчанию (пусть будет "ааа")
если вызывается ./configure XXX="bbb"
значение XXX становится "bbb"
Никак не пойму, как для этого необходимо описать файл configure.ac
Ответы
Ответ 1
FOO=${FOO:-foo} AC_DEFINE_UNQUOTED([FOO_MACRO],[$FOO],["Desriprion"]) Судя по всему всё что не раскрывается макросом из configure.ac просто поадает в скрипт ./configure. Поэтому для установки переменных можно использовать обычный синтаксис POSIX sh. Можно также задавать значение прямо в макросе, хотя в этом случае есть свои подводные камни с интерпретацией кавычек. AC_DEFINE_UNQUOTED([FOO_MACRO],[${FOO:-foo}],["Desriprion"]) Также ИМХО хорошим тоном будет объявить эту переменную AC_ARG_VAR.
Комментариев нет:
Отправить комментарий