aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Bauer <mail@david-bauer.net>2021-07-23 01:32:38 +0200
committerDavid Bauer <mail@david-bauer.net>2021-08-10 13:14:52 +0200
commiteaa9c94c75748265b9260691d5f59c9d3711f7d4 (patch)
tree36ef00cbd0e3f7e5244c33c13a490fa072f19fb3
parent29a3967e61334d0c6a1a7d391f0e751272d77b1d (diff)
downloadupstream-eaa9c94c75748265b9260691d5f59c9d3711f7d4.tar.gz
upstream-eaa9c94c75748265b9260691d5f59c9d3711f7d4.tar.bz2
upstream-eaa9c94c75748265b9260691d5f59c9d3711f7d4.zip
generic: Kconfig: exit on unset symbol
When a target configuration has unser 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 uscceed with the symbols in question being unset. Modify the kernel configuration in a way it fails on unset symbols regardless of the aformentioned preconditions. Signed-off-by: David Bauer <mail@david-bauer.net>
-rw-r--r--include/kernel-build.mk1
-rw-r--r--target/linux/generic/hack-5.10/205-kconfig-exit.patch11
-rw-r--r--target/linux/generic/hack-5.4/205-kconfig-exit.patch11
3 files changed, 23 insertions, 0 deletions
diff --git a/include/kernel-build.mk b/include/kernel-build.mk
index 66a9f64c80..80da4455bc 100644
--- a/include/kernel-build.mk
+++ b/include/kernel-build.mk
@@ -132,6 +132,7 @@ define BuildKernel
$(LINUX_DIR)/.modules: export STAGING_PREFIX=$$(STAGING_DIR_HOST)
$(LINUX_DIR)/.modules: export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(LINUX_DIR)/.modules: export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
+ $(LINUX_DIR)/.modules: export FAIL_ON_UNCONFIGURED=1
$(LINUX_DIR)/.modules: $(STAMP_CONFIGURED) $(LINUX_DIR)/.config FORCE
$(Kernel/CompileModules)
touch $$@
diff --git a/target/linux/generic/hack-5.10/205-kconfig-exit.patch b/target/linux/generic/hack-5.10/205-kconfig-exit.patch
new file mode 100644
index 0000000000..8931ad3270
--- /dev/null
+++ b/target/linux/generic/hack-5.10/205-kconfig-exit.patch
@@ -0,0 +1,11 @@
+--- a/scripts/kconfig/conf.c
++++ b/scripts/kconfig/conf.c
+@@ -212,6 +212,8 @@ static int conf_sym(struct menu *menu)
+ break;
+ continue;
+ case 0:
++ if (!sym_has_value(sym) && !tty_stdio && getenv("FAIL_ON_UNCONFIGURED"))
++ exit(1);
+ newval = oldval;
+ break;
+ case '?':
diff --git a/target/linux/generic/hack-5.4/205-kconfig-exit.patch b/target/linux/generic/hack-5.4/205-kconfig-exit.patch
new file mode 100644
index 0000000000..8931ad3270
--- /dev/null
+++ b/target/linux/generic/hack-5.4/205-kconfig-exit.patch
@@ -0,0 +1,11 @@
+--- a/scripts/kconfig/conf.c
++++ b/scripts/kconfig/conf.c
+@@ -212,6 +212,8 @@ static int conf_sym(struct menu *menu)
+ break;
+ continue;
+ case 0:
++ if (!sym_has_value(sym) && !tty_stdio && getenv("FAIL_ON_UNCONFIGURED"))
++ exit(1);
+ newval = oldval;
+ break;
+ case '?':