mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 14:34:27 -05:00 
			
		
		
		
	This fixes the initial patch to cover all cases where unset symbols are
handled in the code.
Fixes commit eaa9c94c75 ("generic: Kconfig: exit on unset symbol")
Signed-off-by: David Bauer <mail@david-bauer.net>
		
	
			
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 310e8e04a05d9eb43fa9dd7f00143300afcaa37a Mon Sep 17 00:00:00 2001
 | 
						|
From: David Bauer <mail@david-bauer.net>
 | 
						|
Date: Fri, 11 Nov 2022 13:33:44 +0100
 | 
						|
Subject: [PATCH] kconfig: abort configuration on unset symbol
 | 
						|
 | 
						|
When a target configuration has unset Kconfig symbols, the build will
 | 
						|
fail when OpenWrt is compiled with V=s and stdin is connected to a tty.
 | 
						|
 | 
						|
In case OpenWrt is compiled without either of these preconditions, the
 | 
						|
build will succeed with the symbols in question being unset.
 | 
						|
 | 
						|
Modify the kernel configuration in a way it fails on unset symbols
 | 
						|
regardless of the aforementioned preconditions.
 | 
						|
 | 
						|
Signed-off-by: David Bauer <mail@david-bauer.net>
 | 
						|
---
 | 
						|
 scripts/kconfig/conf.c | 6 ++++++
 | 
						|
 1 file changed, 6 insertions(+)
 | 
						|
 | 
						|
--- a/scripts/kconfig/conf.c
 | 
						|
+++ b/scripts/kconfig/conf.c
 | 
						|
@@ -109,6 +109,9 @@ static int conf_askvalue(struct symbol *
 | 
						|
 		}
 | 
						|
 		/* fall through */
 | 
						|
 	case oldaskconfig:
 | 
						|
+		if (!tty_stdio && getenv("FAIL_ON_UNCONFIGURED")) {
 | 
						|
+			exit(1);
 | 
						|
+		}
 | 
						|
 		fflush(stdout);
 | 
						|
 		xfgets(line, sizeof(line), stdin);
 | 
						|
 		return 1;
 | 
						|
@@ -303,6 +306,9 @@ static int conf_choice(struct menu *menu
 | 
						|
 			}
 | 
						|
 			/* fall through */
 | 
						|
 		case oldaskconfig:
 | 
						|
+			if (!tty_stdio && getenv("FAIL_ON_UNCONFIGURED")) {
 | 
						|
+				exit(1);
 | 
						|
+			}
 | 
						|
 			fflush(stdout);
 | 
						|
 			xfgets(line, sizeof(line), stdin);
 | 
						|
 			strip(line);
 |