次: , 前: Macro Definitions, 上: Writing Autoconf Macros


9.2 マクロ名

全てのAutoconfマクロは,他のテキストと偶然衝突することを避けるため `AC_'で始まる全て大文字の名前になっています.内部目的で使用する全て のシェル変数は,`ac_'で始まるほとんど小文字の名前になっています.マ クロが,現在または将来のAutoconfマクロと衝突しないことを保証するため,マ クロ名と他の手続きで使用するシェル変数に,独自の接頭辞を付けてください. 可能性としては,イニシャルや組織やソフトウェアパッケージの名前の省略を含 めることになるでしょう.

ほとんどのAutoconfマクロ名は,名前によって調査している特徴の種類を示す, 構造化された命名則に続きます.複数の単語から成り立つマクロ名は,アンダー スコアで分けられ,最も一般的なものから最も特殊なものへとなっています. キャッシュ変数の名前も,同じ規則を使用しています(詳細はsee Cache Variable Names).

`AC_'の後の名前の最初の単語は,通常テストしている特徴のカテゴリを伝 えるものです.よく書くマクロの種類のテストマクロを指定するため,Autoconf が使用するカテゴリは以下のようになっています.それらはキャッシュ変数でも 全て小文字で使用されます.適用可能なものを使用してください.無ければ独自 のカテゴリを考え出してください.

C
C言語組み込み特徴.
DECL
ヘッダファイルでのC変数の宣言.
FUNC
ライブラリの関数.
GROUP
ファイルのunixグループオーナー.
HEADER
ヘッダファイル.
LIB
Cライブラリ.
PATH
プログラムを含むファイルのフルパス名.
PROG
プログラムのベース名.
MEMBER
集合体のメンバ.
SYS
オペレーティングシステムの特徴.
TYPE
C組み込みや宣言されている型.
VAR
ライブラリのC変数.

カテゴリの後には,特定の特徴をテストしている名前が来ます.マクロ名のそれ 以外の単語は,特徴の特定の側面を示します.例えば, AC_FUNC_UTIME_NULLは,NULLポインタで呼び出されたときの utime関数の動作を調査します.

内部マクロは,アンダースコアで始まる名前にすべきです.そのため,Autoconf 内部のものは`_AC_'で始まります.さらに,他のマクロ内部のサブルーチ ンとなるマクロは,アンダースコアと他のマクロ名ではじまり,内部マクロが行 うことを伝える一つ以上の単語が続きます.例えば, AC_PATH_Xは,内 部マクロに_AC_PATH_X_XMKMF_AC_PATH_X_DIRECTがあります.