【发布时间】:2013-04-03 12:50:30
【问题描述】:
我希望 make 过程有条件地仅在执行的第一个目标上回显
在下面的 makefile 中,它应该只打印 'a'、'b' 或 'goal'
目前,由于 L 没有被修改,它会打印任何执行的目标。
我已经使用外部临时文件和脚本完成了它,但我想知道如果没有外部文件/脚本是否有可能?
L=1
goal: a b
ifeq ($(L),1)
@echo goal
@L=0
endif
@echo done > goal
a:
ifeq ($(L),1)
@echo a
@L=0
endif
@echo done > a
b:
ifeq ($(L),1)
@echo b
@L=0
endif
@echo done > b
【问题讨论】: