Patchwork [1/3] rules.mak: New logical functions

login
register
mail settings
Submitter Ákos Kovács
Date June 22, 2013, 2:23 a.m.
Message ID <51c50a98.c4730e0a.40e4.6fb8@mx.google.com>
Download mbox | patch
Permalink /patch/253334/
State New
Headers show

Comments

Ákos Kovács - June 22, 2013, 2:23 a.m.
From: Ákos Kovács <akoskovacs@gmx.com>

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

Example usage:
    obj-$(call lor,$(CONFIG_LINUX),$(CONFIG_BSD)) += feature.o

Signed-off-by: Ákos Kovács <akoskovacs@gmx.com>
---
 rules.mak |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

Patch

diff --git a/rules.mak b/rules.mak
index 4499745..7e8e3bd 100644
--- a/rules.mak
+++ b/rules.mak
@@ -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 :=)