2013-03-19 107 views
4

文件中我Makfile我有以下的,的Makefile:傳遞命令行參數裏面的Makefile

smktestrun: smktest 
    @../projects/test.sh 

而且我把這種使用:

Make smktestrun 

但有時我需要傳遞一個參數/與此文件(test.sh)沿參數

所以基本上我想:

test.sh -abc 

但是,如果我只是將參數傳遞給Makefile本身,則不會將參數視爲簡單腳本執行。

那麼有沒有一種方法可以在Makefile中指定參數需要與該文件一起傳遞?

謝謝。

回答

7

喜歡的東西

smktestrun: smktest 
     @../projects/test.sh $(TESTARGS) 

然後調用的Makefile與

$ make smktestrun TESTARGS="-abc" 
+0

大thanks.one附加?如果我只是打電話:make smktestrun,它會抱怨我還需要TESTARGS嗎? – Sunny 2013-03-19 13:08:02

+0

我認爲它不應該,但如果是這樣,你可以在Makefile中用'TESTARGS:=' – chepner 2013-03-19 13:11:33

3

你可以在Makefile中定義的變量。

smktestrun: smktest 
    @../projects/test.sh ${ARG} 

然後作出的命令行是:

make smktestrun ARG="something" 
+3

指定一個默認的空值,謝謝,你已經寫了{} @chepner和()一樣寫了。都可以使用? – Sunny 2013-03-19 13:09:40