mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: David Woodhouse <dwmw2@infradead.org>
To: Michal Marek <mmarek@suse.cz>
Cc: Arnaud Lacombe <lacombar@gmail.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org
Subject: Re: [PATCH 2/2] Enable 'make CONFIG_FOO=y oldconfig'
Date: Wed, 10 Aug 2011 14:07:36 +0100	[thread overview]
Message-ID: <1312981658.2989.39.camel@i7.infradead.org> (raw)
In-Reply-To: <4E4280BA.9050109@suse.cz>

On Wed, 2011-08-10 at 14:59 +0200, Michal Marek wrote:
> I wasn't talking about the env= syntax, but about
> 
> make CONFIG_EXT2_FS=m all
> which makes kbuild visit fs/ext2 even if CONFIG_EXT2_FS is disabled in
> .config. With no update of the configuration or checking the dependencies.
> 
> Hm, actually this would be a problem even if kconfig does read the
> CONFIG_* variables from the environment, because it could result in a
> mismatch if kconfig determines that the variable cannot be set, but make
> still sees it in the environment. So we would have to use 'undefine
> CONFIG_FOO' instead of '# CONFIG_FOO is not set' in
> include/config/auto.conf, to be able to properly support make CONFIG_FOO=y. 

That's always been true; it's *always* been broken like that.

But now we're actually *encouraging* people to start setting
CONFIG_FOO=y in the environment or the make command line, so we should
certainly make it more robust.

It should be simple enough to force a reconfig if CONFIG_* is specified
in the environment.

Actually, while we're at it let's stop just picking it up from the
environment and pick it up *only* if it's overridden in the make flags.

Something like this will list the variables which are overridden on the
command line:

CONFIG_OVERRIDES := $(patsubst line:%,%,$(filter line:%,$(foreach var, $(filter CONFIG_%,$(.VARIABLES)), $(origin $(var)):$(var))))

Then we can make auto.conf.cmd trigger a reconfig if it's non-empty, and
make the kconfig tool allow overrides *only* for those variables
specified in $CONFIG_OVERRIDES... which avoids any worries about "stray"
environment variables too.

I'll see if I can clean the above expression up and do that.
 
-- 
David Woodhouse                            Open Source Technology Centre
David.Woodhouse@intel.com                              Intel Corporation


  reply	other threads:[~2011-08-10 13:08 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1312067499.22074.59.camel@i7.infradead.org>
2011-07-30 23:13 ` [PATCH 1/2] kconfig: Factor out conf_validate_choice_val() function from conf_read_simple() David Woodhouse
2011-07-31  2:17   ` Arnaud Lacombe
2011-07-31 22:21     ` David Woodhouse
2011-07-30 23:14 ` [PATCH 2/2] Enable 'make CONFIG_FOO=y oldconfig' David Woodhouse
2011-07-30 23:44   ` Arnaud Lacombe
2011-07-30 23:53     ` H. Peter Anvin
2011-07-31  0:05       ` Arnaud Lacombe
2011-07-31  0:29         ` H. Peter Anvin
2011-07-31  1:06           ` Arnaud Lacombe
2011-07-31  1:28             ` H. Peter Anvin
2011-07-31  2:09               ` Arnaud Lacombe
2011-07-31  5:21                 ` Arnaud Lacombe
2011-07-31 22:18                 ` David Woodhouse
2011-08-09 15:22                   ` Arnaud Lacombe
2011-07-31  7:33             ` David Woodhouse
2011-07-31 16:37               ` Randy Dunlap
2011-07-31 16:57                 ` David Woodhouse
2011-07-31 17:08                   ` Randy Dunlap
2011-07-31 17:40                     ` David Woodhouse
2011-08-09 14:14         ` Michal Marek
2011-08-09 15:26           ` Arnaud Lacombe
2011-08-10 12:59             ` Michal Marek
2011-08-10 13:07               ` David Woodhouse [this message]
2011-08-10 14:15                 ` Arnaud Lacombe
2011-08-10 14:17                   ` David Woodhouse
2011-08-10 14:34                     ` Arnaud Lacombe
2011-08-10 16:33                       ` David Woodhouse
2011-08-10 17:00                         ` Emmanuel Deloget
2011-08-10 17:52                           ` H. Peter Anvin
2011-08-10 17:44                         ` Arnaud Lacombe
2011-08-10 17:54                           ` H. Peter Anvin
2011-08-10 17:59                           ` David Woodhouse
2011-08-10 18:40                             ` Arnaud Lacombe
2011-08-10 18:52                               ` David Woodhouse
2011-08-10 22:33                                 ` Arnaud Lacombe
2011-08-10 23:16                                   ` David Woodhouse
2011-08-11  3:29                                     ` Arnaud Lacombe
2011-08-11  8:42                                       ` David Woodhouse
2011-08-11  8:58                                         ` Michal Marek
2011-08-11 11:10                                           ` David Woodhouse
2011-08-11 11:15                                             ` Andreas Schwab
2011-08-11 11:40                                               ` David Woodhouse
2011-08-11 11:56                                                 ` Michal Marek
2011-08-11 13:20                                                   ` David Woodhouse
2011-08-11 14:57                                                   ` Arnaud Lacombe
2011-08-11 15:07                                                     ` David Woodhouse
2011-08-11 15:24                                                       ` Michal Marek
2011-08-11 15:50                                                         ` David Woodhouse
2011-08-10 17:01                   ` Randy Dunlap
2011-08-10 17:25                     ` David Woodhouse

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=1312981658.2989.39.camel@i7.infradead.org \
    --to=dwmw2@infradead.org \
    --cc=hpa@zytor.com \
    --cc=lacombar@gmail.com \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmarek@suse.cz \
    /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®