Skip to contentSkip to conversation

rules.mak: New logical functions

PATCH New [email protected] 1 participant 1 message Jun 22, 2013

lore
Share & tools
lore
#0 lore raw

PATCH 1/3 rules.mak: New logical functions

From: Ákos Kovács <[email protected]>

New functions are added: lnot, land, lor, lif, eq, ne, isempty, notempty

Example usage:

    obj-$(call lor,$(CONFIG_LINUX),$(CONFIG_BSD)) += feature.o
---
 rules.mak |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)
rules.mak +16 -0
index 4499745..7e8e3bd 100644
@@ -106,6 +106,22 @@ clean: clean-timestamp
 obj := .
 old-nested-dirs :=
 
+# Logical functions
+lnot = $(if $(subst n,,$1),n,y)
+
+land-yy = y
+land = $(land-$1$2)
+
+lor = $(findstring y,$1,$2)
+
+lif = $(if $(subst n,,$1),$2,$3)
+
+eq = $(if $(subst $2,,$1)$(subst $1,,$2),n,y)
+ne = $(if $(subst $2,,$1)$(subst $1,,$2),y,n)
+
+isempty = $(call eq,$1,)
+notempty = $(call ne,$1,)
+
 define push-var
 $(eval save-$2-$1 = $(value $1))
 $(eval $1 :=)
Signature · 1 line
1.7.2.5