kconfig: make "Selected by:" and "Implied by:" readable
authorPetr Vorel <petr.vorel@gmail.com>
Thu, 25 Jan 2018 09:46:35 +0000 (10:46 +0100)
committerChristian Lamparter <chunkeey@gmail.com>
Sun, 10 Feb 2019 20:54:42 +0000 (21:54 +0100)
commit51d27eb001f336dd8c665853383ad6f3b2498168
tree5535c56cded14e230249d6497ccafb91ae40e368
parent7b68083e2112e4e729df9378c043fd7a711dcba8
kconfig: make "Selected by:" and "Implied by:" readable

Reverse dependency expressions can get rather unwieldy, especially if
a symbol is selected by more than a handful of other symbols. I.e. 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)
   - [...]

I.e. transform the top level OR tokens into newlines and prepend each
line with a minus. This makes the "Selected by:" and "Implied by:" blurb
much easier to read. This is done only if there is more than one top
level OR. "Depends on:" and "Range :" were deliberately left as they are.

Based on idea from Paul Bolle.

Suggested-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
config/expr.c
config/expr.h
config/menu.c