Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cfd7c612 authored by Eugeniu Rosca's avatar Eugeniu Rosca Committed by Jonathan Corbet
Browse files

kconfig-language: improve menuconfig usage description



Improper menuconfig usage leads to empty menu entries.
zconfdump() is able to reveal some real-life examples:
- menuconfig VFIO_NOIOMMU
- menuconfig RESET_CONTROLLER
- menuconfig SND_ARM

To avoid future occurrences of those, improve the menuconfig syntax
description.

Signed-off-by: default avatarEugeniu Rosca <rosca.eugeniu@gmail.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 22c6bbe4
Loading
Loading
Loading
Loading
+38 −1
Original line number Original line Diff line number Diff line
@@ -274,7 +274,44 @@ menuconfig:


This is similar to the simple config entry above, but it also gives a
This is similar to the simple config entry above, but it also gives a
hint to front ends, that all suboptions should be displayed as a
hint to front ends, that all suboptions should be displayed as a
separate list of options.
separate list of options. To make sure all the suboptions will really
show up under the menuconfig entry and not outside of it, every item
from the <config options> list must depend on the menuconfig symbol.
In practice, this is achieved by using one of the next two constructs:

(1):
menuconfig M
if M
    config C1
    config C2
endif

(2):
menuconfig M
config C1
    depends on M
config C2
    depends on M

In the following examples (3) and (4), C1 and C2 still have the M
dependency, but will not appear under menuconfig M anymore, because
of C0, which doesn't depend on M:

(3):
menuconfig M
    config C0
if M
    config C1
    config C2
endif

(4):
menuconfig M
config C0
config C1
    depends on M
config C2
    depends on M


choices:
choices: