docs: note about select in kconfig-language.txt

A warning note from Sam Ravnborg about kconfig's select evilness,
dependencies and the future (slightly corrected).

Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Jarek Poplawski and committed by
Linus Torvalds
f8a74594 09736bd3

+9
+9
Documentation/kbuild/kconfig-language.txt
··· 98 times, the limit is set to the largest selection. 99 Reverse dependencies can only be used with boolean or tristate 100 symbols. 101 102 - numerical ranges: "range" <symbol> <symbol> ["if" <expr>] 103 This allows to limit the range of possible input values for int
··· 98 times, the limit is set to the largest selection. 99 Reverse dependencies can only be used with boolean or tristate 100 symbols. 101 + Note: 102 + select is evil.... select will by brute force set a symbol 103 + equal to 'y' without visiting the dependencies. So abusing 104 + select you are able to select a symbol FOO even if FOO depends 105 + on BAR that is not set. In general use select only for 106 + non-visible symbols (no promts anywhere) and for symbols with 107 + no dependencies. That will limit the usefulness but on the 108 + other hand avoid the illegal configurations all over. kconfig 109 + should one day warn about such things. 110 111 - numerical ranges: "range" <symbol> <symbol> ["if" <expr>] 112 This allows to limit the range of possible input values for int