如何在 automake 中编写自定义静默规则?
How do I write a custom silent rule in automake?
我正在做一个 automake 项目,我们有一个自定义汇编器、编译器和链接器。
当前构建这些自定义目标显示了整个命令行:
knucc -c -L/some/path/here -I/some/path/include -I/some/other/path -o foobar.o foobar.knucpp
我要如何施展魔法才能将上面的变成这样:
KCXX foobar.o
当我 make V=0
或默认使用 configure --enable-silent-rules
打开静默规则时。
我正在使用 automake v1.14。
我最终在 GNU automake 邮件列表上找到了魔法:http://gnu-automake.7480.n7.nabble.com/AM-V-GEN-better-docs-td3426.html
我能够解决这个问题:
QUIET_KCXX = $(QUIET_KCXX_$(V))
QUIET_KCXX_ = $(QUIET_KCXX_$(AM_DEFAULT_VERBOSITY))
QUIET_KCXX_0 = @printf " %-5s " KCXX ; echo $(notdir $@);
.knucxx.o:
$(QUIET_KCXX) # build command here
现在我在静默构建期间有一条自定义消息。
我正在做一个 automake 项目,我们有一个自定义汇编器、编译器和链接器。
当前构建这些自定义目标显示了整个命令行:
knucc -c -L/some/path/here -I/some/path/include -I/some/other/path -o foobar.o foobar.knucpp
我要如何施展魔法才能将上面的变成这样:
KCXX foobar.o
当我 make V=0
或默认使用 configure --enable-silent-rules
打开静默规则时。
我正在使用 automake v1.14。
我最终在 GNU automake 邮件列表上找到了魔法:http://gnu-automake.7480.n7.nabble.com/AM-V-GEN-better-docs-td3426.html
我能够解决这个问题:
QUIET_KCXX = $(QUIET_KCXX_$(V))
QUIET_KCXX_ = $(QUIET_KCXX_$(AM_DEFAULT_VERBOSITY))
QUIET_KCXX_0 = @printf " %-5s " KCXX ; echo $(notdir $@);
.knucxx.o:
$(QUIET_KCXX) # build command here
现在我在静默构建期间有一条自定义消息。