Re: [PATCH 2/2] Enable 'make CONFIG_FOO=y oldconfig'

From: Arnaud Lacombe
Date: Wed Aug 10 2011 - 18:33:47 EST


Hi,

On Wed, Aug 10, 2011 at 2:52 PM, David Woodhouse <dwmw2@xxxxxxxxxxxxx> wrote:
> On Wed, 2011-08-10 at 14:40 -0400, Arnaud Lacombe wrote:
>> so, at best, this buggy behavior is ~ 6 years old. Before that, I'd
>> assume that the internal namespace was not accessible by any other
>> mean than the front-ends.
>
> I've been editing .config or doing 's/.*CONFIG_FOO[= ].*/CONFIG_FOO=y/'
> on it for a decade before that. With all the same limitations as
> all.config, and my new CONFIG_FOO=y command line support.
>
> How do *you* quickly, from the command line, enable or disable a single
> option in an existing config?
>
>> > Please, if this offends you then by all means go and fix it. A sane way
>> > of handling dependencies would give a way to say "do what you need to do
>> > in order to enable CONFIG_SATA_MV", and should remove the abomination of
>> > 'select', which was introduced purely to work around that lack.
>> >
>> > But none of that is directly relevant in *this* thread.
>> >
>> to paraphrase you, I'd say, this might looks "cute but might give
>> behavior that people will come to depend on in their scripts and then
>> we take it away again", "that's why I'd kind of like to see it done
>> *once*, *properly*".
>
> That's a reasonable concern, but I think it's misplaced in this case.
> 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:

% make allnoconfig drivers/ata/

do nothing, but works.

% make CONFIG_SATA_MV=y allnoconfig drivers/ata/

tries to build `drivers/ata/sata_mv.o' and miserably fails.

[tested on top of your patches]

- Arnaud

> When we later, hopefully, get proper dependency resolution, that will
> take something that *wasn't* working and make it work. For all.config
> and for the command line overrides (and in other places) at the same
> time.
>
> --
> dwmw2
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/