97b7f1cfc81c8813e746f1f681f5c483aafcbd07
[openwrt/staging/wigyori.git] / package / utils / busybox / config / shell / 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 "Shells"
8
9
10 choice
11 prompt "Choose which shell is aliased to 'sh' name"
12 default BUSYBOX_CONFIG_SH_IS_ASH
13 help
14 Choose which shell you want to be executed by 'sh' alias.
15 The ash shell is the most bash compatible and full featured one.
16
17 # note: cannot use "select ASH" here, it breaks "make allnoconfig"
18 config BUSYBOX_CONFIG_SH_IS_ASH
19 depends on !BUSYBOX_CONFIG_NOMMU
20 bool "ash"
21 help
22 Choose ash to be the shell executed by 'sh' name.
23 The ash code will be built into busybox. If you don't select
24 "ash" choice (CONFIG_ASH), this shell may only be invoked by
25 the name 'sh' (and not 'ash').
26
27 config BUSYBOX_CONFIG_SH_IS_HUSH
28 bool "hush"
29 help
30 Choose hush to be the shell executed by 'sh' name.
31 The hush code will be built into busybox. If you don't select
32 "hush" choice (CONFIG_HUSH), this shell may only be invoked by
33 the name 'sh' (and not 'hush').
34
35 config BUSYBOX_CONFIG_SH_IS_NONE
36 bool "none"
37
38 endchoice
39
40 choice
41 prompt "Choose which shell is aliased to 'bash' name"
42 default BUSYBOX_CONFIG_BASH_IS_NONE
43 help
44 Choose which shell you want to be executed by 'bash' alias.
45 The ash shell is the most bash compatible and full featured one,
46 although compatibility is far from being complete.
47
48 Note that selecting this option does not switch on any bash
49 compatibility code. It merely makes it possible to install
50 /bin/bash (sym)link and run scripts which start with
51 #!/bin/bash line.
52
53 Many systems use it in scripts which use bash-specific features,
54 even simple ones like $RANDOM. Without this option, busybox
55 can't be used for running them because it won't recongnize
56 "bash" as a supported applet name.
57
58 config BUSYBOX_CONFIG_BASH_IS_ASH
59 depends on !BUSYBOX_CONFIG_NOMMU
60 bool "ash"
61 help
62 Choose ash to be the shell executed by 'bash' name.
63 The ash code will be built into busybox. If you don't select
64 "ash" choice (CONFIG_ASH), this shell may only be invoked by
65 the name 'bash' (and not 'ash').
66
67 config BUSYBOX_CONFIG_BASH_IS_HUSH
68 bool "hush"
69 help
70 Choose hush to be the shell executed by 'bash' name.
71 The hush code will be built into busybox. If you don't select
72 "hush" choice (CONFIG_HUSH), this shell may only be invoked by
73 the name 'bash' (and not 'hush').
74
75 config BUSYBOX_CONFIG_BASH_IS_NONE
76 bool "none"
77
78 endchoice
79
80
81 config BUSYBOX_CONFIG_ASH
82 bool "ash"
83 default BUSYBOX_DEFAULT_ASH
84 depends on !BUSYBOX_CONFIG_NOMMU
85 help
86 Tha 'ash' shell adds about 60k in the default configuration and is
87 the most complete and most pedantically correct shell included with
88 busybox. This shell is actually a derivative of the Debian 'dash'
89 shell (by Herbert Xu), which was created by porting the 'ash' shell
90 (written by Kenneth Almquist) from NetBSD.
91
92 # ash options
93 # note: Don't remove !NOMMU part in the next line; it would break
94 # menuconfig's indenting.
95 if !NOMMU && (BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH)
96
97 config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
98 bool "Optimize for size instead of speed"
99 default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE
100 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
101
102 config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB
103 bool "Use internal glob() implementation"
104 default BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB # Y is bigger, but because of uclibc glob() bug, let Y be default for now
105 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
106 help
107 Do not use glob() function from libc, use internal implementation.
108 Use this if you are getting "glob.h: No such file or directory"
109 or similar build errors.
110 Note that as of now (2017-01), uclibc and musl glob() both have bugs
111 which would break ash if you select N here.
112
113 config BUSYBOX_CONFIG_ASH_BASH_COMPAT
114 bool "bash-compatible extensions"
115 default BUSYBOX_DEFAULT_ASH_BASH_COMPAT
116 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
117
118 config BUSYBOX_CONFIG_ASH_JOB_CONTROL
119 bool "Job control"
120 default BUSYBOX_DEFAULT_ASH_JOB_CONTROL
121 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
122
123 config BUSYBOX_CONFIG_ASH_ALIAS
124 bool "Alias support"
125 default BUSYBOX_DEFAULT_ASH_ALIAS
126 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
127
128 config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
129 bool "Pseudorandom generator and $RANDOM variable"
130 default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT
131 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
132 help
133 Enable pseudorandom generator and dynamic variable "$RANDOM".
134 Each read of "$RANDOM" will generate a new pseudorandom value.
135 You can reset the generator by using a specified start value.
136 After "unset RANDOM" the generator will switch off and this
137 variable will no longer have special treatment.
138
139 config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
140 bool "Expand prompt string"
141 default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT
142 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
143 help
144 $PS# may contain volatile content, such as backquote commands.
145 This option recreates the prompt string from the environment
146 variable each time it is displayed.
147
148 config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT
149 bool "Idle timeout variable $TMOUT"
150 default BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT
151 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
152 help
153 Enable bash-like auto-logout after $TMOUT seconds of idle time.
154
155 config BUSYBOX_CONFIG_ASH_MAIL
156 bool "Check for new mail in interactive shell"
157 default BUSYBOX_DEFAULT_ASH_MAIL
158 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
159 help
160 Enable "check for new mail" function:
161 if set, $MAIL file and $MAILPATH list of files
162 are checked for mtime changes, and "you have mail"
163 message is printed if change is detected.
164
165 config BUSYBOX_CONFIG_ASH_ECHO
166 bool "echo builtin"
167 default BUSYBOX_DEFAULT_ASH_ECHO
168 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
169
170 config BUSYBOX_CONFIG_ASH_PRINTF
171 bool "printf builtin"
172 default BUSYBOX_DEFAULT_ASH_PRINTF
173 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
174
175 config BUSYBOX_CONFIG_ASH_TEST
176 bool "test builtin"
177 default BUSYBOX_DEFAULT_ASH_TEST
178 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
179
180 config BUSYBOX_CONFIG_ASH_HELP
181 bool "help builtin"
182 default BUSYBOX_DEFAULT_ASH_HELP
183 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
184
185 config BUSYBOX_CONFIG_ASH_GETOPTS
186 bool "getopts builtin"
187 default BUSYBOX_DEFAULT_ASH_GETOPTS
188 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
189
190 config BUSYBOX_CONFIG_ASH_CMDCMD
191 bool "command builtin"
192 default BUSYBOX_DEFAULT_ASH_CMDCMD
193 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH
194 help
195 Enable support for the 'command' builtin, which allows
196 you to run the specified command or builtin,
197 even when there is a function with the same name.
198
199 endif # ash options
200 config BUSYBOX_CONFIG_CTTYHACK
201 bool "cttyhack"
202 default BUSYBOX_DEFAULT_CTTYHACK
203 help
204 One common problem reported on the mailing list is the "can't
205 access tty; job control turned off" error message, which typically
206 appears when one tries to use a shell with stdin/stdout on
207 /dev/console.
208 This device is special - it cannot be a controlling tty.
209
210 The proper solution is to use the correct device instead of
211 /dev/console.
212
213 cttyhack provides a "quick and dirty" solution to this problem.
214 It analyzes stdin with various ioctls, trying to determine whether
215 it is a /dev/ttyN or /dev/ttySN (virtual terminal or serial line).
216 On Linux it also checks sysfs for a pointer to the active console.
217 If cttyhack is able to find the real console device, it closes
218 stdin/out/err and reopens that device.
219 Then it executes the given program. Opening the device will make
220 that device a controlling tty. This may require cttyhack
221 to be a session leader.
222
223 Example for /etc/inittab (for busybox init):
224
225 ::respawn:/bin/cttyhack /bin/sh
226
227 Starting an interactive shell from boot shell script:
228
229 setsid cttyhack sh
230
231 Giving controlling tty to shell running with PID 1:
232
233 # exec cttyhack sh
234
235 Without cttyhack, you need to know exact tty name,
236 and do something like this:
237
238 # exec setsid sh -c 'exec sh </dev/tty1 >/dev/tty1 2>&1'
239
240 Starting getty on a controlling tty from a shell script:
241
242 # getty 115200 $(cttyhack)
243 config BUSYBOX_CONFIG_HUSH
244 bool "hush"
245 default BUSYBOX_DEFAULT_HUSH
246 help
247 hush is a small shell (25k). It handles the normal flow control
248 constructs such as if/then/elif/else/fi, for/in/do/done, while loops,
249 case/esac. Redirections, here documents, $((arithmetic))
250 and functions are supported.
251
252 It will compile and work on no-mmu systems.
253
254 It does not handle select, aliases, tilde expansion,
255 &>file and >&file redirection of stdout+stderr.
256
257 config BUSYBOX_CONFIG_HUSH_BASH_COMPAT
258 bool "bash-compatible extensions"
259 default BUSYBOX_DEFAULT_HUSH_BASH_COMPAT
260 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
261
262 config BUSYBOX_CONFIG_HUSH_BRACE_EXPANSION
263 bool "Brace expansion"
264 default BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION
265 depends on BUSYBOX_CONFIG_HUSH_BASH_COMPAT
266 help
267 Enable {abc,def} extension.
268
269 config BUSYBOX_CONFIG_HUSH_INTERACTIVE
270 bool "Interactive mode"
271 default BUSYBOX_DEFAULT_HUSH_INTERACTIVE
272 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
273 help
274 Enable interactive mode (prompt and command editing).
275 Without this, hush simply reads and executes commands
276 from stdin just like a shell script from a file.
277 No prompt, no PS1/PS2 magic shell variables.
278
279 config BUSYBOX_CONFIG_HUSH_SAVEHISTORY
280 bool "Save command history to .hush_history"
281 default BUSYBOX_DEFAULT_HUSH_SAVEHISTORY
282 depends on BUSYBOX_CONFIG_HUSH_INTERACTIVE && BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY
283
284 config BUSYBOX_CONFIG_HUSH_JOB
285 bool "Job control"
286 default BUSYBOX_DEFAULT_HUSH_JOB
287 depends on BUSYBOX_CONFIG_HUSH_INTERACTIVE
288 help
289 Enable job control: Ctrl-Z backgrounds, Ctrl-C interrupts current
290 command (not entire shell), fg/bg builtins work. Without this option,
291 "cmd &" still works by simply spawning a process and immediately
292 prompting for next command (or executing next command in a script),
293 but no separate process group is formed.
294
295 config BUSYBOX_CONFIG_HUSH_TICK
296 bool "Support process substitution"
297 default BUSYBOX_DEFAULT_HUSH_TICK
298 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
299 help
300 Enable `command` and $(command).
301
302 config BUSYBOX_CONFIG_HUSH_IF
303 bool "Support if/then/elif/else/fi"
304 default BUSYBOX_DEFAULT_HUSH_IF
305 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
306
307 config BUSYBOX_CONFIG_HUSH_LOOPS
308 bool "Support for, while and until loops"
309 default BUSYBOX_DEFAULT_HUSH_LOOPS
310 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
311
312 config BUSYBOX_CONFIG_HUSH_CASE
313 bool "Support case ... esac statement"
314 default BUSYBOX_DEFAULT_HUSH_CASE
315 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
316 help
317 Enable case ... esac statement. +400 bytes.
318
319 config BUSYBOX_CONFIG_HUSH_FUNCTIONS
320 bool "Support funcname() { commands; } syntax"
321 default BUSYBOX_DEFAULT_HUSH_FUNCTIONS
322 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
323 help
324 Enable support for shell functions. +800 bytes.
325
326 config BUSYBOX_CONFIG_HUSH_LOCAL
327 bool "local builtin"
328 default BUSYBOX_DEFAULT_HUSH_LOCAL
329 depends on BUSYBOX_CONFIG_HUSH_FUNCTIONS
330 help
331 Enable support for local variables in functions.
332
333 config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT
334 bool "Pseudorandom generator and $RANDOM variable"
335 default BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT
336 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
337 help
338 Enable pseudorandom generator and dynamic variable "$RANDOM".
339 Each read of "$RANDOM" will generate a new pseudorandom value.
340
341 config BUSYBOX_CONFIG_HUSH_MODE_X
342 bool "Support 'hush -x' option and 'set -x' command"
343 default BUSYBOX_DEFAULT_HUSH_MODE_X
344 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
345 help
346 This instructs hush to print commands before execution.
347 Adds ~300 bytes.
348
349 config BUSYBOX_CONFIG_HUSH_ECHO
350 bool "echo builtin"
351 default BUSYBOX_DEFAULT_HUSH_ECHO
352 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
353
354 config BUSYBOX_CONFIG_HUSH_PRINTF
355 bool "printf builtin"
356 default BUSYBOX_DEFAULT_HUSH_PRINTF
357 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
358
359 config BUSYBOX_CONFIG_HUSH_TEST
360 bool "test builtin"
361 default BUSYBOX_DEFAULT_HUSH_TEST
362 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
363
364 config BUSYBOX_CONFIG_HUSH_HELP
365 bool "help builtin"
366 default BUSYBOX_DEFAULT_HUSH_HELP
367 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
368
369 config BUSYBOX_CONFIG_HUSH_EXPORT
370 bool "export builtin"
371 default BUSYBOX_DEFAULT_HUSH_EXPORT
372 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
373
374 config BUSYBOX_CONFIG_HUSH_EXPORT_N
375 bool "Support 'export -n' option"
376 default BUSYBOX_DEFAULT_HUSH_EXPORT_N
377 depends on BUSYBOX_CONFIG_HUSH_EXPORT
378 help
379 export -n unexports variables. It is a bash extension.
380
381 config BUSYBOX_CONFIG_HUSH_KILL
382 bool "kill builtin (supports kill %jobspec)"
383 default BUSYBOX_DEFAULT_HUSH_KILL
384 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
385
386 config BUSYBOX_CONFIG_HUSH_WAIT
387 bool "wait builtin"
388 default BUSYBOX_DEFAULT_HUSH_WAIT
389 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
390
391 config BUSYBOX_CONFIG_HUSH_TRAP
392 bool "trap builtin"
393 default BUSYBOX_DEFAULT_HUSH_TRAP
394 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
395
396 config BUSYBOX_CONFIG_HUSH_TYPE
397 bool "type builtin"
398 default BUSYBOX_DEFAULT_HUSH_TYPE
399 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
400
401 config BUSYBOX_CONFIG_HUSH_READ
402 bool "read builtin"
403 default BUSYBOX_DEFAULT_HUSH_READ
404 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
405
406 config BUSYBOX_CONFIG_HUSH_SET
407 bool "set builtin"
408 default BUSYBOX_DEFAULT_HUSH_SET
409 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
410
411 config BUSYBOX_CONFIG_HUSH_UNSET
412 bool "unset builtin"
413 default BUSYBOX_DEFAULT_HUSH_UNSET
414 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
415
416 config BUSYBOX_CONFIG_HUSH_ULIMIT
417 bool "ulimit builtin"
418 default BUSYBOX_DEFAULT_HUSH_ULIMIT
419 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
420
421 config BUSYBOX_CONFIG_HUSH_UMASK
422 bool "umask builtin"
423 default BUSYBOX_DEFAULT_HUSH_UMASK
424 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
425
426 config BUSYBOX_CONFIG_HUSH_MEMLEAK
427 bool "memleak builtin (debugging)"
428 default BUSYBOX_DEFAULT_HUSH_MEMLEAK
429 depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
430
431 config BUSYBOX_CONFIG_MSH
432 bool "msh (deprecated: aliased to hush)"
433 default BUSYBOX_DEFAULT_MSH
434 select BUSYBOX_CONFIG_HUSH
435 help
436 msh is deprecated and will be removed, please migrate to hush.
437
438
439 comment "Options common to all shells"
440 if ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
441
442 config BUSYBOX_CONFIG_FEATURE_SH_MATH
443 bool "POSIX math support"
444 default BUSYBOX_DEFAULT_FEATURE_SH_MATH
445 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
446 help
447 Enable math support in the shell via $((...)) syntax.
448
449 config BUSYBOX_CONFIG_FEATURE_SH_MATH_64
450 bool "Extend POSIX math support to 64 bit"
451 default BUSYBOX_DEFAULT_FEATURE_SH_MATH_64
452 depends on BUSYBOX_CONFIG_FEATURE_SH_MATH
453 help
454 Enable 64-bit math support in the shell. This will make the shell
455 slightly larger, but will allow computation with very large numbers.
456 This is not in POSIX, so do not rely on this in portable code.
457
458 config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET
459 bool "Hide message on interactive shell startup"
460 default BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET
461 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
462 help
463 Remove the busybox introduction when starting a shell.
464
465 config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE
466 bool "Standalone shell"
467 default BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE
468 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
469 help
470 This option causes busybox shells to use busybox applets
471 in preference to executables in the PATH whenever possible. For
472 example, entering the command 'ifconfig' into the shell would cause
473 busybox to use the ifconfig busybox applet. Specifying the fully
474 qualified executable name, such as '/sbin/ifconfig' will still
475 execute the /sbin/ifconfig executable on the filesystem. This option
476 is generally used when creating a statically linked version of busybox
477 for use as a rescue shell, in the event that you screw up your system.
478
479 This is implemented by re-execing /proc/self/exe (typically)
480 with right parameters.
481
482 However, there are drawbacks: it is problematic in chroot jails
483 without mounted /proc, and ps/top may show command name as 'exe'
484 for applets started this way.
485
486 config BUSYBOX_CONFIG_FEATURE_SH_NOFORK
487 bool "Run 'nofork' applets directly"
488 default BUSYBOX_DEFAULT_FEATURE_SH_NOFORK
489 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
490 help
491 This option causes busybox shells to not execute typical
492 fork/exec/wait sequence, but call <applet>_main directly,
493 if possible. (Sometimes it is not possible: for example,
494 this is not possible in pipes).
495
496 This will be done only for some applets (those which are marked
497 NOFORK in include/applets.h).
498
499 This may significantly speed up some shell scripts.
500
501 This feature is relatively new. Use with care. Report bugs
502 to project mailing list.
503
504 config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE
505 bool "Use $HISTFILESIZE"
506 default BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE
507 depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH
508 help
509 This option makes busybox shells to use $HISTFILESIZE variable
510 to set shell history size. Note that its max value is capped
511 by "History size" setting in library tuning section.
512
513 endif # Options common to all shells
514
515 endmenu