FLAIM项目的Autotools使用详解
1. 相关宏与变量介绍
1.1 AM_PROG_AR宏
AM_PROG_AR是一个较新的Automake宏。在更新Autotools时,autoreconf会提示需要该宏,添加后提示消失。Autoconf手册指出,若要使用具有不常见接口的归档器(如Microsoft lib),则需要此宏。实际上,真正发出抱怨的是Libtool,为消除警告,需要添加该宏。
1.2 ACLOCAL_AMFLAGS变量
在使用AC_CONFIG_MACRO_DIR(单数形式)的项目的顶级Makefile.am文件中,应定义ACLOCAL_AMFLAGS变量。其格式类似于C编译器命令行的包含(-I)指令,用于告诉aclocal在执行Makefile.am中定义的规则时,应在何处查找宏文件。
该变量在使用旧版AC_CONFIG_MACRO_DIR的宏子目录时是必需的,但随着新版AC_CONFIG_MACRO_DIRS的出现,不再需要此变量。不过,当Libtool在autoreconf期间看到Makefile.am文件中使用宏目录却没有该变量时,仍会发出抱怨。
Autotools在两个不相关的地方使用该变量:
- 在更新aclocal.m4文件的make规则中,示例代码如下:
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
ACLOCAL=${SHELL} .../flaim-ch8-10/missing --run aclocal-1.10
ACLOCAL_AMFLAGS
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



