makefile: allow to disable all default-yes config variables with CONFIG_NOTHING=yes.
authorstefanct <stefanct@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>
Fri, 26 Feb 2016 23:51:21 +0000 (23:51 +0000)
committerstefanct <stefanct@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>
Fri, 26 Feb 2016 23:51:21 +0000 (23:51 +0000)
All credit for this should be given to Patrick Georgi (see r1869).

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
git-svn-id: svn://flashrom.org/flashrom/trunk@1944 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

Makefile

index 00819c6..1511eef 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -642,6 +642,16 @@ CONFIG_CH341A_SPI ?= yes
 # Disable wiki printing by default. It is only useful if you have wiki access.
 CONFIG_PRINT_WIKI ?= no
 
+# Disable all features if CONFIG_NOTHING=yes is given unless CONFIG_EVERYTHING was also set
+ifeq ($(CONFIG_NOTHING), yes)
+  ifeq ($(CONFIG_EVERYTHING), yes)
+    $(error Setting CONFIG_NOTHING=yes and CONFIG_EVERYTHING=yes does not make sense)
+  endif
+  $(foreach var, $(filter CONFIG_%, $(.VARIABLES)),\
+    $(if $(filter yes, $($(var))),\
+      $(eval $(var)=no)))
+endif
+
 # Enable all features if CONFIG_EVERYTHING=yes is given
 ifeq ($(CONFIG_EVERYTHING), yes)
 $(foreach var, $(filter CONFIG_%, $(.VARIABLES)),\