我想如果一個特定的環境變量設置其他運行中的默認規則來運行特定規則的Makefile沒有設定目標。例如,如果未設置環境變量MYTARGETS1
,我想運行test1 and test2
。但是與下面的代碼,總是test1
規則是,當我使用make run
命令運行。基於環境變量的值
MYTARGETS1 ?= True
ifeq (${MYTARGETS1},True)
MYTARGETS = test1 test2
else
MYTARGETS = test1
endif
test1:
echo "test1"
test2:
echo "test2"
run: common $(MYTARGETS)
common:
echo "common"
爲什麼downvote我建議?這是我的要求,我知道一種解決方案可能是使用'MYTARGETS'作爲env並通過規則運行,但我不想那樣! – sarbjit