From 9bfa6971aeaa663ae5cc845f589ebbd1459a1fc9 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@nbd.name>
Date: Wed, 3 Aug 2016 19:55:02 +0200
Subject: [PATCH] scripts/config: properly handle select on symbols with unmet
 direct dependencies

Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
 scripts/config/symbol.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/scripts/config/symbol.c b/scripts/config/symbol.c
index ca6f43726b..31f268a4ee 100644
--- a/scripts/config/symbol.c
+++ b/scripts/config/symbol.c
@@ -400,18 +400,10 @@ void sym_calc_value(struct symbol *sym)
 			}
 		calc_newval:
 			if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) {
-				struct expr *e;
-				e = expr_simplify_unmet_dep(sym->rev_dep.expr,
-				    sym->dir_dep.expr);
-				fprintf(stderr, "warning: (");
-				expr_fprint(e, stderr);
-				fprintf(stderr, ") selects %s which has unmet direct dependencies (",
-					sym->name);
-				expr_fprint(sym->dir_dep.expr, stderr);
-				fprintf(stderr, ")\n");
-				expr_free(e);
+				newval.tri = no;
+			} else {
+				newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri);
 			}
-			newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri);
 		}
 		if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN)
 			newval.tri = yes;
-- 
GitLab