[Makefile-随笔] ifdef多条件判断

来源:互联网 发布:只有我知双语未删减版 编辑:程序博客网 时间:2024/06/05 13:28

在使用Makefile时,有时需要实现如下的逻辑:

ifdef VAR1 || VAR2 || VAR3

ifdef VAR1 && VAR2 && VAR3

ifdef只支持单一的变量操作,在网上搜索了一下,有一个非常好的解决方案,总结如下。

原文链接

||操作

ifdef_any_of = $(filter-out undefined,$(foreach v,$(1),$(origin $(v))))ifneq ($(call ifdef_any_of,VAR1 VAR2),)result=defineelseresult=undefineendifall:        @echo $(result)

&&操作

ifndef_any_of = $(filter undefined,$(foreach v,$(1),$(origin $(v))))ifeq ($(call ifndef_any_of,VAR1 VAR2),)result=defineelseresult=undefineendifall:        @echo $(result)
原创粉丝点击