Commit 8ca5297e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull Kconfig updates from Masahiro Yamada:

 - Change 'option defconfig' to the environment variable
   KCONFIG_DEFCONFIG_LIST

 - Refactor tinyconfig without using allnoconfig_y

 - Remove 'option allnoconfig_y' syntax

 - Change 'option modules' to 'modules'

 - Do not use /boot/config-* etc. as base config for cross-compilation

 - Fix a search bug in nconf

 - Various code cleanups

* tag 'kconfig-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (34 commits)
  kconfig: refactor .gitignore
  kconfig: highlight xconfig 'comment' lines with '***'
  kconfig: highlight gconfig 'comment' lines with '***'
  kconfig: gconf: remove unused code
  kconfig: remove unused PACKAGE definition
  kconfig: nconf: stop endless search loops
  kconfig: split menu.c out of parser.y
  kconfig: nconf: refactor in print_in_middle()
  kconfig: nconf: remove meaningless wattrset() call from show_menu()
  kconfig: nconf: change set_config_filename() to void function
  kconfig: nconf: refactor attributes setup code
  kconfig: nconf: remove unneeded default for menu prompt
  kconfig: nconf: get rid of (void) casts from wattrset() calls
  kconfig: nconf: fix NORMAL attributes
  kconfig: mconf,nconf: remove unneeded '\0' termination after snprintf()
  kconfig: use /boot/config-* etc. as DEFCONFIG_LIST only for native build
  kconfig: change sym_change_count to a boolean flag
  kconfig: nconf: fix core dump when searching in empty menu
  kconfig: lxdialog: A spello fix and a punctuation added
  kconfig: streamline_config.pl: Couple of typo fixes
  ...
parents b0030af5 8ac27f2c
Loading
Loading
Loading
Loading
+4 −19
Original line number Diff line number Diff line
@@ -223,26 +223,11 @@ applicable everywhere (see syntax).
  the indentation level, this means it ends at the first line which has
  a smaller indentation than the first line of the help text.

- misc options: "option" <symbol>[=<value>]

  Various less common options can be defined via this option syntax,
  which can modify the behaviour of the menu entry and its config
  symbol. These options are currently possible:

  - "defconfig_list"
    This declares a list of default entries which can be used when
    looking for the default configuration (which is used when the main
    .config doesn't exists yet.)

  - "modules"
- module attribute: "modules"
  This declares the symbol to be used as the MODULES symbol, which
  enables the third modular state for all config symbols.
  At most one symbol may have the "modules" option set.

  - "allnoconfig_y"
    This declares the symbol as one that should have the value y when
    using "allnoconfig". Used for symbols that hide other symbols.

Menu dependencies
-----------------

+8 −0
Original line number Diff line number Diff line
@@ -41,6 +41,14 @@ KCONFIG_CONFIG
This environment variable can be used to specify a default kernel config
file name to override the default name of ".config".

KCONFIG_DEFCONFIG_LIST
----------------------

This environment variable specifies a list of config files which can be used
as a base configuration in case the .config does not exist yet. Entries in
the list are separated with whitespaces to each other, and the first one
that exists is used.

KCONFIG_OVERWRITECONFIG
-----------------------
If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not
+5 −3
Original line number Diff line number Diff line
@@ -404,12 +404,14 @@ ifeq ($(ARCH),sh64)
       SRCARCH := sh
endif

export cross_compiling :=
ifneq ($(SRCARCH),$(SUBARCH))
cross_compiling := 1
endif

KCONFIG_CONFIG	?= .config
export KCONFIG_CONFIG

# Default file for 'make defconfig'. This may be overridden by arch-Makefile.
export KBUILD_DEFCONFIG := defconfig

# SHELL used by kbuild
CONFIG_SHELL := sh

+1 −11
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
config DEFCONFIG_LIST
	string
	depends on !UML
	option defconfig_list
	default "/lib/modules/$(shell,uname -r)/.config"
	default "/etc/kernel-config"
	default "/boot/config-$(shell,uname -r)"
	default "arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)"

config CC_VERSION_TEXT
	string
	default "$(CC_VERSION_TEXT)"
@@ -1805,7 +1796,6 @@ config DEBUG_RSEQ

config EMBEDDED
	bool "Embedded system"
	option allnoconfig_y
	select EXPERT
	help
	  This option should be enabled if compiling the kernel for
@@ -2080,7 +2070,7 @@ config MODULE_SIG_FORMAT

menuconfig MODULES
	bool "Enable loadable module support"
	option modules
	modules
	help
	  Kernel modules are small pieces of compiled code which can
	  be inserted in the running kernel, rather than being
+1 −0
Original line number Diff line number Diff line
CONFIG_EMBEDDED=y
Loading