Re: [PATCH v2 1/5] kconfig: introduce the "imply" keyword

Paul Bolle
2016-10-28T22:09:11Z

On Thu, 2016-10-27 at 23:10 -0400, Nicolas Pitre wrote:
> On Fri, 28 Oct 2016, Paul Bolle wrote:
> > And in your example BAR is bool, right? Does the above get more
> > complicated if BAR would be tristate?
>
> If BAR=m then implying BAZ from FOO=y will force BAZ to y or n,
> bypassing the restriction provided by BAR like "select" does.  This is
> somewhat questionable for "select" to do that, and the code emits a
> warning when "select" bypasses a direct dependency set to n, but not
> when set to m. For now "imply" simply tries to be consistent with
> the "select" behavior.

Side note: yes, one can select a symbol that's missing one or more
dependencies. But since Kconfig has two separate methods to describe
relations (ie, selecting and depending) there's logically the
possibility of conflict. So we need a rule to resolve that conflict.
That rule is: "select" beats "depends on". I don't think that this rule
is less plausible than the opposite rule.

Paul Bolle