CONFIGURATION!
This commit is contained in:
@@ -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"
|
||||
Reference in New Issue
Block a user