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

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

Automake

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


Другие порожденные объекты

Automake может обрабатывать порожденные объекты, которые не являются программами на C. Иногда поддержка построения таких объектов должна быть предоставлена явно, но Automake все равно будет автоматически отрабатывать процесс установки и создания дистрибутива.

Исполняемые скрипты

Существует также возможность определить и установить программы, которые являются скриптами. Эти программы перечисляются с использованием основной переменной `SCRIPTS’. Automake не определяет зависимости для скриптов; файл `Makefile.am’ должен явно включать в себя соответствующие правила.

Automake не считает, что скрипты являются унаследованными объектами; такие скрипты должны удаляться вручную (see section Что будет удалено).

Сама программа automake является скриптом на Perl, так что она генерируется на этапе конфигурации из `automake.in’. Вот как это обрабатывается:

bin_SCRIPTS = automake

Поскольку automake появляется в макросе AC_OUTPUT, то для нее цель создается автоматически.

Скрипты могут быть установлены в каталоги bindir, sbindir, libexecdir или pkgdatadir.

Заголовочные файлы

Заголовочные файлы определяются семейством переменных `HEADERS’. Обычно заголовочные файлы не устанавливаются, так что в большинстве случаев будет определена переменная noinst_HEADERS.

Все заголовочные файлы должны быть перечислены; отсутствующие файлы не будут включены в дистрибутив. Часто лучше всего перечислить неустанавливаемые заголовочные файлы вместе с другими исходными текстами программы. See section Построение программ и библиотек. Заголовочные файлы, перечисленные в переменных `_SOURCES’, не надо указывать ни в одной из переменных `_HEADERS’.

Заголовочные файлы могут быть установлены в каталоги includedir, oldincludedir или pkgincludedir.

Файлы данных, не зависимые от архитектуры машины

Automake поддерживает установку различных файлов данных, используя семейство переменных `DATA’.

Такие данные могут быть установлены в каталоги datadir, sysconfdir, sharedstatedir, localstatedir или pkgdatadir.

По умолчанию файлы данных не включаются в дистрибутив.

Вот как Automake устанавливает свои вспомогательные файлы данных:

pkgdata_DATA = clean-kr.am clean.am …

Построение исходных текстов

Время от времени файлы, которые могли бы быть названы исходными (например, файлы `.h’ в C), в действительности порождаются из других файлов. Такие файлы должны быть перечислены в переменной BUILT_SOURCES.

Построенные исходные тексты по умолчанию не компилируются. Для компиляции исходных текстов вы должны явно указать их в других переменных `_SOURCES’.

Заметьте, что в некоторые случаях, BUILT_SOURCES будет работать достаточно странным образом. Для того, чтобы построение исходных текстов работало с автоматическим отслеживанием зависимостей, файл `Makefile’ должен зависеть от $(BUILT_SOURCES). При этом такие исходные тексты могут начать пересобираться в самый неудобный момент.


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

Comments