Re: CML2 design philosophy heads-up

Eric S. Raymond
2001-05-20T15:45:53Z

David Woodhouse <dwmw2@infradead.org>:
> On one hand you have dependencies which are present to make life easier for
> Aunt Tillie, by refraining from confusing her with strange questions to
> which the answer is _probably_ 'no'. Like the question of whether she has
> an IDE controller on her MVME board.
>
> One the other hand, you have the dependencies present in the existing CML1
> configuration, which are _absolute_ dependencies - which specify for example
> that you cannot enable support for PCI peripherals if !CONFIG_PCI, etc.
> These dependencies are there to prevent you from enabling combinations of
> options which are utterly meaningless, and usually won't even compile.

There are no `advisory' dependencies in CML2. They're all absolute.

What you call an `advisory' dependency would be simulated by having a
policy symbol for Aunt Tillie mode and writing constraints like this:

require AUNT_TILLIE implies FOO >= BAR

This is exactly why the CML2 ruleset has EXPERT, WIZARD, and TUNING
policy symbols, as hooks for doing things like this.
--
Eric S. Raymond

No one who's seen it in action can say the phrase "government help" without
either laughing or crying.