Skip to content
  • Masahiro Yamada's avatar
    kbuild: terminate Kconfig when $(CC) or $(LD) is missing · 902a6898
    Masahiro Yamada authored
    
    
    If the compiler specified by $(CC) is not present, the Kconfig stage
    sprinkles 'not found' messages, then succeeds.
    
      $ make CROSS_COMPILE=foo defconfig
      /bin/sh: 1: foogcc: not found
      /bin/sh: 1: foogcc: not found
      *** Default configuration is based on 'x86_64_defconfig'
      ./scripts/gcc-version.sh: 17: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/gcc-version.sh: 18: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/gcc-version.sh: 19: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/gcc-version.sh: 17: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/gcc-version.sh: 18: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/gcc-version.sh: 19: ./scripts/gcc-version.sh: foogcc: not found
      ./scripts/clang-version.sh: 11: ./scripts/clang-version.sh: foogcc: not found
      ./scripts/gcc-plugin.sh: 11: ./scripts/gcc-plugin.sh: foogcc: not found
      init/Kconfig:16:warning: 'GCC_VERSION': number is invalid
      #
      # configuration written to .config
      #
    
    Terminate parsing files immediately if $(CC) or $(LD) is not found.
    "make *config" will fail more nicely.
    
      $ make CROSS_COMPILE=foo defconfig
      *** Default configuration is based on 'x86_64_defconfig'
      scripts/Kconfig.include:34: compiler 'foogcc' not found
      make[1]: *** [scripts/kconfig/Makefile;82: defconfig] Error 1
      make: *** [Makefile;557: defconfig] Error 2
    
    Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
    902a6898