Re: [PATCH 2/3] Kconfig: improve handling for all{rand,yes,no,}.config fragments
From: Arnd Bergmann
Date: Tue Feb 20 2018 - 04:59:55 EST
On Tue, Feb 20, 2018 at 10:26 AM, Masahiro Yamada
<yamada.masahiro@xxxxxxxxxxxxx> wrote:
> 2018-02-17 6:41 GMT+09:00 Arnd Bergmann <arnd@xxxxxxxx>:
>> @@ -621,14 +622,24 @@ int main(int ac, char **av)
>> case randconfig: name = "allrandom.config"; break;
>> default: break;
>> }
>> - if (conf_read_simple(name, S_DEF_USER) &&
>> - conf_read_simple("all.config", S_DEF_USER)) {
>> - fprintf(stderr,
>> - _("*** KCONFIG_ALLCONFIG set, but no \"%s\" or \"all.config\" file found\n"),
>> - name);
>> - exit(1);
>> + /* try ./name, arch/$(ARCH)/configs/name and kernel/config/name */
>> + if (!conf_read_simple(name, S_DEF_USER))
>> + break;
>> + arch = getenv("ARCH");
>> + if (arch) {
>> + snprintf(fullname, sizeof(fullname), "arch/%s/configs/%s",
>> + arch, name);
>> + if (!conf_read_simple(fullname, S_DEF_USER))
>> + break;
>> }
>
>
> I am not a big fan of hard-coding the kernel directory structure.
>
> We already do this [1], but I am thinking of kicking this out.
> [1] https://github.com/torvalds/linux/blob/v4.16-rc1/scripts/kconfig/confdata.c#L33
Ok, I see. How about adding a way to detect that we are build-testing
with randconfig instead?
> BTW, I am trying to compiler capability check to Kconfig.
> If this work is done, I hope some "depends on !COMPILE_TEST" will go
> away (but not all?)
> https://patchwork.kernel.org/patch/10225375/
I think most of the 'depends on !COMPILE_TEST' are for cases that
impact compile-testing in some way (more false-positive warnings,
fewer real warnings, much slower compile speed), rather than a lack
of check for a specific compiler version.
We might be able to replace the CONFIG_STANDALONE and
CONFIG_PREVENT_FIRMWARE_BUILD with Kconfig $(shell)
checks if you think that leads to an improvement.
Arnd