Алексей Махоткин

домашняя страница

Automake

Go to the first, previous, next, last section, table of contents.


Макросы Autoconf, поставляемые с Automake

AM_CONFIG_HEADER
При использовании этого макроса Automake сгенерирует правила для автоматической регенерации заголовочного файла конфигурации. Если вы используете этот макрос, то вы должны создать в каталоге исходных текстов файл `stamp-h.in’. Он может быть пустым.
AM_ENABLE_MULTILIB
Этот макрос используется, когда будет строиться “мульти-библиотека”. “Мульти-библиотека” компилируется несколько раз, по разу на каждую комбинацию флагов компиляции. Это полезно только в тех случаях, когда библиотека предназначена для кросс-компиляции. Первым необязательным аргументом макроса является имя создаваемого файла `Makefile’; значением по умолчанию является `Makefile’. Второй аргумент используется для нахождения каталога верхнего уровня исходных текстов; по умолчанию используется пустая строка (обычно этот аргумент не следует использовать, если вы не знакомы с внутренним устройством).
AM_FUNC_STRTOD
Если функция strtod недоступна, или работает неправильно (как в SunOS 5.4), то строка `strtod.o’ добавляется к выходной переменной LIBOBJS.
AM_FUNC_ERROR_AT_LINE
Если функция error_at_line не найдена, то строка `error.o’ добавляется к LIBOBJS.
AM_FUNC_MKTIME
Проверяет наличие работоспособной функции mktime. Если таковая не найдена, то к переменной `LIBOBJS’ добавляется `mktime.o’.
AM_FUNC_OBSTACK
Проверка наличия кода GNU obstacks; если код не найден, то добавить строку `obstack.o’ к переменной `LIBOBJS’.
AM_C_PROTOTYPES
Проверяет, распознает ли компилятор прототипы функций. Если это происходит, то определяет переменную `PROTOTYPES’ и устанавливает выходные переменные `U’ и `ANSI2KNR’ в пустую строку. В противном случае, устанавливает `U’ равным `_’, а `ANSI2KNR’ в `./ansi2knr’. Automake использует эти значения для реализации автоматической де-ANSI-фикации.
AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
Если использование TIOCGWINSZ требует наличия файла `<sys/ioctl.h>’, то этот макрос определяет переменную GWINSZ_IN_SYS_IOCTL. В противном случае поиск TIOCGWINSZ будет осуществляться в `<termios.h>’.
AM_INIT_AUTOMAKE
Запускает множество макросов, в которых нуждается `configure.in’. Этот макрос требует два аргумента – имя пакета и номер версии. По умолчанию этот макрос определяет через AC_DEFINE макросы `PACKAGE’ и `VERSION’. Такого поведения можно избежать, передавая непустой третий аргумент.
AM_PATH_LISPDIR
Ищет программу emacs, и если она найдена, то устанавливает выходную переменную lispdir равной полному пути к каталогу `site-lisp’ программы Emacs.
AM_PROG_CC_STDC
Если по умолчанию компилятор C не работает в режиме ANSI C, то пробует добавить опцию к переменной CC, которая заставит его делать это. Этот макрос пробует различные ключи командной строки компилятора, которые включают режим ANSI C на некоторых системах. Считается, что компилятор находится в режиме ANSI C, если он корректно обрабатывает прототипы функций. Если вы используете этот макрос, то вы должны проверить, что после его вызова компилятор C будет работать в режиме ANSI C; если это не так, то переменная среды am_cv_prog_cc_stdc устанавливается в значение `no’. Если вы написали свою программу в стандарте ANSI C, то вы можете создать ее не-ANSI-фицированную копию, используя опцию ansi2knr (see section Автоматическая де-ANSI-фикация).
AM_PROG_LEX
Этот макрос похож на макросы AC_PROG_LEX и AC_DECL_YYTEXT (see section `Проверка отдельных программ’ in Руководство Autoconf), но использует скрипт missing на системах, в которых нет lex. Одной из таких систем является `HP-UX 10’.
AM_SANITY_CHECK
Этот макрос выполняет проверку того, что файл, созданный в каталоге для компиляции, новее, чем файл в каталоге с исходными текстами. На системах с неправильно установленными часами произойдет сбой. Этот макрос автоматически запускается из AM_INIT_AUTOMAKE.
AM_SYS_POSIX_TERMIOS
Проверяет, доступны ли заголовочные файлы POSIX `termios’ в данной системе. Если это так, то переменная среды am_cv_sys_posix_termios устанавливается в значение `yes’. Если нет, то значением переменной будет являться `no’.
AM_TYPE_PTRDIFF_T
Определяет переменную `HAVE_PTRDIFF_T’ в том случае, если тип `ptrdiff_t’ определен в `<stddef.h>’.
AM_WITH_DMALLOC
Добавляет поддержку пакета dmalloc Если пользователь выполняет конфигурацию с ключом `–with-dmalloc’, то будет определена переменная WITH_DMALLOC и добавлен ключ `-ldmalloc’ в переменную LIBS.
AM_WITH_REGEX
Добавляет `–with-regex’ к ключам командной строки configure. Если этот ключ указан (по умолчанию), то используется библиотека регулярных выражений `regex’, файл `regex.o’ помещается в `LIBOBJS’ и определяется переменная `WITH_REGEX’. Если задан ключ `–without-regex’, то используется библиотека регулярных выражений `rx’, а `rx.o’ добавляется в переменную `LIBOBJS’.


Go to the first, previous, next, last section, table of contents.

Comments