さて,渦から渦まで頭を浮かせる(?)プログラムのzardozを,たった今
書き終えたと仮定します.移植性のフレームワークを提供するためにAutoconf
を使用していましたが,Makefile.inは特別に作成しました.それらを
堅牢にしたいのでAutomakeに切替えてみましょう.
第一歩はautomakeが必要とするコマンドを含めるため,
configure.acの更新を開始します.こうする方法は,AC_INIT
の直後にAM_INIT_AUTOMAKEの呼び出しを加えることです.
AC_INIT(zardoz, 1.0)
AM_INIT_AUTOMAKE
...
プログラムには,(例えば,gettextを使用していないし,共有ライブ
ラリもビルドしないし)複雑な要因が全くないので,この部分はおしまいです.
なんて簡単なんでしょう!
さてconfigureを再生成する必要があります.しかしこうするためには,
使用している新しいマクロを見つける方法をautoconfに伝える必要が
あります.こうするための最も簡単な方法は,aclocal.m4を生成する
aclocalプログラムを使用することです.しかしちょっと待って下さい
...プログラムに対してちょっとマクロを書く必要があり,既に
aclocal.m4があるかもしれません.aclocalプログラムでは,
マクロをacinclude.m4に書いておく必要があるので,単純に名前を変
更して以下のように実行します.
mv aclocal.m4 acinclude.m4
aclocal
autoconf
さてzardozに対するMakefile.amを書く時間がやってきました.
zardozはユーザプログラムなので,他のユーザプログラムがインストー
ルされる場所にインストールしたいと思います.bindirです.さらに,
zardozにはTexinfoドキュメントもあります.configure.acス
クリプトではAC_REPLACE_FUNCSを使用するので,`$(LIBOBJS)'
をリンクする必要があります.そのため以下のように書いたほうが良いでしょ
う.
bin_PROGRAMS = zardoz
zardoz_SOURCES = main.c head.c float.c vortex9.c gun.c
zardoz_LDADD = $(LIBOBJS)
info_TEXINFOS = zardoz.texi
さて,Makefile.inを生成するためにautomake --add-missing
を実行して,必要な補助ファイルを入手して,おしまいです!