busybox: update to version 1.25.0
[openwrt/staging/rmilecki.git] / package / utils / busybox / config / libbb / Config.in
1 # DO NOT EDIT. This file is generated from Config.src
2 #
3 # For a description of the syntax of this configuration file,
4 # see scripts/kbuild/config-language.txt.
5 #
6
7 menu "Busybox Library Tuning"
8
9 config BUSYBOX_CONFIG_FEATURE_USE_BSS_TAIL
10 bool "Use the end of BSS page"
11 default BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL
12 help
13 Attempt to reclaim a small unused part of BSS.
14
15 Executables have the following parts:
16 = read-only executable code and constants, also known as "text"
17 = read-write data
18 = non-initialized (zeroed on demand) data, also known as "bss"
19
20 At link time, "text" is padded to a full page. At runtime, all "text"
21 pages are mapped RO and executable.
22 "Data" starts on the next page boundary, but is not padded
23 to a full page at the end. "Bss" starts wherever "data" ends.
24 At runtime, "data" pages are mapped RW and they are file-backed
25 (this includes a small portion of "bss" which may live in the last
26 partial page of "data").
27 Pages which are fully in "bss" are mapped to anonymous memory.
28
29 "Bss" end is usually not page-aligned. There is an unused space
30 in the last page. Linker marks its start with the "_end" symbol.
31
32 This option will attempt to use that space for bb_common_bufsiz1[]
33 array. If it fits after _end, it will be used, and COMMON_BUFSIZE
34 will be enlarged from its guaranteed minimum size of 1 kbyte.
35 This may require recompilation a second time, since value of _end
36 is known only after final link.
37
38 If you are getting a build error like this:
39 appletlib.c:(.text.main+0xd): undefined reference to '_end'
40 disable this option.
41 config BUSYBOX_CONFIG_FEATURE_RTMINMAX
42 bool "Support RTMIN[+n] and RTMAX[-n] signal names"
43 default BUSYBOX_DEFAULT_FEATURE_RTMINMAX
44 help
45 Support RTMIN[+n] and RTMAX[-n] signal names
46 in kill, killall etc. This costs ~250 bytes.
47
48 config BUSYBOX_CONFIG_PASSWORD_MINLEN
49 int "Minimum password length"
50 default BUSYBOX_DEFAULT_PASSWORD_MINLEN
51 range 5 32
52 help
53 Minimum allowable password length.
54
55 config BUSYBOX_CONFIG_MD5_SMALL
56 int "MD5: Trade bytes for speed (0:fast, 3:slow)"
57 default BUSYBOX_DEFAULT_MD5_SMALL # all "fast or small" options default to small
58 range 0 3
59 help
60 Trade binary size versus speed for the md5sum algorithm.
61 Approximate values running uClibc and hashing
62 linux-2.4.4.tar.bz2 were:
63 user times (sec) text size (386)
64 0 (fastest) 1.1 6144
65 1 1.4 5392
66 2 3.0 5088
67 3 (smallest) 5.1 4912
68
69 config BUSYBOX_CONFIG_SHA3_SMALL
70 int "SHA3: Trade bytes for speed (0:fast, 1:slow)"
71 default BUSYBOX_DEFAULT_SHA3_SMALL # all "fast or small" options default to small
72 range 0 1
73 help
74 Trade binary size versus speed for the sha3sum algorithm.
75 SHA3_SMALL=0 compared to SHA3_SMALL=1 (approximate):
76 64-bit x86: +270 bytes of code, 45% faster
77 32-bit x86: +450 bytes of code, 75% faster
78
79 config BUSYBOX_CONFIG_FEATURE_FAST_TOP
80 bool "Faster /proc scanning code (+100 bytes)"
81 default BUSYBOX_DEFAULT_FEATURE_FAST_TOP # all "fast or small" options default to small
82 help
83 This option makes top (and ps) ~20% faster (or 20% less CPU hungry),
84 but code size is slightly bigger.
85
86 config BUSYBOX_CONFIG_FEATURE_ETC_NETWORKS
87 bool "Support for /etc/networks"
88 default BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS
89 help
90 Enable support for network names in /etc/networks. This is
91 a rarely used feature which allows you to use names
92 instead of IP/mask pairs in route command.
93
94 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
95 bool "Use termios to manipulate the screen"
96 default BUSYBOX_DEFAULT_FEATURE_USE_TERMIOS
97 depends on BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TOP || BUSYBOX_CONFIG_POWERTOP
98 help
99 This option allows utilities such as 'more' and 'top' to determine
100 the size of the screen. If you leave this disabled, your utilities
101 that display things on the screen will be especially primitive and
102 will be unable to determine the current screen size, and will be
103 unable to move the cursor.
104
105 config BUSYBOX_CONFIG_FEATURE_EDITING
106 bool "Command line editing"
107 default BUSYBOX_DEFAULT_FEATURE_EDITING
108 help
109 Enable line editing (mainly for shell command line).
110
111 config BUSYBOX_CONFIG_FEATURE_EDITING_MAX_LEN
112 int "Maximum length of input"
113 range 128 8192
114 default BUSYBOX_DEFAULT_FEATURE_EDITING_MAX_LEN
115 depends on BUSYBOX_CONFIG_FEATURE_EDITING
116 help
117 Line editing code uses on-stack buffers for storage.
118 You may want to decrease this parameter if your target machine
119 benefits from smaller stack usage.
120
121 config BUSYBOX_CONFIG_FEATURE_EDITING_VI
122 bool "vi-style line editing commands"
123 default BUSYBOX_DEFAULT_FEATURE_EDITING_VI
124 depends on BUSYBOX_CONFIG_FEATURE_EDITING
125 help
126 Enable vi-style line editing. In shells, this mode can be
127 turned on and off with "set -o vi" and "set +o vi".
128
129 config BUSYBOX_CONFIG_FEATURE_EDITING_HISTORY
130 int "History size"
131 # Don't allow way too big values here, code uses fixed "char *history[N]" struct member
132 range 0 9999
133 default BUSYBOX_DEFAULT_FEATURE_EDITING_HISTORY
134 depends on BUSYBOX_CONFIG_FEATURE_EDITING
135 help
136 Specify command history size (0 - disable).
137
138 config BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY
139 bool "History saving"
140 default BUSYBOX_DEFAULT_FEATURE_EDITING_SAVEHISTORY
141 depends on BUSYBOX_CONFIG_FEATURE_EDITING
142 help
143 Enable history saving in shells.
144
145 config BUSYBOX_CONFIG_FEATURE_EDITING_SAVE_ON_EXIT
146 bool "Save history on shell exit, not after every command"
147 default BUSYBOX_DEFAULT_FEATURE_EDITING_SAVE_ON_EXIT
148 depends on BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY
149 help
150 Save history on shell exit, not after every command.
151
152 config BUSYBOX_CONFIG_FEATURE_REVERSE_SEARCH
153 bool "Reverse history search"
154 default BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH
155 depends on BUSYBOX_CONFIG_FEATURE_EDITING
156 help
157 Enable readline-like Ctrl-R combination for reverse history search.
158 Increases code by about 0.5k.
159
160 config BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION
161 bool "Tab completion"
162 default BUSYBOX_DEFAULT_FEATURE_TAB_COMPLETION
163 depends on BUSYBOX_CONFIG_FEATURE_EDITING
164 help
165 Enable tab completion.
166
167 config BUSYBOX_CONFIG_FEATURE_USERNAME_COMPLETION
168 bool "Username completion"
169 default BUSYBOX_DEFAULT_FEATURE_USERNAME_COMPLETION
170 depends on BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION
171 help
172 Enable username completion.
173
174 config BUSYBOX_CONFIG_FEATURE_EDITING_FANCY_PROMPT
175 bool "Fancy shell prompts"
176 default BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT
177 depends on BUSYBOX_CONFIG_FEATURE_EDITING
178 help
179 Setting this option allows for prompts to use things like \w and
180 \$ and escape codes.
181
182 config BUSYBOX_CONFIG_FEATURE_EDITING_ASK_TERMINAL
183 bool "Query cursor position from terminal"
184 default BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL
185 depends on BUSYBOX_CONFIG_FEATURE_EDITING
186 help
187 Allow usage of "ESC [ 6 n" sequence. Terminal answers back with
188 current cursor position. This information is used to make line
189 editing more robust in some cases.
190 If you are not sure whether your terminals respond to this code
191 correctly, or want to save on code size (about 400 bytes),
192 then do not turn this option on.
193
194 config BUSYBOX_CONFIG_FEATURE_NON_POSIX_CP
195 bool "Non-POSIX, but safer, copying to special nodes"
196 default BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP
197 help
198 With this option, "cp file symlink" will delete symlink
199 and create a regular file. This does not conform to POSIX,
200 but prevents a symlink attack.
201 Similarly, "cp file device" will not send file's data
202 to the device. (To do that, use "cat file >device")
203
204 config BUSYBOX_CONFIG_FEATURE_VERBOSE_CP_MESSAGE
205 bool "Give more precise messages when copy fails (cp, mv etc)"
206 default BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE
207 help
208 Error messages with this feature enabled:
209 $ cp file /does_not_exist/file
210 cp: cannot create '/does_not_exist/file': Path does not exist
211 $ cp file /vmlinuz/file
212 cp: cannot stat '/vmlinuz/file': Path has non-directory component
213 If this feature is not enabled, they will be, respectively:
214 cp: cannot create '/does_not_exist/file': No such file or directory
215 cp: cannot stat '/vmlinuz/file': Not a directory
216 This will cost you ~60 bytes.
217
218 config BUSYBOX_CONFIG_FEATURE_COPYBUF_KB
219 int "Copy buffer size, in kilobytes"
220 range 1 1024
221 default BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB
222 help
223 Size of buffer used by cp, mv, install, wget etc.
224 Buffers which are 4 kb or less will be allocated on stack.
225 Bigger buffers will be allocated with mmap, with fallback to 4 kb
226 stack buffer if mmap fails.
227
228 config BUSYBOX_CONFIG_FEATURE_SKIP_ROOTFS
229 bool "Skip rootfs in mount table"
230 default BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS
231 help
232 Ignore rootfs entry in mount table.
233
234 In Linux, kernel has a special filesystem, rootfs, which is initially
235 mounted on /. It contains initramfs data, if kernel is configured
236 to have one. Usually, another file system is mounted over / early
237 in boot process, and therefore most tools which manipulate
238 mount table, such as df, will skip rootfs entry.
239
240 However, some systems do not mount anything on /.
241 If you need to configure busybox for one of these systems,
242 you may find it useful to turn this option off to make df show
243 initramfs statistics.
244
245 Otherwise, choose Y.
246
247 config BUSYBOX_CONFIG_MONOTONIC_SYSCALL
248 bool "Use clock_gettime(CLOCK_MONOTONIC) syscall"
249 default BUSYBOX_DEFAULT_MONOTONIC_SYSCALL
250 select BUSYBOX_CONFIG_PLATFORM_LINUX
251 help
252 Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring
253 time intervals (time, ping, traceroute etc need this).
254 Probably requires Linux 2.6+. If not selected, gettimeofday
255 will be used instead (which gives wrong results if date/time
256 is reset).
257
258 config BUSYBOX_CONFIG_IOCTL_HEX2STR_ERROR
259 bool "Use ioctl names rather than hex values in error messages"
260 default BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR
261 help
262 Use ioctl names rather than hex values in error messages
263 (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this
264 saves about 1400 bytes.
265
266 config BUSYBOX_CONFIG_FEATURE_HWIB
267 bool "Support infiniband HW"
268 default BUSYBOX_DEFAULT_FEATURE_HWIB
269 help
270 Support for printing infiniband addresses in
271 network applets.
272
273 endmenu