config.h.inを生成するため,autoheaderはそれぞれのシンボ
ルに対するテンプレートを構築したり探したりする必要がありました.現在の
Autoconfのリリースでは,AH_VERBATIMとAH_TEMPLATEを使用しま
すが(see Autoheader Macros),古いリリースでは,ファイル
acconfig.hに必要なテンプレートのリストを含めていました.
autoheaderは,コメントと#defineと#undefの文を,
acconfig.h がカレントディレクトリに存在する場合はそこからコピーし
ます.追加のシンボルをAC_DEFINEする場合,このファイルを使用する必
要がありました.
config.h.inに情報を前置/後置したい場合,現在のAutoconfのリリース
でも,AH_TOPとAH_BOTTOMを提供しています.昔のバージョンの
Autoconfにはよく似た機能がありました../acconfig.hに文字列
`@TOP@'が含まれている場合,autoheaderは`@TOP@'
が含まれている行の前の行を生成するファイルの先頭にコピーします.同様に,
./acconfig.hに文字列`@BOTTOM@'が含まれている場合,
autoheaderはその行の後の行を生成するファイルの末尾にコピーしま
す.これらの文字列のいずれかまたは両方とも省略できます.古いバージョンの
Autoconfで同じ効果を生成するための,さらに古い代替方法は,カレントディレ
クトリにファイルfile.top(通常はconfig.h.top) や
file.botを作成することです.それらが存在する場合,
autoheaderはその出力の最初と終りに,それぞれその内容をコピーし
ます.
以前のバージョンのAutoconfでは,配布するソフトウエアパッケージの準備で使 用するファイルは以下のようになっています.
configure.ac --. .------> autoconf* -----> configure
+---+
[aclocal.m4] --+ `---.
[acsite.m4] ---' |
+--> [autoheader*] -> [config.h.in]
[acconfig.h] ----. |
+-----'
[config.h.top] --+
[config.h.bot] --'
AH_マクロだけを使用する際は,configure.acは自己内蔵型にす
べきで,そして,acconfig.h等に依存すべきではありません.