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


Простой пример, от начала до конца

Давайте предположим, что мы только что закончили писать zardoz --- программу, от которой у всех кружится голова. Вы использовали Autoconf для обеспечения переносимости, но ваш файл `Makefile.in' был написан бессистемно. Вы же хотите сделать его пуленепробиваемым, и поэтому решаете использовать Automake.

Сначала вам необходимо обновить ваш файл `configure.in', чтобы вставить в него команды, которые необходимы для работы automake. Проще всего для этого добавить строку AM_INIT_AUTOMAKE сразу после AC_INIT:

AM_INIT_AUTOMAKE(zardoz, 1.0)

Поскольку ваша программа не имеет никаких осложняющих факторов (например, она не использует gettext и не будет создавать разделяемые библиотеки), то первая стадия на этом и заканчивается. Это легко!

Теперь вы должны заново создать файл `configure'. Но для этого нужно сказать autoconf, где найти новые макросы, которые вы использовали. Для создания файла `aclocal.m4' удобнее всего будет использовать программу aclocal. Но будьте осторожны... у вас уже есть `aclocal.m4', поскольку вы уже написали несколько собственных макросов для вашей программы. Программа aclocal позволяет вам поместить ваши собственные макросы в файл `acinclude.m4', так что для сохранения вашей работы просто переименуйте свой файл с макросами, а уж затем запускайте программу aclocal:

mv aclocal.m4 acinclude.m4
aclocal
autoconf

Теперь пришло время написать свой собственный файл `Makefile.am' для программы zardoz. Поскольку zardoz является пользовательской программой, то вам хочется установить ее туда, где располагаются другие пользовательские программы. Вдобавок, zardoz содержит в комплекте документацию в формате Texinfo. Ваш скрипт `configure.in' использует AC_REPLACE_FUNCS, так что вам необходимо скомпоновать программу с `@LIBOBJS@'. Вот что вам необходимо написать в `Makefile.am'.

bin_PROGRAMS = zardoz
zardoz_SOURCES = main.c head.c float.c vortex9.c gun.c
zardoz_LDADD = @LIBOBJS@

info_TEXINFOS = zardoz.texi

Теперь можно запустить automake --add-missing, чтобы создать файл `Makefile.in', используя дополнительные файлы, и вот, все готово!


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