[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21. Когда не хватает возможностей Automake

Неявная семантика копирования Automake означает, что много проблем может быть решено простым добавлением некоторых целей для make и правил для `Makefile.in'. Automake будет игнорировать эти добавления.

Есть некоторые предостережения для этих работ. Хотя вы можете переопределить цели, уже используемые Automake, но часто это просто неразумно, особенно в каталоге верхнего уровня пакета не относящегося к типу flat. Однако, вы можете указать в вашем файле `Makefile.in' различные полезные цели, имеющие суффикс `-local'. Automake дополнит стандартные цели этими целями пользователя.

К целям, поддерживающим локальную версию относятся: all, info, dvi, check, install-data, install-exec, uninstall и разные цели clean (mostlyclean, clean, distclean и maintainer-clean). Заметьте, что в этом списке нет целей uninstall-exec-local или uninstall-data-local; есть только uninstall-local. Это не имеет значения для удаления только данных или исполняемых файлов.

Например, вот один из способов установить файл в каталог `/etc':

 
install-data-local:
        $(INSTALL_DATA) $(srcdir)/afile /etc/afile

Некоторые цели также имеют способ запускать другие цели после выполнения всех своих действий, это называется ловушка (hook). Ловушка называется по имени цели, с добавлением суффикса `-hook'. Целями, разрешающими использование ловушек являются install-data, install-exec, dist и distcheck.

Например, вот как создать жесткую ссылку на установленную программу:

 
install-exec-hook:
        ln $(bindir)/program $(bindir)/proglink


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated on February, 19 2004 using texi2html