Как указать значение для #define с помощью autoconf? - PullRequest
2 голосов
/ 09 марта 2012

Я пытаюсь собрать Gnu binutils с разблокированным поведением, определяя макрос SYSV386_COMPAT 0 для изменения способа генерации некоторых кодов операций FPU.

Я могу легко зайти в файл заголовка и установить значение вручную, но как бы я вызвал скрипт настройки для указания эквивалента #define SYSV386_COMPAT 0 в командной строке? Я бы предпочел указать что-то в командной строке, если это вообще возможно (только потому, что эта функция является переходной, и я не думаю, что мне следует взламывать источник). Сказав это, я попытался прочитать хотя бы часть FM, но мне не повезло, вставив AC_DEFINE(SYSV386_COMPAT, 0) в binutils/configure.in или gas/configure.in.

1 Ответ

2 голосов
/ 10 марта 2012

ОК, поэтому продолжая поиск других ответов, помеченных autoconf, я перешел ко второму комментарию для этого ответа.

Мне удалось использовать аналогичный синтаксис для вызова configure, чтобы получить результат, к которому я стремился:

./configure CPPFLAGS=-DSYSV386_COMPAT=0 --prefix=/path/to/my/deploy/dir

Спасибо Уильяму Перселлу за его комментарий выше, указывающий на преимущества использованияCPPFLAGS вместо CFLAGS и всем, кто готовился ответить на этот вопрос.Если у вас есть какие-либо дальнейшие комментарии о «лучшем» способе решения этой проблемы, пожалуйста, добавьте в эту ветку для тех, кто придет к нему позже.

С наилучшими пожеланиями,

Майкл

...