scripts/config: properly handle select on symbols with unmet direct dependencies
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -400,19 +400,11 @@ void sym_calc_value(struct symbol *sym) | |||||||
| 			} | 			} | ||||||
| 		calc_newval: | 		calc_newval: | ||||||
| 			if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { | 			if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { | ||||||
| 				struct expr *e; | 				newval.tri = no; | ||||||
| 				e = expr_simplify_unmet_dep(sym->rev_dep.expr, | 			} else { | ||||||
| 				    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 = 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) | 		if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN) | ||||||
| 			newval.tri = yes; | 			newval.tri = yes; | ||||||
| 		break; | 		break; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau