所有Autoconf宏都以AC_'起头以防止偶然地与其它文本发生冲突。所有它们用于内部目的的shell变量 几乎全部是由小写字母组成的,并且以
ac_’开头的名字。为了确保你的宏不会与现在的或者将来的Autoconf宏冲突, 你应该给你自己的宏名和任何它们因为某些原因而需要使用的shell变量添加前缀。它可能是你名字的开头字符,或者 你的组织或软件包名称的缩写。
大部分Autoconf宏的名字服从一个表明特征检查的种类命名惯例。宏名由几个单词组成,由下划线分隔,可以是最常见的, 也可以是最特殊的。它们的缓存变量名服从相同的惯例。(关于它们的详细信息, 参见缓存变量名)。
`AC_’之后的第一个单词通常给出被测试特征的类别。下面是Autoconf为特殊测试宏使用的类别, 它们是你很可能要编写的宏。它们的全小写形式还用于缓存变量。在可能的地方使用它们;如果不能,就发明一个你自己的类别。
C
C语言内置特征。
DECL
在头文件中对C变量的声明。
FUNC
库中的函数。
GROUP
文件的UNIX组拥有者(group owner)。
HEADER
头文件。
LIB
C库。
PATH
包括程序在内的,到文件的全路径名。
PROG
程序的基本名(base name)。
STRUCT
头文件中对C结构的定义。
SYS
操作系统特征。
TYPE
C内置或者声明类型。
VAR
库中的C变量。
在类别之后就是特定的被测试特征的名称。宏名中所有的其它单词指明了特征的特殊方面。 例如,AC_FUNC_UTIME_NULL检查用NULL指针调用utime函数时该函数的行为。
一个作为另一个宏的内部子程序的宏的名字应该以使用它的宏的名字开头,而后是说明内部宏作了什么的一个或多个单词。 例如,AC_PATH_X有内部宏AC_PATH_X_XMKMF和AC_PATH_X_DIRECT。