A new behavior on more recent kernels require to always call "make modules_prepare" after *any* Kconfig changes. This is not what a poor mortal would be expecting on a building system, as it should, IMHO, be able to detect and auto-run whatever is needed to use the newer setup. Yet, while this is not solved, let's at least stop the build and produce a warning, to notify the user about that. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx> --- I would still prefer to call "make modules_prepare" directly, on such cases, but just calling "make -C . modules_prepare" doesn't work. So, the next best thing would be to at least print a message and don't try to do a build with a broken auto.conf file. Makefile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Makefile b/Makefile index 70def4907036..492ee2396ab9 100644 --- a/Makefile +++ b/Makefile @@ -1632,6 +1632,11 @@ $(objtree)/Module.symvers: build-dirs := $(KBUILD_EXTMOD) PHONY += modules modules: descend $(objtree)/Module.symvers + @if [ $(KCONFIG_CONFIG) -nt include/config/auto.conf ]; then \ + echo " WARNING: $(KCONFIG_CONFIG) was modified. Need to run:"; \ + echo " $(MAKE) modules_prepare"; \ + exit -1; \ + fi $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost PHONY += modules_install -- 2.25.4