我想用gmake实现以下功能:
依赖X.如果X通过,我们就完成了。否则A必须依赖于B(具有配方和额外依赖性)。我也希望能够并行运行make,所以我不能从A: X B
我需要类似的东西:
X:
$(run_recipe1_and_set_pass_or_fail)
B: B1 B2
$(run_recipe2)
A: X
if "X.failed" "evaluate_target(B)" ""
我还想避免在这个过程中运行另一个make - 这会减慢速度。
答案 0 :(得分:1)
是的,如果我将 A 食谱更改为
A: X
$(if -e X.failed,make $(MFLAGS) B,)
它起作用,当B完成的工作很重要时,时间也不错。