第七載:makefile中的條件判斷

    makefile跟編程語言一樣,也支持條件判斷,方式大同小異,makefile條件判斷語句的語法如下:

雖然有集中形式,但是推薦使用第一種,其比較符合我們的編程習慣(尤其從事C/C++派系的工作人員),需要注意的是,ifxxx前邊不能爲tab鍵(因爲不是命令),()中也不允許有空格,否則會報錯,這裏ifxxx是泛指集中判斷類型,具體的如下:

可以支持 ifeq ... else ... endif這樣的條件分支判斷,下邊直接看makefile示例:

.PHONY : all

val1 := debug
val2 :=

all:
        @echo "-----test ifeq------"
ifeq ($(val1), debug)    #注意:條件判斷語句前不能爲tab,可以爲空格
        @echo "val1 == debug"
else
        @echo "val1 != debug"
endif
        @echo "-----test ifdef------"

ifdef ($(val2))
        @echo "define val2"
else
        @echo "not define val2"
endif

執行 make all

/home/delphi>make all
-----test ifeq------
val1 == debug
-----test ifdef------
not define val2
/home/delphi>

makefile中的條件判斷比較簡單,就不做過多介紹了。

以上內容參考《狄泰軟件學院》操作系統篇之 - makefile專題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章