Re: linux-next: build failure after merge of the ext4 tree

Michal Marek
2013-08-16T13:10:43Z

On 11.8.2013 23:39, Yann E. MORIN wrote:
> On 2013-08-09 13:42 +0200, Sam Ravnborg spake thusly:
>> If we drop the special handling of "MODULES" and introduced
>> the following in we may fix it - hopefully:
>>
>> config MODULES
>> option modules
>>
>> The option handling is already in place. It is even documented :-)
>
> Yes, indeed, that one is pretty easy! :-)
>
>> At least we could then drop the sym_lookup here (zconf.y):
>> if (!modules_sym->prop) {
>> struct property *prop;
>>
>> prop = prop_alloc(P_DEFAULT, modules_sym);
>> prop->expr = expr_alloc_symbol(sym_lookup("MODULES", 0));
>> }
>> Without the sym_lookup I think the symbol will not be defined and tus not marked valid.
>
> Sorry, I don't understand what we should do here.
>
> From what I understand, here's what happens:
> - there's no symbol that declared the 'modules' option, so the
> modules_sym->prop is NULL;
> - so we look for the symbol 'MODULES' and use that as the symbol used
> to evaluate if tristates are enabled.
>
> So, now we have 'option modules' added to MODULES, we never enter this
> if() condition.
>
> But what would happen to other projects that do not have a symbol set
> with 'option modules' and no 'MODULES' symbol? Surely, those projects do
> not need tristates, but what should the code do in this case?
>
> So, I don't know what to replace this 'sym_lookup("MODULES", 0)' with.

If the Kconfig files do not provide any symbol with 'option modules',
then set modules_sym to a dummy bool with the value 'n'?

Thanks,
Michal