| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Скрипт configure создает файл с именем `config.status',
который описывает, какие параметры конфигурации были указаны при
последней конфигурации пакета. Это файл является скриптом командного
процессора, который при запуске воссоздает ту же самую настройку.
Вы можете задать скрипту `config.status' ключ `--recheck',
чтобы он обновил сам себя. Этот ключ полезен, если вы изменяете
configure, так что результаты некоторых тестов могут измениться
по сравнению с предыдущим запуском. Ключ `--recheck' перезапускает
configure с аргументами, использованными при предыдущих запусках,
с добавлением ключа `--no-create', который не дает configure
запустить `config.status' и создать `Makefile' и другие файлы,
а также с добавлением ключа `--no-recursion', который предотвращает
запуск скриптов configure в подкаталогах. (Это сделано для того,
чтобы другие правила `Makefile' могли бы запускать
`config.status' при его изменении; Например, see section 3.3.3 Автоматическая пересборка).
`config.status' также распознает ключ `--help', который выдает
список ключей `config.status', и ключ `--version', который
выдает номер версии Autoconf,использованной при создании скрипта
configure, создавшего файл `config.status'.
`config.status' проверяет несколько переменных среды, способных изменить его поведение:
configure с ключом
`--recheck'. Он должен быть совместимым с командным процессором
Bourne. Значение по умолчанию -- `/bin/sh'.
configure не должны
быть слиты вместе, поскольку они сопровождаются по отдельности.
Следующие переменные обеспечивают возможность отдельным пакетам
совместно использовать значения переменных, вычисленных скриптом
configure. Это может быть полезно, если одному пакету нужно
больше возможностей, чем другому. Эти переменные позволяют файлу
`config.status' создавать и другие файлы, не только те, что указаны
в файле `configure.in', чтобы их можно было бы использовать в
другом пакете.
AC_OUTPUT в `configure.in'.
#define
языка C. Обычно это файлы, заданные в аргументах макроса
AC_CONFIG_HEADER; если этот макрос не был вызван, то
`config.status' игнорирует эту переменную.
Эти переменные также позволяют написать правила `Makefile', которые будут пересоздавать только некоторые файлы. Например, в вышеприведенной зависимости (see section 3.3.3 Автоматическая пересборка), `config.status' запускается дважды при изменении `configure.in'. Если это беспокоит вас, то вы можете сделать так, чтобы при каждом запуске обновлялись файлы только для этого правила:
config.h: stamp-h
stamp-h: config.h.in config.status
CONFIG_FILES= CONFIG_HEADERS=config.h ./config.status
echo > stamp-h
Makefile: Makefile.in config.status
CONFIG_FILES=Makefile CONFIG_HEADERS= ./config.status
|
(Если `configure.in' не вызывает макрос AC_CONFIG_HEADER, то
нет необходимости устанавливать CONFIG_HEADERS в правилах
make).
| [ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |