顯示廣告
隱藏 ✕
看板 uefacool
作者 uefangsmith (唉呦!不錯哦~)
標題 [Make] 如何在maklefile 中混合使用ifeq 和 or 的邏輯
時間 2016-10-06 Thu. 21:48:39


如何在maklefile 中混合使用ifeq 和 or 的邏輯
在makefile 中你不用使用
ifeq($(var, x) or $(var, y))
這是不合乎語法的。

但是你可以巧妙地混用filter去逹到以上的效果
ifeq($(var), $(filter $(var), x y))

filter 的功能會將 var 分別和 x 及 y 比較,如果一樣就會返回x 或 y。

可以在 Makefile 中使用以下的條件判斷語法。但由於它們不是 rule,所以不可以 <Tab> 開頭;但其後要執行的指令則必須以 <Tab> 開頭,make 才會視其為 Shell 指令。

Ex:
Check if 1234 or 5678
        ifeq ($(WIFI_TARGET_PROJECT),$(filter $(WIFI_TARGET_PROJECT),1234 5678))
	
	
OOXX
	
else
	
	
XXOO
	
endif

--
※ 作者: uefangsmith 時間: 2016-10-06 21:48:39
※ 編輯: uefangsmith 時間: 2016-10-06 21:56:00
※ 看板: uefacool 文章推薦值: 0 目前人氣: 0 累積人氣: 42 
guest
x)推文 r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇