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 39====================================================================== 40menuconfig 41-------------------------------------------------- 42 43SEARCHING for CONFIG symbols 44 45Searching in menuconfig: 46 47 The Search function searches for kernel configuration symbol 48 names, so you have to know something close to what you are 49 looking for. 50 51 Example: 52 /hotplug 53 This lists all config symbols that contain "hotplug", 54 e.g., HOTPLUG, HOTPLUG_CPU, MEMORY_HOTPLUG. 55 56 For search help, enter / followed TAB-TAB-TAB (to highlight 57 <Help>) and Enter. This will tell you that you can also use 58 regular expressions (regexes) in the search string, so if you 59 are not interested in MEMORY_HOTPLUG, you could try 60 61 /^hotplug 62 63 64______________________________________________________________________ 65Color Themes for 'menuconfig' 66 67It is possible to select different color themes using the variable 68MENUCONFIG_COLOR. To select a theme use: 69 70 make MENUCONFIG_COLOR=<theme> menuconfig 71 72Available themes are: 73 mono => selects colors suitable for monochrome displays 74 blackbg => selects a color scheme with black background 75 classic => theme with blue background. The classic look 76 bluetitle => a LCD friendly version of classic. (default) 77 78______________________________________________________________________ 79Environment variables in 'menuconfig' 80 81KCONFIG_ALLCONFIG 82-------------------------------------------------- 83(partially based on lkml email from/by Rob Landley, re: miniconfig) 84-------------------------------------------------- 85The allyesconfig/allmodconfig/allnoconfig/randconfig variants can 86also use the environment variable KCONFIG_ALLCONFIG as a flag or a 87filename that contains config symbols that the user requires to be 88set to a specific value. If KCONFIG_ALLCONFIG is used without a 89filename, "make *config" checks for a file named 90"all{yes/mod/no/random}.config" (corresponding to the *config command 91that was used) for symbol values that are to be forced. If this file 92is not found, it checks for a file named "all.config" to contain forced 93values. 94 95This enables you to create "miniature" config (miniconfig) or custom 96config files containing just the config symbols that you are interested 97in. Then the kernel config system generates the full .config file, 98including dependencies of your miniconfig file, based on the miniconfig 99file. 100 101This 'KCONFIG_ALLCONFIG' file is a config file which contains 102(usually a subset of all) preset config symbols. These variable 103settings are still subject to normal dependency checks. 104 105Examples: 106 KCONFIG_ALLCONFIG=custom-notebook.config make allnoconfig 107or 108 KCONFIG_ALLCONFIG=mini.config make allnoconfig 109or 110 make KCONFIG_ALLCONFIG=mini.config allnoconfig 111 112These examples will disable most options (allnoconfig) but enable or 113disable the options that are explicitly listed in the specified 114mini-config files. 115 116KCONFIG_NOSILENTUPDATE 117-------------------------------------------------- 118If this variable has a non-blank value, it prevents silent kernel 119config udpates (requires explicit updates). 120 121KCONFIG_CONFIG 122-------------------------------------------------- 123This environment variable can be used to specify a default kernel config 124file name to override the default name of ".config". 125 126KCONFIG_OVERWRITECONFIG 127-------------------------------------------------- 128If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not 129break symlinks when .config is a symlink to somewhere else. 130 131KCONFIG_NOTIMESTAMP 132-------------------------------------------------- 133If this environment variable exists and is non-null, the timestamp line 134in generated .config files is omitted. 135 136KCONFIG_AUTOCONFIG 137-------------------------------------------------- 138This environment variable can be set to specify the path & name of the 139"auto.conf" file. Its default value is "include/config/auto.conf". 140 141KCONFIG_AUTOHEADER 142-------------------------------------------------- 143This environment variable can be set to specify the path & name of the 144"autoconf.h" (header) file. Its default value is "include/linux/autoconf.h". 145 146______________________________________________________________________ 147menuconfig User Interface Options 148---------------------------------------------------------------------- 149MENUCONFIG_MODE 150-------------------------------------------------- 151This mode shows all sub-menus in one large tree. 152 153Example: 154 MENUCONFIG_MODE=single_menu make menuconfig 155 156====================================================================== 157xconfig 158-------------------------------------------------- 159 160Searching in xconfig: 161 162 The Search function searches for kernel configuration symbol 163 names, so you have to know something close to what you are 164 looking for. 165 166 Example: 167 Ctrl-F hotplug 168 or 169 Menu: File, Search, hotplug 170 171 lists all config symbol entries that contain "hotplug" in 172 the symbol name. In this Search dialog, you may change the 173 config setting for any of the entries that are not grayed out. 174 You can also enter a different search string without having 175 to return to the main menu. 176 177 178====================================================================== 179gconfig 180-------------------------------------------------- 181 182Searching in gconfig: 183 184 None (gconfig isn't maintained as well as xconfig or menuconfig); 185 however, gconfig does have a few more viewing choices than 186 xconfig does. 187 188### 189