autoconf難しい。GNU系のプログラムで/usr/local/binとかも想定しているので、今作ろうとしてるようなちっちゃいプログラムでは必要ないのかもしれない。
- http:/shimaki-hp.hp.infoseek.co.jp/autoconf/book1.html
- http:/sharl.haun.org/autoconf.html
- http:/www.itojun.org/hack/autoconf/tips.html
- http:/home.catv.ne.jp/pp/ginoue/gnu/autoconf.html
- http:/www.amath.washington.edu/~lf/tutorials/autoconf/
- http:/www.bookshelf.jp/texi/autoconf-ja/autoconf-ja.html
- http:/hp.vector.co.jp/authors/VA022047/linux/autoconf.html
endian問題を解決する
http:/www.geocities.jp/fut_nis/html/autoconf-ja/C-Compiler.html
AC_HAVE_LIBRARY
ダイナミックライブラリがあるかどうか調べる
if test -z "$LIBOCTAVE_LIB"; then AC_HAVE_LIBRARY( octave, LIBOCTAVE_LIB='-loctave',n AC_MSG_ERROR(*** OCTAVE library not found ***) ) fi AC_SUBST(LIBOCTAVE_LIB)
- これでconfigureのときに/usr/lib/liboctave.soがあるかどうかCheckしてくれる
- AC_CHECK_LIBというのもある
AC_C_BIGENDIAN ([action-if-true],[action-if-false],[action-if-unknown])
マクロ
(MotorolaとSPARCのCPUのように)wordが最上位バイトに最初に保存される場合, action-if-trueを実行します.(IntelとVAXのCPUのように)wordが最下位バイトに最初に保存される場合,action- if-falseを実行します.
システムヘッダファイルからエンディアンを決定不可能な場合,このマクロはテストケースを実行します.クロスコンパイル時に,テストケースは実行されませんが,いくつかのマジック変数を検索します.後者の状況でホストシステムのバイト特性の決定に失敗した場合,action-if-unknownが実行されます.
action-if-trueのデフォルトはWORDS_BIGENDIANを定義することです.action-if-falseのデフォルトは何もしないことです.そして最後に, action-if-unknownのデフォルトは,コンフィグレーションを中断し,インストールしている人に,このテストをバイパスさせるために変数を前もって定義するよう伝えます.