merge: busybox: update CONFIG_NSLOOKUP in busybox config and respective patch
[oweals/openwrt.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