public inbox for linux-kbuild@vger.kernel.org
 help / color / mirror / Atom feed
From: David Woodhouse <dwmw2@infradead.org>
To: Arnaud Lacombe <lacombar@gmail.com>
Cc: Michal Marek <mmarek@suse.cz>, "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: Thu, 11 Aug 2011 00:16:49 +0100	[thread overview]
Message-ID: <1313018232.2989.114.camel@i7.infradead.org> (raw)
In-Reply-To: <CACqU3MU2J25q-wWJ8LNcMkwi3uMigz_+0=XcrNiPC0TGiJHZqA@mail.gmail.com>

On Wed, 2011-08-10 at 18:33 -0400, Arnaud Lacombe wrote:
> > We're not enabling anything that we're later going to break. I can't see
> > many people *depending* on the fact that 'make CONFIG_SATA_MV=y
> > oldconfig' actually does *nothing* in some cases.
> >
> you are wrong, you ends up with half-baked compile-time dependency,
> which break the build:

s/*nothing*/nothing useful/, for crying out loud.

The point remains that we're not enabling anything which we're later
going to break. Nobody is going to come to *depend* on this behaviour.

And anyway, this behaviour exists even *before* my patches, as Michal
pointed out in a far more helpful and constructive fashion in 
<CACqU3MU4wJb3ij6skod-ZiM+Q0OMTXNdbJ+qWjJW8VZNEP+x1g@mail.gmail.com>
earlier today.

It's simple enough to fix, too:

diff --git a/Makefile b/Makefile
index 1fc5172..6cc7f7b 100644
--- a/Makefile
+++ b/Makefile
@@ -474,6 +474,9 @@ ifeq ($(KBUILD_EXTMOD),)
         endif
 endif
 
+# This could probably be simpler?
+CONFIG_OVERRIDES := $(patsubst line:%,%,$(filter line:%,$(foreach var, $(filter CONFIG_%,$(.VARIABLES)), $(origin $(var)):$(var))))
+
 ifeq ($(mixed-targets),1)
 # ===========================================================================
 # We're called with mixed targets (*config and build targets).
@@ -507,6 +510,10 @@ else
 # Build targets only - this includes vmlinux, arch specific targets, clean
 # targets and others. In general all targets except *config targets.
 
+ifneq ($(CONFIG_OVERRIDES),)
+$(error Cannot perform build targets with CONFIG symbols overridden)
+endif
+
 ifeq ($(KBUILD_EXTMOD),)
 # Additional helpers built in scripts/
 # Carefully list dependencies so we do not try to build scripts twice


-- 
dwmw2


  reply	other threads:[~2011-08-10 23:17 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
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 [this message]
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=1313018232.2989.114.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