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.