On Wed, Jul 19, 2023 at 05:14:07AM +0800, Zhangjin Wu wrote: > The default DEFCONFIG_<ARCH> may not always work for all architectures, > some architectures require to add extra kernel config options, this adds > a new 'extconfig' target for this requirement. > > It allows to customize extra kernel config options via the common > common.config and the architecture specific <ARCH>.config, at last > trigger 'allnoconfig' to let them take effect with missing config > options as disabled. > > The scripts/kconfig/merge_config.sh tool is used to merge the extra > config files. > > Suggested-by: Thomas Weißschuh <linux@xxxxxxxxxxxxxx> > Link: https://lore.kernel.org/lkml/67eb70d4-c9ff-4afc-bac7-7f36cc2c81bc@xxxxxxxx/ > Signed-off-by: Zhangjin Wu <falcon@xxxxxxxxxxx> > --- > tools/testing/selftests/nolibc/Makefile | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/tools/testing/selftests/nolibc/Makefile b/tools/testing/selftests/nolibc/Makefile > index f42adef87e12..08a5ca5f418b 100644 > --- a/tools/testing/selftests/nolibc/Makefile > +++ b/tools/testing/selftests/nolibc/Makefile > @@ -39,6 +39,9 @@ DEFCONFIG_s390 = defconfig > DEFCONFIG_loongarch = defconfig > DEFCONFIG = $(DEFCONFIG_$(ARCH)) > > +# extra kernel config files under configs/, include common + architecture specific > +EXTCONFIG = common.config $(ARCH).config > + > # optional tests to run (default = all) > TEST = > > @@ -162,6 +165,10 @@ initramfs: nolibc-test > defconfig: > $(Q)$(MAKE) -C $(srctree) ARCH=$(ARCH) CC=$(CC) CROSS_COMPILE=$(CROSS_COMPILE) mrproper $(DEFCONFIG) prepare > > +extconfig: > + $(Q)$(srctree)/scripts/kconfig/merge_config.sh -O "$(srctree)" -m "$(srctree)/.config" $(foreach c,$(EXTCONFIG),$(wildcard $(CURDIR)/configs/$c)) > + $(Q)$(MAKE) -C $(srctree) ARCH=$(ARCH) CC=$(CC) CROSS_COMPILE=$(CROSS_COMPILE) KCONFIG_ALLCONFIG="$(srctree)/.config" allnoconfig > + Please also mention this entry in the "help" message. Other than that, OK. Willy