123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- This file contains some assistance for using "make *config".
- Use "make help" to list all of the possible configuration targets.
- The xconfig ('qconf') and menuconfig ('mconf') programs also
- have embedded help text. Be sure to check it for navigation,
- search, and other general help text.
- ======================================================================
- General
- --------------------------------------------------
- New kernel releases often introduce new config symbols. Often more
- important, new kernel releases may rename config symbols. When
- this happens, using a previously working .config file and running
- "make oldconfig" won't necessarily produce a working new kernel
- for you, so you may find that you need to see what NEW kernel
- symbols have been introduced.
- To see a list of new config symbols when using "make oldconfig", use
- cp user/some/old.config .config
- make listnewconfig
- and the config program will list any new symbols, one per line.
- scripts/diffconfig .config.old .config | less
- ______________________________________________________________________
- Environment variables for '*config'
- KCONFIG_CONFIG
- --------------------------------------------------
- This environment variable can be used to specify a default kernel config
- file name to override the default name of ".config".
- KCONFIG_OVERWRITECONFIG
- --------------------------------------------------
- If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not
- break symlinks when .config is a symlink to somewhere else.
- CONFIG_
- --------------------------------------------------
- If you set CONFIG_ in the environment, Kconfig will prefix all symbols
- with its value when saving the configuration, instead of using the default,
- "CONFIG_".
- ______________________________________________________________________
- Environment variables for '{allyes/allmod/allno/rand}config'
- KCONFIG_ALLCONFIG
- --------------------------------------------------
- (partially based on lkml email from/by Rob Landley, re: miniconfig)
- --------------------------------------------------
- The allyesconfig/allmodconfig/allnoconfig/randconfig variants can also
- use the environment variable KCONFIG_ALLCONFIG as a flag or a filename
- that contains config symbols that the user requires to be set to a
- specific value. If KCONFIG_ALLCONFIG is used without a filename where
- KCONFIG_ALLCONFIG == "" or KCONFIG_ALLCONFIG == "1", "make *config"
- checks for a file named "all{yes/mod/no/def/random}.config"
- (corresponding to the *config command that was used) for symbol values
- that are to be forced. If this file is not found, it checks for a
- file named "all.config" to contain forced values.
- This enables you to create "miniature" config (miniconfig) or custom
- config files containing just the config symbols that you are interested
- in. Then the kernel config system generates the full .config file,
- including symbols of your miniconfig file.
- This 'KCONFIG_ALLCONFIG' file is a config file which contains
- (usually a subset of all) preset config symbols. These variable
- settings are still subject to normal dependency checks.
- Examples:
- KCONFIG_ALLCONFIG=custom-notebook.config make allnoconfig
- or
- KCONFIG_ALLCONFIG=mini.config make allnoconfig
- or
- make KCONFIG_ALLCONFIG=mini.config allnoconfig
- These examples will disable most options (allnoconfig) but enable or
- disable the options that are explicitly listed in the specified
- mini-config files.
- ______________________________________________________________________
- Environment variables for 'randconfig'
- KCONFIG_SEED
- --------------------------------------------------
- You can set this to the integer value used to seed the RNG, if you want
- to somehow debug the behaviour of the kconfig parser/frontends.
- If not set, the current time will be used.
- KCONFIG_PROBABILITY
- --------------------------------------------------
- This variable can be used to skew the probabilities. This variable can
- be unset or empty, or set to three different formats:
- KCONFIG_PROBABILITY y:n split y:m:n split
- -----------------------------------------------------------------
- unset or empty 50 : 50 33 : 33 : 34
- N N : 100-N N/2 : N/2 : 100-N
- [1] N:M N+M : 100-(N+M) N : M : 100-(N+M)
- [2] N:M:L N : 100-N M : L : 100-(M+L)
- where N, M and L are integers (in base 10) in the range [0,100], and so
- that:
- [1] N+M is in the range [0,100]
- [2] M+L is in the range [0,100]
- Examples:
- KCONFIG_PROBABILITY=10
- 10% of booleans will be set to 'y', 90% to 'n'
- 5% of tristates will be set to 'y', 5% to 'm', 90% to 'n'
- KCONFIG_PROBABILITY=15:25
- 40% of booleans will be set to 'y', 60% to 'n'
- 15% of tristates will be set to 'y', 25% to 'm', 60% to 'n'
- KCONFIG_PROBABILITY=10:15:15
- 10% of booleans will be set to 'y', 90% to 'n'
- 15% of tristates will be set to 'y', 15% to 'm', 70% to 'n'
- ______________________________________________________________________
- Environment variables for 'silentoldconfig'
- KCONFIG_NOSILENTUPDATE
- --------------------------------------------------
- If this variable has a non-blank value, it prevents silent kernel
- config updates (requires explicit updates).
- KCONFIG_AUTOCONFIG
- --------------------------------------------------
- This environment variable can be set to specify the path & name of the
- "auto.conf" file. Its default value is "include/config/auto.conf".
- KCONFIG_TRISTATE
- --------------------------------------------------
- This environment variable can be set to specify the path & name of the
- "tristate.conf" file. Its default value is "include/config/tristate.conf".
- KCONFIG_AUTOHEADER
- --------------------------------------------------
- This environment variable can be set to specify the path & name of the
- "autoconf.h" (header) file.
- Its default value is "include/generated/autoconf.h".
- ======================================================================
- menuconfig
- --------------------------------------------------
- SEARCHING for CONFIG symbols
- Searching in menuconfig:
- The Search function searches for kernel configuration symbol
- names, so you have to know something close to what you are
- looking for.
- Example:
- /hotplug
- This lists all config symbols that contain "hotplug",
- e.g., HOTPLUG_CPU, MEMORY_HOTPLUG.
- For search help, enter / followed TAB-TAB-TAB (to highlight
- <Help>) and Enter. This will tell you that you can also use
- regular expressions (regexes) in the search string, so if you
- are not interested in MEMORY_HOTPLUG, you could try
- /^hotplug
- When searching, symbols are sorted thus:
- - first, exact matches, sorted alphabetically (an exact match
- is when the search matches the complete symbol name);
- - then, other matches, sorted alphabetically.
- For example: ^ATH.K matches:
- ATH5K ATH9K ATH5K_AHB ATH5K_DEBUG [...] ATH6KL ATH6KL_DEBUG
- [...] ATH9K_AHB ATH9K_BTCOEX_SUPPORT ATH9K_COMMON [...]
- of which only ATH5K and ATH9K match exactly and so are sorted
- first (and in alphabetical order), then come all other symbols,
- sorted in alphabetical order.
- ______________________________________________________________________
- User interface options for 'menuconfig'
- MENUCONFIG_COLOR
- --------------------------------------------------
- It is possible to select different color themes using the variable
- MENUCONFIG_COLOR. To select a theme use:
- make MENUCONFIG_COLOR=<theme> menuconfig
- Available themes are:
- mono => selects colors suitable for monochrome displays
- blackbg => selects a color scheme with black background
- classic => theme with blue background. The classic look
- bluetitle => a LCD friendly version of classic. (default)
- MENUCONFIG_MODE
- --------------------------------------------------
- This mode shows all sub-menus in one large tree.
- Example:
- make MENUCONFIG_MODE=single_menu menuconfig
- ======================================================================
- xconfig
- --------------------------------------------------
- Searching in xconfig:
- The Search function searches for kernel configuration symbol
- names, so you have to know something close to what you are
- looking for.
- Example:
- Ctrl-F hotplug
- or
- Menu: File, Search, hotplug
- lists all config symbol entries that contain "hotplug" in
- the symbol name. In this Search dialog, you may change the
- config setting for any of the entries that are not grayed out.
- You can also enter a different search string without having
- to return to the main menu.
- ======================================================================
- gconfig
- --------------------------------------------------
- Searching in gconfig:
- None (gconfig isn't maintained as well as xconfig or menuconfig);
- however, gconfig does have a few more viewing choices than
- xconfig does.
- ###
|