どのようにして標準的なシステムタイプを使用するのでしょう?通常,システム
特有のCファイルを選択するためにconfigure.acで,一つ以上の
case文を使用します.AC_CONFIG_LINKSを使用し,システム名に
基づくこれらのファイルを,host.hやtarget.cのような一般的な
名前にリンクしてください(see Configuration Links).case 文の
パターンでは,以下の断片部分のように,複数の状態を分類するためシェルのワ
イルドカードを使用することが可能です.
case $target in
i386-*-mach* | i386-*-gnu*)
obj_format=aout emulation=mach bfd_gas=yes ;;
i960-*-bout) obj_format=bout ;;
esac
そして,その後でconfigure.acでは以下のように使用します.
AC_CONFIG_LINKS(host.h:config/$machine.h
object.h:config/$obj_format.h)
上記の例では,いくつかのアーキテクチャ($build)でビルドされ,別の
もの($host)で実行することが可能なツールから持ってこられているため,
$targetを使用していて,第三のアーキテクチャ($target)に対す
るデータを扱っていることにに注意してください.そのようなツールは,通常コ
ンパイラスイートの一部で,それは特殊な$targetに対するコードを生成
します.
しかし,$targetはほとんどのパッケージで意味が無いようにすべきです.
プログラムを実行するシステムを決定の基本にしたい場合,以下の抜粋部分のよ
うに,$host変数を使用していることを確かめてください.
case $host in
*-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-cygwin* | *-*-windows*)
MUMBLE_INIT="mumble.ini"
;;
*)
MUMBLE_INIT=".mumbleinit"
;;
esac
AC_SUBST([MUMBLE_INIT])
クロスコンパイルツールを探すため,ホストシステムタイプを使用することも可
能です.そうするためのAC_CHECK_TOOLマクロの情報は,See Generic Programs.