GNU Make:特性与Makefile调试技巧
1. GNU Make 4.0与4.1的新特性
1.1 GNU Make 4.0新特性
- GNU Guile集成:GNU Make 4.0引入了
$(guile)函数,其参数是用GNU Guile语言编写的代码。代码执行后,返回值会转换为字符串并由$(guile)函数返回。例如,使用Guile检查文件是否存在:
$(if $(guile (access? "foo.c" R_OK)),$(info foo.c exists))- 动态加载对象:可在运行时动态加载对象以扩展Make的功能。
- 新命令行选项:对调试特别有帮助。
1.2 GNU Make 4.1新特性
- 新变量:引入了
MAKE_TERMOUT和MAKE_TERMERR两个布尔变量,当Make认为stdout和stderr分别发送到控制台时,它们的值为真(非空)。 $(file)函数改进: