Rob Landley | 5cf7c2d | 2006-02-21 06:44:43 +0000 | [diff] [blame] | 1 | # |
| 2 | # For a description of the syntax of this configuration file, |
| 3 | # see scripts/kbuild/config-language.txt. |
| 4 | # |
| 5 | |
| 6 | menu "Busybox Library Tuning" |
| 7 | |
Denys Vlasenko | d70e0e9 | 2010-06-08 12:15:11 +0200 | [diff] [blame] | 8 | INSERT |
| 9 | |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 10 | config PASSWORD_MINLEN |
"Robert P. J. Day" | 087b9d6 | 2006-07-02 18:35:39 +0000 | [diff] [blame] | 11 | int "Minimum password length" |
| 12 | default 6 |
| 13 | range 5 32 |
| 14 | help |
| 15 | Minimum allowable password length. |
| 16 | |
Denys Vlasenko | 522041e | 2011-09-10 13:25:57 +0200 | [diff] [blame] | 17 | config MD5_SMALL |
Denys Vlasenko | 7e7e08f | 2009-07-06 23:24:20 +0200 | [diff] [blame] | 18 | int "MD5: Trade bytes for speed (0:fast, 3:slow)" |
Denys Vlasenko | db70033 | 2015-10-25 20:36:03 +0100 | [diff] [blame] | 19 | default 1 # all "fast or small" options default to small |
Rob Landley | 5cf7c2d | 2006-02-21 06:44:43 +0000 | [diff] [blame] | 20 | range 0 3 |
| 21 | help |
| 22 | Trade binary size versus speed for the md5sum algorithm. |
| 23 | Approximate values running uClibc and hashing |
| 24 | linux-2.4.4.tar.bz2 were: |
| 25 | user times (sec) text size (386) |
| 26 | 0 (fastest) 1.1 6144 |
| 27 | 1 1.4 5392 |
| 28 | 2 3.0 5088 |
| 29 | 3 (smallest) 5.1 4912 |
| 30 | |
Denys Vlasenko | 30a8652 | 2013-01-15 01:12:26 +0100 | [diff] [blame] | 31 | config SHA3_SMALL |
| 32 | int "SHA3: Trade bytes for speed (0:fast, 1:slow)" |
Denys Vlasenko | db70033 | 2015-10-25 20:36:03 +0100 | [diff] [blame] | 33 | default 1 # all "fast or small" options default to small |
Denys Vlasenko | 30a8652 | 2013-01-15 01:12:26 +0100 | [diff] [blame] | 34 | range 0 1 |
| 35 | help |
| 36 | Trade binary size versus speed for the sha3sum algorithm. |
| 37 | SHA3_SMALL=0 compared to SHA3_SMALL=1 (approximate): |
| 38 | 64-bit x86: +270 bytes of code, 45% faster |
| 39 | 32-bit x86: +450 bytes of code, 75% faster |
| 40 | |
Denis Vlasenko | 3afac4c | 2007-06-19 13:46:24 +0000 | [diff] [blame] | 41 | config FEATURE_FAST_TOP |
| 42 | bool "Faster /proc scanning code (+100 bytes)" |
Denys Vlasenko | db70033 | 2015-10-25 20:36:03 +0100 | [diff] [blame] | 43 | default n # all "fast or small" options default to small |
Denis Vlasenko | 3afac4c | 2007-06-19 13:46:24 +0000 | [diff] [blame] | 44 | help |
| 45 | This option makes top (and ps) ~20% faster (or 20% less CPU hungry), |
| 46 | but code size is slightly bigger. |
| 47 | |
Denis Vlasenko | a61cb92 | 2007-06-19 11:24:47 +0000 | [diff] [blame] | 48 | config FEATURE_ETC_NETWORKS |
| 49 | bool "Support for /etc/networks" |
| 50 | default n |
| 51 | help |
| 52 | Enable support for network names in /etc/networks. This is |
| 53 | a rarely used feature which allows you to use names |
| 54 | instead of IP/mask pairs in route command. |
| 55 | |
Marek Polacek | b507cc3 | 2010-10-25 03:44:34 +0200 | [diff] [blame] | 56 | config FEATURE_USE_TERMIOS |
| 57 | bool "Use termios to manipulate the screen" |
| 58 | default y |
| 59 | depends on MORE || TOP || POWERTOP |
| 60 | help |
| 61 | This option allows utilities such as 'more' and 'top' to determine |
| 62 | the size of the screen. If you leave this disabled, your utilities |
| 63 | that display things on the screen will be especially primitive and |
| 64 | will be unable to determine the current screen size, and will be |
| 65 | unable to move the cursor. |
| 66 | |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 67 | config FEATURE_EDITING |
| 68 | bool "Command line editing" |
Denys Vlasenko | 2f32bf8 | 2010-06-06 04:14:28 +0200 | [diff] [blame] | 69 | default y |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 70 | help |
Denis Vlasenko | e8a0788 | 2007-06-10 15:08:44 +0000 | [diff] [blame] | 71 | Enable line editing (mainly for shell command line). |
| 72 | |
| 73 | config FEATURE_EDITING_MAX_LEN |
| 74 | int "Maximum length of input" |
| 75 | range 128 8192 |
| 76 | default 1024 |
| 77 | depends on FEATURE_EDITING |
| 78 | help |
| 79 | Line editing code uses on-stack buffers for storage. |
| 80 | You may want to decrease this parameter if your target machine |
| 81 | benefits from smaller stack usage. |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 82 | |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 83 | config FEATURE_EDITING_VI |
| 84 | bool "vi-style line editing commands" |
| 85 | default n |
| 86 | depends on FEATURE_EDITING |
| 87 | help |
Bernhard Reutner-Fischer | 3e8669f | 2008-07-22 18:27:53 +0000 | [diff] [blame] | 88 | Enable vi-style line editing. In shells, this mode can be |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 89 | turned on and off with "set -o vi" and "set +o vi". |
| 90 | |
| 91 | config FEATURE_EDITING_HISTORY |
| 92 | int "History size" |
Denys Vlasenko | 2c4de5b | 2011-03-31 13:16:52 +0200 | [diff] [blame] | 93 | # Don't allow way too big values here, code uses fixed "char *history[N]" struct member |
| 94 | range 0 9999 |
Denys Vlasenko | 2f32bf8 | 2010-06-06 04:14:28 +0200 | [diff] [blame] | 95 | default 255 |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 96 | depends on FEATURE_EDITING |
| 97 | help |
Denys Vlasenko | 2c4de5b | 2011-03-31 13:16:52 +0200 | [diff] [blame] | 98 | Specify command history size (0 - disable). |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 99 | |
| 100 | config FEATURE_EDITING_SAVEHISTORY |
| 101 | bool "History saving" |
Denys Vlasenko | 2f32bf8 | 2010-06-06 04:14:28 +0200 | [diff] [blame] | 102 | default y |
Denys Vlasenko | 99862cb | 2010-09-12 17:34:13 +0200 | [diff] [blame] | 103 | depends on FEATURE_EDITING |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 104 | help |
Denys Vlasenko | 99862cb | 2010-09-12 17:34:13 +0200 | [diff] [blame] | 105 | Enable history saving in shells. |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 106 | |
Denys Vlasenko | bede215 | 2011-09-04 16:12:33 +0200 | [diff] [blame] | 107 | config FEATURE_EDITING_SAVE_ON_EXIT |
| 108 | bool "Save history on shell exit, not after every command" |
| 109 | default n |
| 110 | depends on FEATURE_EDITING_SAVEHISTORY |
| 111 | help |
| 112 | Save history on shell exit, not after every command. |
| 113 | |
Denys Vlasenko | a669eca | 2011-07-11 07:36:59 +0200 | [diff] [blame] | 114 | config FEATURE_REVERSE_SEARCH |
| 115 | bool "Reverse history search" |
| 116 | default y |
Denys Vlasenko | fe0dc34 | 2015-10-30 21:39:19 +0100 | [diff] [blame^] | 117 | depends on FEATURE_EDITING |
Denys Vlasenko | a669eca | 2011-07-11 07:36:59 +0200 | [diff] [blame] | 118 | help |
| 119 | Enable readline-like Ctrl-R combination for reverse history search. |
| 120 | Increases code by about 0.5k. |
| 121 | |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 122 | config FEATURE_TAB_COMPLETION |
| 123 | bool "Tab completion" |
Denys Vlasenko | 2f32bf8 | 2010-06-06 04:14:28 +0200 | [diff] [blame] | 124 | default y |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 125 | depends on FEATURE_EDITING |
| 126 | help |
| 127 | Enable tab completion. |
| 128 | |
| 129 | config FEATURE_USERNAME_COMPLETION |
| 130 | bool "Username completion" |
| 131 | default n |
| 132 | depends on FEATURE_TAB_COMPLETION |
| 133 | help |
| 134 | Enable username completion. |
| 135 | |
| 136 | config FEATURE_EDITING_FANCY_PROMPT |
| 137 | bool "Fancy shell prompts" |
Denys Vlasenko | 5d26df6 | 2010-07-16 15:31:38 +0200 | [diff] [blame] | 138 | default y |
Denis Vlasenko | 38f6319 | 2007-01-22 09:03:07 +0000 | [diff] [blame] | 139 | depends on FEATURE_EDITING |
| 140 | help |
| 141 | Setting this option allows for prompts to use things like \w and |
| 142 | \$ and escape codes. |
| 143 | |
Denys Vlasenko | 020f406 | 2009-05-17 16:44:54 +0200 | [diff] [blame] | 144 | config FEATURE_EDITING_ASK_TERMINAL |
| 145 | bool "Query cursor position from terminal" |
| 146 | default n |
| 147 | depends on FEATURE_EDITING |
| 148 | help |
| 149 | Allow usage of "ESC [ 6 n" sequence. Terminal answers back with |
| 150 | current cursor position. This information is used to make line |
| 151 | editing more robust in some cases. |
| 152 | If you are not sure whether your terminals respond to this code |
Denys Vlasenko | d83bbf4 | 2009-10-27 10:47:49 +0100 | [diff] [blame] | 153 | correctly, or want to save on code size (about 400 bytes), |
Denys Vlasenko | 020f406 | 2009-05-17 16:44:54 +0200 | [diff] [blame] | 154 | then do not turn this option on. |
| 155 | |
Denys Vlasenko | 2d7b5bf | 2009-07-05 12:49:29 +0200 | [diff] [blame] | 156 | config FEATURE_NON_POSIX_CP |
| 157 | bool "Non-POSIX, but safer, copying to special nodes" |
| 158 | default y |
| 159 | help |
| 160 | With this option, "cp file symlink" will delete symlink |
| 161 | and create a regular file. This does not conform to POSIX, |
| 162 | but prevents a symlink attack. |
| 163 | Similarly, "cp file device" will not send file's data |
Denys Vlasenko | 2753aae | 2010-12-30 01:17:03 +0100 | [diff] [blame] | 164 | to the device. (To do that, use "cat file >device") |
Denys Vlasenko | 2d7b5bf | 2009-07-05 12:49:29 +0200 | [diff] [blame] | 165 | |
Denis Vlasenko | d5fe880 | 2008-02-13 16:52:00 +0000 | [diff] [blame] | 166 | config FEATURE_VERBOSE_CP_MESSAGE |
| 167 | bool "Give more precise messages when copy fails (cp, mv etc)" |
| 168 | default n |
| 169 | help |
| 170 | Error messages with this feature enabled: |
| 171 | $ cp file /does_not_exist/file |
| 172 | cp: cannot create '/does_not_exist/file': Path does not exist |
| 173 | $ cp file /vmlinuz/file |
| 174 | cp: cannot stat '/vmlinuz/file': Path has non-directory component |
| 175 | If this feature is not enabled, they will be, respectively: |
Denys Vlasenko | a68bd4b | 2009-10-14 11:52:01 +0200 | [diff] [blame] | 176 | cp: cannot create '/does_not_exist/file': No such file or directory |
Denis Vlasenko | d5fe880 | 2008-02-13 16:52:00 +0000 | [diff] [blame] | 177 | cp: cannot stat '/vmlinuz/file': Not a directory |
Denis Vlasenko | d5fe880 | 2008-02-13 16:52:00 +0000 | [diff] [blame] | 178 | This will cost you ~60 bytes. |
| 179 | |
Denis Vlasenko | 4c13922 | 2007-12-02 03:27:42 +0000 | [diff] [blame] | 180 | config FEATURE_COPYBUF_KB |
| 181 | int "Copy buffer size, in kilobytes" |
| 182 | range 1 1024 |
| 183 | default 4 |
| 184 | help |
Denys Vlasenko | df4e16c | 2011-02-10 06:29:06 +0100 | [diff] [blame] | 185 | Size of buffer used by cp, mv, install, wget etc. |
Denis Vlasenko | 4c13922 | 2007-12-02 03:27:42 +0000 | [diff] [blame] | 186 | Buffers which are 4 kb or less will be allocated on stack. |
| 187 | Bigger buffers will be allocated with mmap, with fallback to 4 kb |
| 188 | stack buffer if mmap fails. |
| 189 | |
Lauri Kasanen | 55ae0e9 | 2011-01-31 06:27:35 +0100 | [diff] [blame] | 190 | config FEATURE_SKIP_ROOTFS |
| 191 | bool "Skip rootfs in mount table" |
| 192 | default y |
| 193 | help |
| 194 | Ignore rootfs entry in mount table. |
| 195 | |
| 196 | In Linux, kernel has a special filesystem, rootfs, which is initially |
| 197 | mounted on /. It contains initramfs data, if kernel is configured |
| 198 | to have one. Usually, another file system is mounted over / early |
| 199 | in boot process, and therefore most tools which manipulate |
| 200 | mount table, such as df, will skip rootfs entry. |
| 201 | |
| 202 | However, some systems do not mount anything on /. |
| 203 | If you need to configure busybox for one of these systems, |
Bernhard Reutner-Fischer | 74b871f | 2011-06-15 21:00:18 +0200 | [diff] [blame] | 204 | you may find it useful to turn this option off to make df show |
| 205 | initramfs statistics. |
Lauri Kasanen | 55ae0e9 | 2011-01-31 06:27:35 +0100 | [diff] [blame] | 206 | |
| 207 | Otherwise, choose Y. |
| 208 | |
Denis Vlasenko | 459be35 | 2007-06-17 19:09:05 +0000 | [diff] [blame] | 209 | config MONOTONIC_SYSCALL |
| 210 | bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" |
Denys Vlasenko | db70033 | 2015-10-25 20:36:03 +0100 | [diff] [blame] | 211 | default y |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 212 | select PLATFORM_LINUX |
Denis Vlasenko | 459be35 | 2007-06-17 19:09:05 +0000 | [diff] [blame] | 213 | help |
| 214 | Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring |
| 215 | time intervals (time, ping, traceroute etc need this). |
| 216 | Probably requires Linux 2.6+. If not selected, gettimeofday |
| 217 | will be used instead (which gives wrong results if date/time |
| 218 | is reset). |
| 219 | |
Denis Vlasenko | fb79a2e | 2007-07-14 22:07:14 +0000 | [diff] [blame] | 220 | config IOCTL_HEX2STR_ERROR |
| 221 | bool "Use ioctl names rather than hex values in error messages" |
| 222 | default y |
| 223 | help |
| 224 | Use ioctl names rather than hex values in error messages |
| 225 | (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this |
| 226 | saves about 1400 bytes. |
Bernhard Reutner-Fischer | f3b778a | 2008-05-16 16:10:31 +0000 | [diff] [blame] | 227 | |
| 228 | config FEATURE_HWIB |
| 229 | bool "Support infiniband HW" |
| 230 | default y |
| 231 | help |
| 232 | Support for printing infiniband addresses in |
| 233 | network applets. |
Denys Vlasenko | bcbd37d | 2009-06-18 13:23:58 +0200 | [diff] [blame] | 234 | |
Rob Landley | 5cf7c2d | 2006-02-21 06:44:43 +0000 | [diff] [blame] | 235 | endmenu |