CONFIGURATION!

This commit is contained in:
2026-08-05 18:25:17 +02:00
parent 770c7ca631
commit ffaf8f258e
155 changed files with 28575 additions and 19 deletions
@@ -0,0 +1,63 @@
# SPDX-License-Identifier: GPL-2.0
# depends on itself
config A
bool "A"
depends on A
# select itself
config B
bool
select B
# depends on each other
config C1
bool "C1"
depends on C2
config C2
bool "C2"
depends on C1
# depends on and select
config D1
bool "D1"
depends on D2
select D2
config D2
bool
# depends on and imply
config E1
bool "E1"
depends on E2
imply E2
config E2
bool "E2"
# property
config F1
bool "F1"
default F2
config F2
bool "F2"
depends on F1
# menu
menu "menu depending on its content"
depends on G
config G
bool "G"
endmenu
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: GPL-2.0
"""
Detect recursive dependency error.
Recursive dependency should be treated as an error.
"""
def test(conf):
assert conf.oldaskconfig() == 1
assert conf.stderr_contains('expected_stderr')
@@ -0,0 +1,38 @@
error: recursive dependency detected!
symbol A depends on A
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol B is selected by B
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol C1 depends on C2
symbol C2 depends on C1
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol D1 depends on D2
symbol D2 is selected by D1
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol E1 depends on E2
symbol E2 is implied by E1
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol F1 default value contains F2
symbol F2 depends on F1
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"
error: recursive dependency detected!
symbol G depends on G
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"