diff options
| author | Ulf Magnusson <ulfalizer@gmail.com> | 2018-02-16 10:05:16 +0100 |
|---|---|---|
| committer | Ulf Magnusson <ulfalizer@gmail.com> | 2018-02-16 10:10:34 +0100 |
| commit | 2a88c0cc5707eb0761d87cfd2ca171ce687258fc (patch) | |
| tree | d0fe39e73cb2eda12b8355f7cbc5854e9f5be83d | |
| parent | 30ff778e52d2cd74ce624348c44651982282f07d (diff) | |
Include direct deps. in Symbol/Choice.__str__()
Direct dependencies are significant for 'imply' even if the symbol has
no properties, so they need to be included to get semantically
equivalent output.
Making the direct dependencies clear is helpful in general too, even if
you can usually infer them from the properties they get propagated to.
| -rw-r--r-- | kconfiglib.py | 3 | ||||
| -rw-r--r-- | tests/Kstr | 14 | ||||
| -rw-r--r-- | testsuite.py | 8 |
3 files changed, 25 insertions, 0 deletions
diff --git a/kconfiglib.py b/kconfiglib.py index eaa9af8..a05a079 100644 --- a/kconfiglib.py +++ b/kconfiglib.py @@ -4035,6 +4035,9 @@ def _sym_choice_str(sc): imply_string += " if " + expr_str(cond) indent_add(imply_string) + if node.dep is not sc.kconfig.y: + indent_add("depends on " + expr_str(node.dep)) + if node.help is not None: indent_add("help") for line in node.help.splitlines(): @@ -33,10 +33,24 @@ menuconfig ADVANCED prompt "prompt 3" depends on DEP2 +if DEP3 + +menu "foo" + depends on DEP4 + config ADVANCED help second help text +endmenu + +endif + +config ONLY_DIRECT_DEPS + int + depends on DEP1 + depends on DEP2 + config STRING string default "foo" diff --git a/testsuite.py b/testsuite.py index ad32070..fba897a 100644 --- a/testsuite.py +++ b/testsuite.py @@ -524,12 +524,20 @@ config ADVANCED menuconfig ADVANCED prompt "prompt 3" if DEP2 + depends on DEP2 config ADVANCED + depends on DEP4 && DEP3 help second help text """) + verify_str(c.syms["ONLY_DIRECT_DEPS"], """ +config ONLY_DIRECT_DEPS + int + depends on DEP1 && DEP2 +""") + verify_str(c.syms["STRING"], """ config STRING string |
