linux/Documentation/kbuild/kconfig.txt
<<
>>
Prefs
   1This file contains some assistance for using "make *config".
   2
   3Use "make help" to list all of the possible configuration targets.
   4
   5The xconfig ('qconf') and menuconfig ('mconf') programs also
   6have embedded help text.  Be sure to check it for navigation,
   7search, and other general help text.
   8
   9======================================================================
  10General
  11--------------------------------------------------
  12
  13New kernel releases often introduce new config symbols.  Often more
  14important, new kernel releases may rename config symbols.  When
  15this happens, using a previously working .config file and running
  16"make oldconfig" won't necessarily produce a working new kernel
  17for you, so you may find that you need to see what NEW kernel
  18symbols have been introduced.
  19
  20To see a list of new config symbols when using "make oldconfig", use
  21
  22        cp user/some/old.config .config
  23        yes "" | make oldconfig >conf.new
  24
  25and the config program will list as (NEW) any new symbols that have
  26unknown values.  Of course, the .config file is also updated with
  27new (default) values, so you can use:
  28
  29        grep "(NEW)" conf.new
  30
  31to see the new config symbols or you can 'diff' the previous and
  32new .config files to see the differences:
  33
  34        diff .config.old .config | less
  35
  36(Yes, we need something better here.)
  37
  38______________________________________________________________________
  39Environment variables for '*config'
  40
  41KCONFIG_CONFIG
  42--------------------------------------------------
  43This environment variable can be used to specify a default kernel config
  44file name to override the default name of ".config".
  45
  46KCONFIG_OVERWRITECONFIG
  47--------------------------------------------------
  48If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not
  49break symlinks when .config is a symlink to somewhere else.
  50
  51KCONFIG_NOTIMESTAMP
  52--------------------------------------------------
  53If this environment variable exists and is non-null, the timestamp line
  54in generated .config files is omitted.
  55
  56______________________________________________________________________
  57Environment variables for '{allyes/allmod/allno/rand}config'
  58
  59KCONFIG_ALLCONFIG
  60--------------------------------------------------
  61(partially based on lkml email from/by Rob Landley, re: miniconfig)
  62--------------------------------------------------
  63The allyesconfig/allmodconfig/allnoconfig/randconfig variants can
  64also use the environment variable KCONFIG_ALLCONFIG as a flag or a
  65filename that contains config symbols that the user requires to be
  66set to a specific value.  If KCONFIG_ALLCONFIG is used without a
  67filename, "make *config" checks for a file named
  68"all{yes/mod/no/random}.config" (corresponding to the *config command
  69that was used) for symbol values that are to be forced.  If this file
  70is not found, it checks for a file named "all.config" to contain forced
  71values.
  72
  73This enables you to create "miniature" config (miniconfig) or custom
  74config files containing just the config symbols that you are interested
  75in.  Then the kernel config system generates the full .config file,
  76including symbols of your miniconfig file.
  77
  78This 'KCONFIG_ALLCONFIG' file is a config file which contains
  79(usually a subset of all) preset config symbols.  These variable
  80settings are still subject to normal dependency checks.
  81
  82Examples:
  83        KCONFIG_ALLCONFIG=custom-notebook.config make allnoconfig
  84or
  85        KCONFIG_ALLCONFIG=mini.config make allnoconfig
  86or
  87        make KCONFIG_ALLCONFIG=mini.config allnoconfig
  88
  89These examples will disable most options (allnoconfig) but enable or
  90disable the options that are explicitly listed in the specified
  91mini-config files.
  92
  93______________________________________________________________________
  94Environment variables for 'silentoldconfig'
  95
  96KCONFIG_NOSILENTUPDATE
  97--------------------------------------------------
  98If this variable has a non-blank value, it prevents silent kernel
  99config udpates (requires explicit updates).
 100
 101KCONFIG_AUTOCONFIG
 102--------------------------------------------------
 103This environment variable can be set to specify the path & name of the
 104"auto.conf" file.  Its default value is "include/config/auto.conf".
 105
 106KCONFIG_AUTOHEADER
 107--------------------------------------------------
 108This environment variable can be set to specify the path & name of the
 109"autoconf.h" (header) file.  Its default value is "include/linux/autoconf.h".
 110
 111
 112======================================================================
 113menuconfig
 114--------------------------------------------------
 115
 116SEARCHING for CONFIG symbols
 117
 118Searching in menuconfig:
 119
 120        The Search function searches for kernel configuration symbol
 121        names, so you have to know something close to what you are
 122        looking for.
 123
 124        Example:
 125                /hotplug
 126                This lists all config symbols that contain "hotplug",
 127                e.g., HOTPLUG, HOTPLUG_CPU, MEMORY_HOTPLUG.
 128
 129        For search help, enter / followed TAB-TAB-TAB (to highlight
 130        <Help>) and Enter.  This will tell you that you can also use
 131        regular expressions (regexes) in the search string, so if you
 132        are not interested in MEMORY_HOTPLUG, you could try
 133
 134                /^hotplug
 135
 136______________________________________________________________________
 137User interface options for 'menuconfig'
 138
 139MENUCONFIG_COLOR
 140--------------------------------------------------
 141It is possible to select different color themes using the variable
 142MENUCONFIG_COLOR.  To select a theme use:
 143
 144        make MENUCONFIG_COLOR=<theme> menuconfig
 145
 146Available themes are:
 147  mono       => selects colors suitable for monochrome displays
 148  blackbg    => selects a color scheme with black background
 149  classic    => theme with blue background. The classic look
 150  bluetitle  => a LCD friendly version of classic. (default)
 151
 152MENUCONFIG_MODE
 153--------------------------------------------------
 154This mode shows all sub-menus in one large tree.
 155
 156Example:
 157        make MENUCONFIG_MODE=single_menu menuconfig
 158
 159
 160======================================================================
 161xconfig
 162--------------------------------------------------
 163
 164Searching in xconfig:
 165
 166        The Search function searches for kernel configuration symbol
 167        names, so you have to know something close to what you are
 168        looking for.
 169
 170        Example:
 171                Ctrl-F hotplug
 172        or
 173                Menu: File, Search, hotplug
 174
 175        lists all config symbol entries that contain "hotplug" in
 176        the symbol name.  In this Search dialog, you may change the
 177        config setting for any of the entries that are not grayed out.
 178        You can also enter a different search string without having
 179        to return to the main menu.
 180
 181
 182======================================================================
 183gconfig
 184--------------------------------------------------
 185
 186Searching in gconfig:
 187
 188        None (gconfig isn't maintained as well as xconfig or menuconfig);
 189        however, gconfig does have a few more viewing choices than
 190        xconfig does.
 191
 192###
 193
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.