Commit Graph

5 Commits

Author SHA1 Message Date
Nicolas Pitre
e7ccc34478 config: fix relational operators for bool and tristate symbols
Since commit 31847b67bec0 ("kconfig: allow use of relations other than
(in)equality") it is possible to use relational operators in Kconfig
statements. However, those operators give unexpected results when
applied to bool/tristate values:

	(n < y) = y (correct)
	(m < y) = y (correct)
	(n < m) = n (wrong)

This happens because relational operators process bool and tristate
symbols as strings and m sorts before n. It makes little sense to do a
lexicographical compare on bool and tristate values though.

Documentation/kbuild/kconfig-language.txt states that expression can have
a value of 'n', 'm' or 'y' (or 0, 1, 2 respectively for calculations).
Let's make it so for relational comparisons with bool/tristate
expressions as well and document them. If at least one symbol is an
actual string then the lexicographical compare works just as before.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
[rebased against OpenWrt kconfig, slightly reword commit message]
(backported from upstream 9059a3493efea6492451430c7e2fa0af799a2abb)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>

(cherry picked from commit 75dcaf3d23)
2019-09-04 13:15:26 +02:00
Felix Fietkau
2d7e602381 scripts/config: sync with latest linux upstream
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-03 20:03:35 +02:00
Felix Fietkau
9d5510a500 build: add new menuconfig code based on linux 3.9
SVN-Revision: 36361
2013-04-18 12:05:16 +00:00
Felix Fietkau
5e48d47dfe scripts/config: merge fixes for various issues, including recursive dependency detection/handling (patch by mbm)
SVN-Revision: 28658
2011-10-28 14:09:12 +00:00
Felix Fietkau
60c1f0f64d finally move buildroot-ng to trunk 2016-03-20 17:29:15 +01:00