Re: RFC: kconfig select warnings bogus?

Geert Uytterhoeven
2007-05-20T11:07:32Z

On Sun, 20 May 2007, Russell King wrote:
> On Sat, May 19, 2007 at 04:22:39PM -0700, Andrew Morton wrote:
> > On Sun, 20 May 2007 01:05:37 +0200 Adrian Bunk <bunk@stusta.de> wrote:
> > > Look for example at the last one in drivers/input/mouse/Kconfig:
> > >
> > > config MOUSE_ATARI
> > > tristate "Atari mouse"
> > > depends on ATARI
> > > select ATARI_KBD_CORE
> > >
> > > This is perfectly correct (the select'ed symbol is only unavailable when
> > > the dependency can't be fulfilled), and all things to "fix" the warning
> > > will make it worse.
> >
> > If ATARI is unset then we shouldn't be generating the "'select' used by
> > config symbol 'KEYBOARD_ATARI' refers to undefined symbol 'ATARI_KBD_CORE'"
> > warnings, should we?
>
> Playing devils advocate here. What if "ATARI_KBD_CORE" never exists?
> Let's say you run 'make kconfig' and you select the ATARI option. When
> does the lack of ATARI_KBD_CORE get noticed and what is the expected
> result?
>
> Let's put it another way. Given the complexities of the configuration
> system as it is today, if we do not generate a warning at parse time,
> how do we find things like:
>
> config SHARPSL_PM
> bool
> select APM_EMULATION
>
> config PXA_SHARP_C7xx
> bool
> select PXA_SSP
> select SHARPSL_PM
>
> config MACH_CORGI
> bool "Enable Sharp SL-C700 (Corgi) Support"
> depends on PXA_SHARPSL_25x
> select PXA_SHARP_C7xx
>
> and (lets say for the sake of argument) APM_EMULATION were to go away.

It will probably fail to build :-)

> Do we really need an exhaustive set of configuration combinations to
> run through Kconfig to find possible missing symbols? Or do we need a
> Kconfig lint to find them?

Now let's say PXA_SHARPSL_25x goes away (or someone made a typo
in her `depends on')...

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds