Re: [PATCH 1/2] kconfig: Print full defined and depends for multiply-defined symbols

Stefan Hengelein
2015-04-12T15:02:14Z

> Let's focus, for example, on m32r and FRAME_POINTER. The m32r entry for
> that symbol reads:
> config FRAME_POINTER
> bool "Compile the kernel with frame pointers"
> help
> If you say Y here [...]
>
> 0) If one is building for m32r is that all there's to it? If so, "make
> menuconfig"'s search facility is serving the people building for m32r a
> load of crap.
>
> 1) If it's actually more complicated than that I think that anyone
> reading arch/m32r/Kconfig.debug is being duped. Things look simple but
> actually they are quite complicated. I think that's just wrong.
>
> What am I missing here?

If you have a look at the definitions, lib/Kconfig.debug is included
before FRAME_POINTER is defined in m32r and the output in the search
facility looks indeed broken
as one "Defined at" is missing but there are somehow Location entries
(-> Kernel hacking and -> Kernel hacking -> compile time checks
and [...]) for both definitions in a weird order (i think (1) and (2)
might indicate both definitions)

both declarations are valid in kconfig, you have two ways of enabling
the same symbol, one easy without conditions and one with conditions
and both with the same prompt.

The search facility shows the first one that is found, you see the
complicated depends on but i think the text shown might not be
explicit enough to clarify you don't need to satisfy these complicated
conditions to actually choose a value.

Stefan