• Masahiro Yamada's avatar
    kbuild: use 'include' directive to load auto.conf from top Makefile · 0a16d2e8
    Masahiro Yamada authored
    When you build targets that require the kernel configuration, dot-config
    is set to 1, then the top-level Makefile includes auto.conf.  However,
    Make considers its inclusion is optional because the '-include' directive
    is used here.
    
    If a necessary configuration file is missing for the external module
    building, the following error message is displayed:
    
      ERROR: Kernel configuration is invalid.
             include/generated/autoconf.h or include/config/auto.conf are missing.
             Run 'make oldconfig && make prepare' on kernel src to fix it.
    
    However, Make still continues building; /bin/false let the creation of
    'include/config/auto.config' fail, but Make can ignore the error since
    it is included by the '-include' directive.
    
    I guess the reason of using '-include' directive was to suppress
    the warning when you build the kernel from a pristine source tree:
    
      Makefile:605: include/config/auto.conf: No such file or directory
    
    The previous commit made sure include/config/auto.conf exists after
    the 'make *config' stage.  Now, we can use the 'include' directive
    without showing the warning.
    Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
    0a16d2e8
Makefile 58.2 KB