Re: [PATCH] [RFC] kconfig: menuconfig make "Selected by:" readable

Randy Dunlap
2015-01-22T02:23:50Z

On 01/21/15 15:00, Paul Bolle wrote:
> rev_dep expressions can get rather unwieldy, especially if a symbol is
> selected by more than a handful of other symbols. Ie, it's possible to
> have near endless expressions like:
> A && B && !C || D || F && (G || H) || [...]
>
> Chop these expressions into actually readable chunks:
> - A && B && !C
> - D
> - F && (G || H)
> - [...]
>
> Ie, transform the top level "||" tokens into newlines and prepend each
> line with a minus. This makes the "Selected by:" blurb much easier to
> read.

I agree that something like this needs to be done.

After reading these expressions for a few years, I can handle them OK, but
I expect that I look at them more than most people do (with the exception of Paul).

Here is another confusing one, at least to me:
[This is for LBDAF on a 64-biy x86 kernel config.]

Depends on: BLOCK [=y] && !64BIT [=y]

I guess that the value [y,m,n] inside the square brackets is always(?) the
symbol value (64BIT) and not the expression value (!64BIT), but that isn't
always clear IMO.

> Not-yet-signed-off-by: Paul Bolle <pebolle@tiscali.nl>
> ---
> Today I found myself wondering why a certain Kconfig was selected.
> Currently menuconfig's help is of no use in complicated cases. Please
> look at the help of USB or CRYPTO to see what I mean.
>
> This is a _hack_ to show what might be a better way to do this. It
> parses a stringified version of the reverse dependency, and not the
> actual reverse dependecy expression. But that was easier to cobble
> together.
>
> One cool improvement would be to change to minus in front of the
> subexpressions to Y or M for those that actually set the symbol. Anyhow,
> other suggestions and feedback is welcome.
>
> scripts/kconfig/menu.c | 83 ++++++++++++++++++++++++++++++++++++++++++++++++--
> 1 file changed, 81 insertions(+), 2 deletions(-)

--
~Randy