使用條件判斷,使得make根據運行情況不同執行不同的步驟。
格式
<conditional-directive>
<text-if-true>
else
<text-if-false>
<endif>
其中的條件有4個關鍵字,分別爲ifeq\ifneq\ifdef\ifndef。
1、ifeq方式
格式
ifeq(arg1,arg2)
或者
ifeq‘arg1''arg2’
或者
ifeq"arg1""arg2"
或者
ifeq"arg1"'arg2'
2、ifneq方式
格式和ifeq類似,只是含義相反;
3、ifdef方式
格式
ifdef<variable-name>
測試是否有值,有值則爲真,否則爲假。
4、ifndef 方式
格式
ifndef <variable-name>
含義和ifdef相反。
**make在讀取Makefile時就計算條件表達式的值,而自動變量在運行時才計算值,故不可將自動變量放在條件表達式中。