From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Linus <torvalds@linux-foundation.org>, Michal Marek <mmarek@suse.cz>
Cc: Andrew Morton <akpm@linux-foundation.org>,
LKML <linux-kernel@vger.kernel.org>,
ppc-dev <linuxppc-dev@lists.ozlabs.org>,
Catalin Marinas <catalin.marinas@arm.com>
Subject: [PATCH] kbuild: Enable building defconfigs from Kconfig files
Date: Tue, 13 Jul 2010 11:43:22 +1000 [thread overview]
Message-ID: <20100713114322.57c8b166.sfr@canb.auug.org.au> (raw)
After this change, doing a "make xxx_defconfig" will check first for
a file called arch/<arch>/configs/Kconfig.xxx and use that to generate
the .config (effectively starting from an allnoconfig). If that file
doesn't exist, it will use arch/<ARCH>/configs/xxx_defconfig as now.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
scripts/kconfig/Makefile | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 deletions(-)
Hi Linus,
Is this more the direction you want to take?
There are still 2 main problems with is approach:
- there are some config options that are globally and
unconditionally enabled that some platforms may not want. The only way
currently to turn them off is to reproduce the config entry with the
different default. I am not sure if we need a wa to turn them off or to
just change them to being neede to be selected by those that do want them.
- we have no way to select options that are neither bool or
tristate to suitable values. Again the only way to do that currently is
to reproduce the config entry with a different default value.
I am currently working towards using this to recreate the PowerPC
defconfigs, but it is a slow process as they have some much stuff enabled
in them and some of it is probably actually not relevant.
This process is made easier by the recent commit "kbuild: Warn on
selecting symbols with unmet direct dependencies" that is in the kbuild
tree (and linux-next).
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 7ea649d..1ab8f45 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -117,9 +117,21 @@ else
$(Q)$< -D arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
endif
-%_defconfig: $(obj)/conf
+configs_dir := $(srctree)/arch/$(SRCARCH)/configs
+# We check a level of sub directories because arch/powerpc
+# has its defconfig files arranged that way
+old_defconfigs := $(patsubst $(configs_dir)/%,%,\
+ $(wildcard $(configs_dir)/*_defconfig) \
+ $(wildcard $(configs_dir)/*/*_defconfig))
+defconfigs := $(patsubst $(configs_dir)/Kconfig.%,%_defconfig,\
+ $(wildcard $(configs_dir)/Kconfig.*))
+
+$(old_defconfigs): %_defconfig: $(obj)/conf
$(Q)$< -D arch/$(SRCARCH)/configs/$@ $(Kconfig)
+$(defconfigs): %_defconfig: $(obj)/conf
+ $(Q)$< -n arch/$(SRCARCH)/configs/Kconfig.$*
+
# Help text used by make help
help:
@echo ' config - Update current config utilising a line-oriented program'
--
1.7.1
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
next reply other threads:[~2010-07-13 1:43 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-13 1:43 Stephen Rothwell [this message]
2010-07-13 20:22 ` Michal Marek
2010-07-14 2:26 ` Grant Likely
2010-07-14 4:04 ` Linus Torvalds
2010-07-14 5:47 ` Grant Likely
2010-07-14 15:37 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100713114322.57c8b166.sfr@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=akpm@linux-foundation.org \
--cc=catalin.marinas@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mmarek@suse.cz \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®