On Tue, Feb 20, 2018 at 10:16 AM, Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> wrote: > 2018-02-17 6:41 GMT+09:00 Arnd Bergmann <arnd@xxxxxxxx>: >> Building randconfig kernels frequently leads to build errors from >> drivers that have additional build dependencies, or that we don't >> want to build for compile-testing for some other reason. > > Can you fix the former case? I'm sure it can be done with runtime detection of the tools, not sure if that's a good idea. What we would need here is CONFIG_WANXL_BUILD_FIRMWARE: needs to check for as68k and ld68k CONFIG_AIC79XX_BUILD_FIRMWARE: needs flex, bison and berkeley db. I have all those but it still failed to build for me. STANDALONE now (after the removal of sound/oss) only controls ACPI_CUSTOM_DSDT_FILE, we could remove STANDALONE now I think, it doesn't actually get in the way of anything. For the stable kernels, I'd still need to deal with CONFIG_STANDALONE for the oss drivers. My feeling right now is that we're better off making both STANDALONE and PREVENT_FIRMWARE_BUILD depend on !COMPILE_TEST, and then find a way to force that. >> We already have a couple of compile-time options that can deal with this >> problem, but the complete set is not documented well. We also have a >> method to override some options during 'make randconfig' and a couple >> of other make targets. However, we don't yet combine those two. > > > From this statement, > > kernel/configs/compile_test.config > > would make more sense? My original thought was that the allrandom.config file name is already documented and I just wanted a more consistent behavior, not come up with something new. >> This adds a new allrandom.config file to turn on CONFIG_COMPILE_TEST, >> CONFIG_STANDALONE and CONFIG_PREVENT_FIRMWARE_BUILD for all randconfig >> builds. This in turn disables some other options that we already try >> to avoid in 'allmodconfig' builds and that make no sense in a general >> randconfig build. >> >> Building with 'make randconfig KCONFIG_ALLCONFIG=1' should now always > > > Can you type 'make randconfig compile_test.config', instead? > > (Or 'make allmodconfig compile_test.config' for full-build test) > > > The merge_config has a little bit different logic > from KCONFIG_ALLCONFIG=1, but I guess it leads to the almost same result. I suspect that one difference in a randconfig kernel is that all options that depend on CONFIG_COMPILE_TEST have a 50% lower chance of getting enabled that way, but eventually they will get enabled. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html