Re: [PATCH v2 6/6] [media] Only descend into directory when CONFIG_MEDIA_SUPPORT is set

From: Arnd Bergmann
Date: Thu Jan 05 2017 - 18:13:32 EST


On Thursday, January 5, 2017 4:35:33 PM CET Andrew F. Davis wrote:
> On 01/05/2017 03:42 PM, Arnd Bergmann wrote:
> > On Thursday, January 5, 2017 3:01:58 PM CET Andrew F. Davis wrote:
> >> @@ -109,7 +109,8 @@ obj-$(CONFIG_SERIO) += input/serio/
> >> obj-$(CONFIG_GAMEPORT) += input/gameport/
> >> obj-$(CONFIG_INPUT) += input/
> >> obj-$(CONFIG_RTC_LIB) += rtc/
> >> -obj-y += i2c/ media/
> >> +obj-y += i2c/
> >> +obj-$(CONFIG_MEDIA_SUPPORT) += media/
> >> obj-$(CONFIG_PPS) += pps/
> >> obj-y += ptp/
> >> obj-$(CONFIG_W1) += w1/
> >>
> >
> > This one seems wrong: if CONFIG_MEDIA_SUPPORT=m, but some I2C drivers
> > inside of drivers/media/ are built-in, we will fail to enter the directory,
> > see drivers/media/Makefile.
>
> Not sure if I see this, it looks like everything in drivers/media/
> depends on CONFIG_MEDIA_SUPPORT (directly or indirectly). If
> CONFIG_MEDIA_SUPPORT is =m then all dependents should be locked out of
> being built-in.
>
> Any bool symbol that controls compilation of source that depends on a
> tristate symbol is broken and should be fixed anyway.

I don't think it's this easy, we have a couple of cases where that doesn't
work. I have not looked at the media example in detail, but at least it
looks intentional.

Note that drivers/media is rather creative with expressing dependencies.

Arnd