Re: Kconfig Q: expressing a modularity dependency

From: Pavel Machek
Date: Sat Aug 15 2009 - 12:21:17 EST


Hi!

> /me wrote, four months ago:
> > My current attempts to port the Gigaset driver from isdn4linux
> > to CAPI require the following Kconfig dependency:
> >
> > - If isdn4linux or kernelcapi or both are built as a module
> > (CONFIG_ISDN_I4L=m || CONFIG_ISDN_CAPI=m)
> > then gigaset can only be built as a module
> > (CONFIG_ISDN_DRV_GIGASET depends on m).
> >
> > - If neither isdn4linux nor kernelcapi ar built as a module
> > (CONFIG_ISDN_I4L!=m && CONFIG_ISDN_CAPI!=m),
> > including the case that neither is being built at all
> > (CONFIG_ISDN_I4L=n && CONFIG_ISDN_CAPI=n),
> > then gigaset may be built statically or as a module
> > (all three tristate settings for CONFIG_ISDN_DRV_GIGASET are
> > legal).
> >
> > How is that best expressed in Kconfig?
>
> Judging from the complete silence following that question, the
> answer is, apparently: not at all.
>
> So I'll just put a notice in the help text then, warning people
> not to set CONFIG_ISDN_DRV_GIGASET=y if their ISDN subsystem
> is built as a module. If anybody has a better idea I'll be
> glad to hear it.

That will break randconfig testing, AFAICT.

AFAIK Kconfig supports if statement just fine, so can you just

if something
bool GIGASET
else
tristate GIGASET

?

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/