Next: , Previous: Compilers and Preprocessors, Up: Existing Tests


5.11 システムサービス

以下のマクロはオペレーティングシステムのサービスや機能を調査します.

— Macro: AC_PATH_X

X Window Systemのインクルードファイルとライブラリの場所を調査します.ユー ザがコマンドラインオプションで,‘--x-includes=dir’と ‘--x-libraries=dir’を与えている場合,そのディレクトリを使用し ます.どちらか一つまたは両方とも与えられない場合,xmkmfを平凡な Imakefileで実行し,生成されたMakefileを調査し,足りない値 を取得します.(xmkmfが存在しない等のように)失敗した場合,配置され ることが多いディレクトリ等でファイルを検索します.いずれかの手法で成功し た場合,コンパイラがデフォルトで検索するディレクトリに無い限り,シェル変 数x_includesx_librariesをその場所に設定します.

両方の方法が失敗する,またはユーザがコマンドラインオプションの ‘--without-x’を与えている場合,シェル変数のno_xを‘yes’ に設定し,それ以外では空の文字列に設定します.

— Macro: AC_PATH_XTRA

AC_PATH_Xの拡張バージョンです.Xが必要とするCコンパイラフラグを出 力変数X_CFLAGSに,XリンカフラグをX_LIBSに追加します.X が 利用可能でない場合,X_DISPLAY_MISSINGを定義します.

また,このマクロは,Xプログラムをコンパイルするためにシステムが必要とす る特別なライブラリも調査します.それは,システムが必要とするあらゆるもの を出力変数X_EXTRA_LIBSに追加します.そして,‘-lX11’の前にリ ンクする必要がある特別なX11R6ライブラリを調査し,見つかったものは全て出 力変数X_PRE_LIBSに追加します.

— Macro: AC_SYS_INTERPRETER

スクリプトを使用するためのインタプリタを選択するため,‘#! /bin/csh’の形式の行を用いたスクリプトをサポートするかどうかを調査します. このマクロを実行した後で,configure.acのシェルコードは,シェル変 数の interpvalを調査することが可能になります.システムで‘#!’ がサポートされている場合は‘yes’,そうでなければ‘no’ を設定しま す.

— Macro: AC_SYS_LARGEFILE

large-file supportのために用意しています.ホストによっては,大きなファ イルにアクセスできるプログラムをビルドするため,特別なコンパイラオプショ ンが必要になります.そのようなオプションを出力変数CCに,全て追加 します.必要な場合は,_FILE_OFFSET_BITS_LARGE_FILES を定 義します.

大きなファイルのサポートは,--disable-largefileオプションを用い てコンフィグレーションすることで利用不可能にすることが可能です.

このマクロを使用する場合,大きなファイルのサポートが利用可能なときは, off_tlongより長いときが一般的なので,それでもプログラム が動作するかどうかを調査してください.例えば,printf ("%ld", (long) X)で任意のoff_tの値Xを出力しても正しくなくなります.

LFSはfseekoftello関数を,Cのoff_tを使用していない fseekftellに相当するものを置き換えるために導入しました. それらの関数を使用しているときで,大きなファイルのサポートが利用可能になっ ているときに,利用可能なプロトタイプを作成するために AC_FUNC_FSEEKOを注意して使用して下さい.

— Macro: AC_SYS_LONG_FILE_NAMES

システムが14文字より長いファイル名をサポートする場合, HAVE_LONG_FILE_NAMESを定義します.

— Macro: AC_SYS_POSIX_TERMIOS

POSIX termiosヘッダと関数がシステムで利用可能かどうかを調査し ます.その場合は,シェル変数ac_cv_sys_posix_termiosを‘yes’に 設定します.それ以外ではその変数を‘no’に設定します.