2011-10-24 29 views
1

在項目中,我有一個名爲make.sh的腳本,它構建項目並執行其他一些操作。到目前爲止它工作得很好。將其命令行參數傳遞給另一個腳本的Makefile

然後,只是出於好奇,我想盡量創造剛通過其命令行參數,這個腳本一個Makefile文件,所以我可以把它 使快照 代替 ./make.sh快照

這是我現在使用

.PHONY: snapshot 

%: 
    ./make.sh [email protected] 

snapshot: 
    ./make.sh snapshot 

但這種方法有一些問題,我無法通過「建」作爲參數的Makefile,因爲我有一個「建設」目錄(SCons的使用),我不能傳遞第二個參數傳遞給腳本,如: 化妝上傳192.168.1.10 爲make其解釋爲兩個不同的目標......

有沒有一種方法我可以在Makefile做到這一點?

回答

3

是的,你可以做到這一點:

%:all 
    @true 

all: 
    ./make.sh $(MAKECMDGOALS) 

但這是製作的濫用。這個想法是Make應該將它的論點解釋爲一組目標,而不是一個有序的一般論據列表。你應該使用不同的工具。

+0

這就是我正在尋找的。是的,我知道它濫用了Make,但這更多是爲了好奇而非其他任何事情。謝謝! – Vargas

相關問題