Re: [PATCH 1/3] WAN Kconfig: change "depends on HDLC" to "select"
From: Satyam Sharma <hidden>
Date: 2007-05-07 20:49:59
Also in:
lkml
On 5/8/07, Jeff Garzik [off-list ref] wrote:
Satyam Sharma wrote:quoted
Yes, mixing select and depends is a recipe for build disasters. Call me a rabid fanatic, but I would in fact go as far as to say that this whole "select" thing in the Kconfig process is one big BUG, and not a feature. People are lazy by nature and would rather just "select" a dependency for their config option than burden users with several "depends".Tough, the kernel community has voted against you.
Heh ... I guess I appeared a trifle _too_ fanatic there, but I'm not.
That rant against it was actually more about controlling its
{ab-,mis-}use and rampant proliferation (even to cases where it is
inapplicable / avoidable) than removing it altogether. Especially,
when a developer is lazy / wrong and mixes select and depends in the
same dependency chain leading to errors.
It makes far more sense to include a driver during kernel configuration, and have that driver pull in its libraries via 'select'. The lame alternative requires developers to know which libraries they need BEFORE picking their drivers, which is backwards and requires legwork on the part of the kernel developer.
(That bit about a developer _knowing_ which libraries to select manually before selecting a driver is not really true, you can "?" on a config item and get all its "depends" and "select" dependencies anyway -- and it requires more leg work, yes, but then you'll never have build failures either) Still, I don't really disagree w.r.t. "select"ing libraries, as long as we're careful to limit them to _only_ libraries.