#navi_header|C言語系| GNU Automakeの自分用メモ - GNU Automake 本家 -- http://www.gnu.org/software/automake/ - GNU Automake HTMLドキュメント(1ページ版) -- http://www.gnu.org/software/automake/manual/automake.html Automakeは基本的には以下の2大機能を提供する。 + Makefile.am+configure.ac → automake実行 → Makefile.in生成 + aclocal実行 → configure.acで使われているマクロを aclocal.m4 に集約 基本的な流れとしては以下の順序になる。 + configure.acの準備と、AM_INIT_AUTOMAKEマクロの組み込み + AM_INIT_AUTOMAKEを使えるようにする為、"aclocal"を実行してaclocal.m4を生成 + Makefile.amの準備 + automake実行 automakeはconfigure.acを読み込んでm4マクロを実行するが、Automakeが提供するm4マクロはそのままでは見つからないので実行できない。そこで、aclocalにより、configure.ac中で出てくる(Autoconf以外の)外部マクロをaclocal.m4に集約する。これにより、Automakeの提供するm4マクロはaclocal.m4に含まれる事になり、automakeにより実行可能となる。 なおautomake実行時にINSTALL, COPYINGの2ファイルが存在しないと"not found"エラーになる。そういう場合は、 automake -a -c とすることでとりあえず自動的に用意する事ができる。他の"README"や"NEWS"などは手動で用意する必要がある。 また、"install-sh"なども自動的に追加されるようになるが、そうしたサポートスクリプトを追加するディレクトリを分けたい場合は、configure.acに AC_CONFIG_AUX_DIR(ディレクトリ名) と、AM_INIT_AUTOMAKEの前に指定する。 ※なおGNU Automake HTMLドキュメントには、「aclocalは本来はAutoconfの機能に含まれるべきなので、将来的にはAutomakeからは無くなるかも」という記述がある。 以下、GNU Automake HTMLドキュメントでの主な見出しをポイントしておく。(見出しの番号については2009/11時点のものなので、将来変更される可能性がある) - Makefileの提供するターゲットや機能を知りたい -- "2.2 Use Cases for the GNU Build System" 以下参照 - Automake, Makefile.amのサンプを読みたい -- "2.4 A Small Hello World", "4 Some example packages" 参照 - aclocalの詳細や、m4マクロの検索の詳細を知りたい -- "6.3 Auto-generating aclocal.m4" 参照 - サブディレクトリを使う時のHowToを知りたい -- "7 Directories", "7.1 Recursing subdirectories" 参照 - Makefile.amで指定できる機能の詳細を知りたい -- "8 Building Programs and Libraries", "8.1 Building a program", "8.2 Building a library", "8.3 Building a Shared Library" 参照 #navi_footer|C言語系|