我今天偶然看到了一个自动came宏集合:https://www.gnu.org/software/autoconf-archive/The-Macros.html#The-Macros。所有这些都是前缀ax_,例如ax_ac_append_to_file.m4,它在configure.ac中通过包含行AX_ABSOLUTE_HEADER()而被激活。
在过去,我只看到以AC_开头的宏。
那么,切换到AX_是一种相对较新的约定,是一种避免名称空间冲突的方法,还是其他的一种方法?
发布于 2016-12-03 19:52:06
宏是命名空间的。AC_指的是Autoconf中的宏,AM_是Automake,LT_是Libtool等。
在过去,提供宏的其他程序通常会在Autoconf的命名空间中执行,这就是为什么您可能会看到一些AX_宏的变体带有AC_前缀。
发布于 2016-12-04 01:56:30
AX_是autoconf存档的标准“命名空间”,以防止它与其他实现发生冲突。
例如,您会发现我的旧attributes.m4被复制并在许多地方使用,并且它使用了CC_前缀(因为最初它只检查编译器)。
https://stackoverflow.com/questions/40949485
复制相似问题