Re: [RFC PATCH] Kconfig: Enable Kconfig fragments to be used for defconfig
From: Grant Likely <hidden>
Date: 2010-07-16 18:21:49
Also in:
linux-arm-kernel, linux-kbuild, lkml
On Fri, Jul 16, 2010 at 12:19 PM, Nicolas Pitre [off-list ref] wrote:
On Fri, 16 Jul 2010, Grant Likely wrote:quoted
On Fri, Jul 16, 2010 at 10:03 AM, Catalin Marinas [off-list ref] wrote:quoted
On Wed, 2010-07-14 at 00:04 +0100, Grant Likely wrote:quoted
- It still doesn't resolve dependencies. =A0A solver would help with =
this.
quoted
quoted
quoted
=A0 For the time being I work around the problem by running the gener=
ated
quoted
quoted
quoted
=A0 config through 'oldconfig' and looking for differences. =A0If the=
files
quoted
quoted
quoted
=A0 differ (ignoring comments and generateconfig_* options) after old=
config,
quoted
quoted
quoted
=A0 then the <board>_defconfig target returns a failure. =A0(but leav=
es the
quoted
quoted
quoted
=A0 new .config intact so the user can resolve it with menuconfig). =
=A0This
quoted
quoted
quoted
=A0 way at least the user is told when a Kconfig fragment is invalid.It's not a solver but I'm pushing a patch to warn on selecting symbols with unmet dependencies so that you can select further symbols (manual solving). The patch is in linux-next but you also can grab it from: http://git.kernel.org/?p=3Dlinux/kernel/git/cmarinas/linux-2.6-cm.git;=
a=3Dcommitdiff_plain;h=3D5d87db2d2a332784bbf2b1ec3e141486f4d41d6f
quoted
sfr and I were talking about your patch the other day. =A0Just warning on incomplete dependencies is enough to make it actually workable for me (without my ugly post-processing step). =A0I was very happy to hear that it is in linux-next. Last missing piece is being able to do "select FOO =3D n", which Stephen is currently working on.Instead of (or in addition to) warning for incomplete dependencies, I'd much prefer if the prerequisites were recursively selected automatically. =A0This way if some options are moved inside a submenu at some point with a config symbol for that subcategory (e.g. CONFIG_NETDEV_1000), or if the subsystem is reorganized into submodules that are required for some driver to work, then my config will still be fine. For example, if I want CONFIG_MTD_CMDLINE_PARTS=3Dy, the system may be smart enough to notice and automatically enable CONFIG_MTD and CONFIG_MTD_PARTITIONS without having to carry those in the defconfig.
I fully agree. However, the warnings make the system work now while we wait for a full solver to be implemented. g.