blob: 0ea8f43ab50166e84201b23c43b16877693877ab [file] [log] [blame]
Rob Landley5cf7c2d2006-02-21 06:44:43 +00001#
2# For a description of the syntax of this configuration file,
3# see scripts/kbuild/config-language.txt.
4#
5
6menu "Busybox Library Tuning"
7
Denys Vlasenkod70e0e92010-06-08 12:15:11 +02008INSERT
9
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000010config PASSWORD_MINLEN
"Robert P. J. Day"087b9d62006-07-02 18:35:39 +000011 int "Minimum password length"
12 default 6
13 range 5 32
14 help
15 Minimum allowable password length.
16
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000017config MD5_SIZE_VS_SPEED
Denys Vlasenko7e7e08f2009-07-06 23:24:20 +020018 int "MD5: Trade bytes for speed (0:fast, 3:slow)"
Rob Landley5cf7c2d2006-02-21 06:44:43 +000019 default 2
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
Denis Vlasenko3afac4c2007-06-19 13:46:24 +000031config FEATURE_FAST_TOP
32 bool "Faster /proc scanning code (+100 bytes)"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020033 default y
Denis Vlasenko3afac4c2007-06-19 13:46:24 +000034 help
35 This option makes top (and ps) ~20% faster (or 20% less CPU hungry),
36 but code size is slightly bigger.
37
Denis Vlasenkoa61cb922007-06-19 11:24:47 +000038config FEATURE_ETC_NETWORKS
39 bool "Support for /etc/networks"
40 default n
41 help
42 Enable support for network names in /etc/networks. This is
43 a rarely used feature which allows you to use names
44 instead of IP/mask pairs in route command.
45
Marek Polacekb507cc32010-10-25 03:44:34 +020046config FEATURE_USE_TERMIOS
47 bool "Use termios to manipulate the screen"
48 default y
49 depends on MORE || TOP || POWERTOP
50 help
51 This option allows utilities such as 'more' and 'top' to determine
52 the size of the screen. If you leave this disabled, your utilities
53 that display things on the screen will be especially primitive and
54 will be unable to determine the current screen size, and will be
55 unable to move the cursor.
56
Denis Vlasenko38f63192007-01-22 09:03:07 +000057config FEATURE_EDITING
58 bool "Command line editing"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020059 default y
Denis Vlasenko38f63192007-01-22 09:03:07 +000060 help
Denis Vlasenkoe8a07882007-06-10 15:08:44 +000061 Enable line editing (mainly for shell command line).
62
63config FEATURE_EDITING_MAX_LEN
64 int "Maximum length of input"
65 range 128 8192
66 default 1024
67 depends on FEATURE_EDITING
68 help
69 Line editing code uses on-stack buffers for storage.
70 You may want to decrease this parameter if your target machine
71 benefits from smaller stack usage.
Denis Vlasenko38f63192007-01-22 09:03:07 +000072
Denis Vlasenko38f63192007-01-22 09:03:07 +000073config FEATURE_EDITING_VI
74 bool "vi-style line editing commands"
75 default n
76 depends on FEATURE_EDITING
77 help
Bernhard Reutner-Fischer3e8669f2008-07-22 18:27:53 +000078 Enable vi-style line editing. In shells, this mode can be
Denis Vlasenko38f63192007-01-22 09:03:07 +000079 turned on and off with "set -o vi" and "set +o vi".
80
81config FEATURE_EDITING_HISTORY
82 int "History size"
Denys Vlasenko2c4de5b2011-03-31 13:16:52 +020083 # Don't allow way too big values here, code uses fixed "char *history[N]" struct member
84 range 0 9999
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020085 default 255
Denis Vlasenko38f63192007-01-22 09:03:07 +000086 depends on FEATURE_EDITING
87 help
Denys Vlasenko2c4de5b2011-03-31 13:16:52 +020088 Specify command history size (0 - disable).
Denis Vlasenko38f63192007-01-22 09:03:07 +000089
90config FEATURE_EDITING_SAVEHISTORY
91 bool "History saving"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020092 default y
Denys Vlasenko99862cb2010-09-12 17:34:13 +020093 depends on FEATURE_EDITING
Denis Vlasenko38f63192007-01-22 09:03:07 +000094 help
Denys Vlasenko99862cb2010-09-12 17:34:13 +020095 Enable history saving in shells.
Denis Vlasenko38f63192007-01-22 09:03:07 +000096
97config FEATURE_TAB_COMPLETION
98 bool "Tab completion"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020099 default y
Denis Vlasenko38f63192007-01-22 09:03:07 +0000100 depends on FEATURE_EDITING
101 help
102 Enable tab completion.
103
104config FEATURE_USERNAME_COMPLETION
105 bool "Username completion"
106 default n
107 depends on FEATURE_TAB_COMPLETION
108 help
109 Enable username completion.
110
111config FEATURE_EDITING_FANCY_PROMPT
112 bool "Fancy shell prompts"
Denys Vlasenko5d26df62010-07-16 15:31:38 +0200113 default y
Denis Vlasenko38f63192007-01-22 09:03:07 +0000114 depends on FEATURE_EDITING
115 help
116 Setting this option allows for prompts to use things like \w and
117 \$ and escape codes.
118
Denys Vlasenko020f4062009-05-17 16:44:54 +0200119config FEATURE_EDITING_ASK_TERMINAL
120 bool "Query cursor position from terminal"
121 default n
122 depends on FEATURE_EDITING
123 help
124 Allow usage of "ESC [ 6 n" sequence. Terminal answers back with
125 current cursor position. This information is used to make line
126 editing more robust in some cases.
127 If you are not sure whether your terminals respond to this code
Denys Vlasenkod83bbf42009-10-27 10:47:49 +0100128 correctly, or want to save on code size (about 400 bytes),
Denys Vlasenko020f4062009-05-17 16:44:54 +0200129 then do not turn this option on.
130
Denys Vlasenko2d7b5bf2009-07-05 12:49:29 +0200131config FEATURE_NON_POSIX_CP
132 bool "Non-POSIX, but safer, copying to special nodes"
133 default y
134 help
135 With this option, "cp file symlink" will delete symlink
136 and create a regular file. This does not conform to POSIX,
137 but prevents a symlink attack.
138 Similarly, "cp file device" will not send file's data
Denys Vlasenko2753aae2010-12-30 01:17:03 +0100139 to the device. (To do that, use "cat file >device")
Denys Vlasenko2d7b5bf2009-07-05 12:49:29 +0200140
Denis Vlasenkod5fe8802008-02-13 16:52:00 +0000141config FEATURE_VERBOSE_CP_MESSAGE
142 bool "Give more precise messages when copy fails (cp, mv etc)"
143 default n
144 help
145 Error messages with this feature enabled:
146 $ cp file /does_not_exist/file
147 cp: cannot create '/does_not_exist/file': Path does not exist
148 $ cp file /vmlinuz/file
149 cp: cannot stat '/vmlinuz/file': Path has non-directory component
150 If this feature is not enabled, they will be, respectively:
Denys Vlasenkoa68bd4b2009-10-14 11:52:01 +0200151 cp: cannot create '/does_not_exist/file': No such file or directory
Denis Vlasenkod5fe8802008-02-13 16:52:00 +0000152 cp: cannot stat '/vmlinuz/file': Not a directory
Denis Vlasenkod5fe8802008-02-13 16:52:00 +0000153 This will cost you ~60 bytes.
154
Denis Vlasenko4c139222007-12-02 03:27:42 +0000155config FEATURE_COPYBUF_KB
156 int "Copy buffer size, in kilobytes"
157 range 1 1024
158 default 4
159 help
Denys Vlasenkodf4e16c2011-02-10 06:29:06 +0100160 Size of buffer used by cp, mv, install, wget etc.
Denis Vlasenko4c139222007-12-02 03:27:42 +0000161 Buffers which are 4 kb or less will be allocated on stack.
162 Bigger buffers will be allocated with mmap, with fallback to 4 kb
163 stack buffer if mmap fails.
164
Lauri Kasanen55ae0e92011-01-31 06:27:35 +0100165config FEATURE_SKIP_ROOTFS
166 bool "Skip rootfs in mount table"
167 default y
168 help
169 Ignore rootfs entry in mount table.
170
171 In Linux, kernel has a special filesystem, rootfs, which is initially
172 mounted on /. It contains initramfs data, if kernel is configured
173 to have one. Usually, another file system is mounted over / early
174 in boot process, and therefore most tools which manipulate
175 mount table, such as df, will skip rootfs entry.
176
177 However, some systems do not mount anything on /.
178 If you need to configure busybox for one of these systems,
179 you may find useful to turn this option off to make df show
180 initramfs statistic.
181
182 Otherwise, choose Y.
183
Denis Vlasenko459be352007-06-17 19:09:05 +0000184config MONOTONIC_SYSCALL
185 bool "Use clock_gettime(CLOCK_MONOTONIC) syscall"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +0200186 default n
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100187 select PLATFORM_LINUX
Denis Vlasenko459be352007-06-17 19:09:05 +0000188 help
189 Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring
190 time intervals (time, ping, traceroute etc need this).
191 Probably requires Linux 2.6+. If not selected, gettimeofday
192 will be used instead (which gives wrong results if date/time
193 is reset).
194
Denis Vlasenkofb79a2e2007-07-14 22:07:14 +0000195config IOCTL_HEX2STR_ERROR
196 bool "Use ioctl names rather than hex values in error messages"
197 default y
198 help
199 Use ioctl names rather than hex values in error messages
200 (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this
201 saves about 1400 bytes.
Bernhard Reutner-Fischerf3b778a2008-05-16 16:10:31 +0000202
203config FEATURE_HWIB
204 bool "Support infiniband HW"
205 default y
206 help
207 Support for printing infiniband addresses in
208 network applets.
Denys Vlasenkobcbd37d2009-06-18 13:23:58 +0200209
Rob Landley5cf7c2d2006-02-21 06:44:43 +0000210endmenu