[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230725143006.37452-1-falcon@tinylab.org>
Date: Tue, 25 Jul 2023 22:30:06 +0800
From: Zhangjin Wu <falcon@...ylab.org>
To: w@....eu
Cc: arnd@...db.de, falcon@...ylab.org, linux-kernel@...r.kernel.org,
linux-kselftest@...r.kernel.org, linux@...ssschuh.net,
thomas@...ch.de
Subject: Re: [PATCH v1 4/8] selftests/nolibc: add extra config file customize support
Hi, Willy
> 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@...ssschuh.net>
> > Link: https://lore.kernel.org/lkml/67eb70d4-c9ff-4afc-bac7-7f36cc2c81bc@t-8ch.de/
> > Signed-off-by: Zhangjin Wu <falcon@...ylab.org>
> > ---
> > 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, as we discussed in another tinyconfig series, in order to avoid
add more complexity to users, I plan to drop this standalone 'extconfig'
target and move the extra config operations to defconfig target like
this:
defconfig:
$(Q)$(MAKE) -C $(srctree) ARCH=$(ARCH) CC=$(CC) CROSS_COMPILE=$(CROSS_COMPILE) mrproper $(DEFCONFIG) prepare
$(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
This extra config options are really critical to default boot and test, so, it
should be a 'default' config action as the 'defconfig' target originally mean.
Will test carefully about this change, what's your idea?
Thanks,
Zhangjin
> Willy
Powered by blists - more mailing lists