控制 GNU 自动工具 make 输出
我正在使用 GNU autoconf/automake。有什么方法可以控制 make 从configure.ac 或Makefile.am 打印到stdout 的内容吗?例如,禁止将 mv 和 cp 命令打印到屏幕上,仅打印 gcc 正在编译的文件名而不是整个命令行,以某种方式突出显示 gcc 警告。
I am using GNU autoconf/automake. Is there any way I can control what make prints to stdout from configure.ac or Makefile.am? For example, suppress mv and cp commands being printed out to the screen, only print the name of the file being compiled by gcc rather than the whole command line, highlight gcc warnings in some way.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
美化 Automake 是您想要的吗?
编辑:从 Automake 1.10b 开始,静默-rules 是内置的。代码或风格不同,但效果相似。
Is Prettify Automake what you want?
Edit: As of Automake 1.10b, silent-rules is built-in. Not the same code or style but similar in effect.
现代 Automake(1.10b 之后)支持 --silent-rules ,它将抑制完整的编译命令。 (例如,输出是“CC foo”而不是“gcc -DHAVE_CONFIG_H ...”)这可能就是您所需要的。您需要将“silent-rules”添加到 AM_INIT_AUTOMAKE 并传递 --enable-silent-rules 进行配置(或将其放入 CONFIG_SITE)以启用该功能。有关详细信息,请参阅 automake 文档。
Modern Automake (after in 1.10b) supports --silent-rules which will suppress the full compile command. (eg, output is "CC foo" instead of "gcc -DHAVE_CONFIG_H ...") That may be all you need. You need to add "silent-rules" to AM_INIT_AUTOMAKE and pass --enable-silent-rules to configure (or put it in CONFIG_SITE) to enable the feature. See the automake docs for details.
我相信最简单的事情是编写一个运行 *make 并解析输出的包装脚本。我相信我在 Ubuntu 的某个地方看到过这种情况......
I believe the easiest thing is to write a wrapper script which runs *make and parses the output. I believe I have seen this being done in Ubuntu somewhere ...