簡體   English   中英

僅當配方(或其他依賴項)失敗時,才如何在makefile中添加依賴項?

[英]How to add a dependency in makefile only if a recipe (or another dependency) fails?

我想通過gmake實現以下目標:

讓A依賴X。如果X通過,則完成。 否則,A必須依賴於B(具有配方和額外的依賴關系)。 我還希望能夠並行運行make,所以我不能以A: XB開頭

我需要類似的東西:

X:
    $(run_recipe1_and_set_pass_or_fail)

B: B1 B2
    $(run_recipe2)

A: X
    if "X.failed" "evaluate_target(B)" ""

我也想避免在此過程中運行另一個make-這會使事情變慢。

是的,如果我將A配方更改為類似

A: X
    $(if -e X.failed,make $(MFLAGS) B,)

它可以工作,並且當B所做的工作很重要時,這在時間上也不錯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM