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

Paul Bolle
2015-04-11T18:57:02Z

On Sat, 2015-04-11 at 18:36 +0200, Stefan Hengelein wrote:
> If you're reading the dependency list as "what do i have to enable to
> be able to choose a value for FRAME_POINTER" and think, THUMB2_KERNEL
> would be a good choice to leave disabled, you're going to have a bad
> time.
> (The second definition in arm/Kconfig.debug doesn't have a prompt and
> the default has additional conditions)

Please elaborate on "bad time".

> I personally would prefer to
> additionally find the second definition that doesn't a prompt and
> other dependencies instead of adding them to the first entry, but
> that's just my personal preference.

I notice myself getting rather grumpy. (That usually translates to:
"Drop it, and revisit in a few days".) Let me explain.

This is the arm64 entry:
config FRAME_POINTER
bool
default y

This is the hexagon entry
config FRAME_POINTER
def_bool y

This is the m32r entry:
config FRAME_POINTER
bool "Compile the kernel with frame pointers"
help
If you say Y here [...]

And this is the sparc entry:
config FRAME_POINTER
bool
depends on MCOUNT
default y

You'd expect these entries to yield really simple results when doing a
search in menuconfig. But the results show unparseable crap[1]. (And I'm
afraid Gregory's patch would make that even worse. Gregory: please prove
me wrong.)

So to the grumpy me it looks like either:
- menuconfig handles these redefinitions incorrectly in its UI;
- these redefinitions are actually complicated (as in: somehow they
concatenate the dependencies, etc.) and we should probably disallow
them. Because otherwise looking at a Kconfig entry tells you very little
about what is actually going on for the architecture you're interested
in.

What is the grumpy me missing here?

Paul Bolle

[1] The hexagon entry is interesting, probably because it sources
lib/Kconfig.debug _after_ it defined FRAME_POINTER for itself.