/branches/18.06.1/package/utils/busybox/config/shell/Config.in |
@@ -0,0 +1,578 @@ |
# DO NOT EDIT. This file is generated from Config.src |
# |
# For a description of the syntax of this configuration file, |
# see docs/Kconfig-language.txt. |
# |
|
menu "Shells" |
|
|
choice |
prompt "Choose which shell is aliased to 'sh' name" |
default BUSYBOX_CONFIG_SH_IS_ASH |
help |
Choose which shell you want to be executed by 'sh' alias. |
The ash shell is the most bash compatible and full featured one. |
|
# note: cannot use "select ASH" here, it breaks "make allnoconfig" |
config BUSYBOX_CONFIG_SH_IS_ASH |
depends on !BUSYBOX_CONFIG_NOMMU |
bool "ash" |
help |
Choose ash to be the shell executed by 'sh' name. |
The ash code will be built into busybox. If you don't select |
"ash" choice (CONFIG_ASH), this shell may only be invoked by |
the name 'sh' (and not 'ash'). |
|
config BUSYBOX_CONFIG_SH_IS_HUSH |
bool "hush" |
help |
Choose hush to be the shell executed by 'sh' name. |
The hush code will be built into busybox. If you don't select |
"hush" choice (CONFIG_HUSH), this shell may only be invoked by |
the name 'sh' (and not 'hush'). |
|
config BUSYBOX_CONFIG_SH_IS_NONE |
bool "none" |
|
endchoice |
|
choice |
prompt "Choose which shell is aliased to 'bash' name" |
default BUSYBOX_CONFIG_BASH_IS_NONE |
help |
Choose which shell you want to be executed by 'bash' alias. |
The ash shell is the most bash compatible and full featured one, |
although compatibility is far from being complete. |
|
Note that selecting this option does not switch on any bash |
compatibility code. It merely makes it possible to install |
/bin/bash (sym)link and run scripts which start with |
#!/bin/bash line. |
|
Many systems use it in scripts which use bash-specific features, |
even simple ones like $RANDOM. Without this option, busybox |
can't be used for running them because it won't recongnize |
"bash" as a supported applet name. |
|
config BUSYBOX_CONFIG_BASH_IS_ASH |
depends on !BUSYBOX_CONFIG_NOMMU |
bool "ash" |
help |
Choose ash to be the shell executed by 'bash' name. |
The ash code will be built into busybox. If you don't select |
"ash" choice (CONFIG_ASH), this shell may only be invoked by |
the name 'bash' (and not 'ash'). |
|
config BUSYBOX_CONFIG_BASH_IS_HUSH |
bool "hush" |
help |
Choose hush to be the shell executed by 'bash' name. |
The hush code will be built into busybox. If you don't select |
"hush" choice (CONFIG_HUSH), this shell may only be invoked by |
the name 'bash' (and not 'hush'). |
|
config BUSYBOX_CONFIG_BASH_IS_NONE |
bool "none" |
|
endchoice |
|
|
config BUSYBOX_CONFIG_ASH |
bool "ash (78 kb)" |
default BUSYBOX_DEFAULT_ASH |
depends on !BUSYBOX_CONFIG_NOMMU |
help |
The most complete and most pedantically correct shell included with |
busybox. This shell is actually a derivative of the Debian 'dash' |
shell (by Herbert Xu), which was created by porting the 'ash' shell |
(written by Kenneth Almquist) from NetBSD. |
|
# ash options |
# note: Don't remove !NOMMU part in the next line; it would break |
# menuconfig's indenting. |
if !NOMMU && (BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH) |
|
config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE |
bool "Optimize for size instead of speed" |
default BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_INTERNAL_GLOB |
bool "Use internal glob() implementation" |
default BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB # Y is bigger, but because of uclibc glob() bug, let Y be default for now |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
Do not use glob() function from libc, use internal implementation. |
Use this if you are getting "glob.h: No such file or directory" |
or similar build errors. |
Note that as of now (2017-01), uclibc and musl glob() both have bugs |
which would break ash if you select N here. |
|
config BUSYBOX_CONFIG_ASH_BASH_COMPAT |
bool "bash-compatible extensions" |
default BUSYBOX_DEFAULT_ASH_BASH_COMPAT |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_BASH_SOURCE_CURDIR |
bool "'source' and '.' builtins search current directory after $PATH" |
default BUSYBOX_DEFAULT_ASH_BASH_SOURCE_CURDIR # do not encourage non-standard behavior |
depends on BUSYBOX_CONFIG_ASH_BASH_COMPAT |
help |
This is not compliant with standards. Avoid if possible. |
|
config BUSYBOX_CONFIG_ASH_BASH_NOT_FOUND_HOOK |
bool "command_not_found_handle hook support" |
default BUSYBOX_DEFAULT_ASH_BASH_NOT_FOUND_HOOK |
depends on BUSYBOX_CONFIG_ASH_BASH_COMPAT |
help |
Enable support for the 'command_not_found_handle' hook function, |
from GNU bash, which allows for alternative command not found |
handling. |
|
config BUSYBOX_CONFIG_ASH_JOB_CONTROL |
bool "Job control" |
default BUSYBOX_DEFAULT_ASH_JOB_CONTROL |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_ALIAS |
bool "Alias support" |
default BUSYBOX_DEFAULT_ASH_ALIAS |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT |
bool "Pseudorandom generator and $RANDOM variable" |
default BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
Enable pseudorandom generator and dynamic variable "$RANDOM". |
Each read of "$RANDOM" will generate a new pseudorandom value. |
You can reset the generator by using a specified start value. |
After "unset RANDOM" the generator will switch off and this |
variable will no longer have special treatment. |
|
config BUSYBOX_CONFIG_ASH_EXPAND_PRMT |
bool "Expand prompt string" |
default BUSYBOX_DEFAULT_ASH_EXPAND_PRMT |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
$PS# may contain volatile content, such as backquote commands. |
This option recreates the prompt string from the environment |
variable each time it is displayed. |
|
config BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT |
bool "Idle timeout variable $TMOUT" |
default BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
Enable bash-like auto-logout after $TMOUT seconds of idle time. |
|
config BUSYBOX_CONFIG_ASH_MAIL |
bool "Check for new mail in interactive shell" |
default BUSYBOX_DEFAULT_ASH_MAIL |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
Enable "check for new mail" function: |
if set, $MAIL file and $MAILPATH list of files |
are checked for mtime changes, and "you have mail" |
message is printed if change is detected. |
|
config BUSYBOX_CONFIG_ASH_ECHO |
bool "echo builtin" |
default BUSYBOX_DEFAULT_ASH_ECHO |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_PRINTF |
bool "printf builtin" |
default BUSYBOX_DEFAULT_ASH_PRINTF |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_TEST |
bool "test builtin" |
default BUSYBOX_DEFAULT_ASH_TEST |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_HELP |
bool "help builtin" |
default BUSYBOX_DEFAULT_ASH_HELP |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_GETOPTS |
bool "getopts builtin" |
default BUSYBOX_DEFAULT_ASH_GETOPTS |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
|
config BUSYBOX_CONFIG_ASH_CMDCMD |
bool "command builtin" |
default BUSYBOX_DEFAULT_ASH_CMDCMD |
depends on BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_SH_IS_ASH || BUSYBOX_CONFIG_BASH_IS_ASH |
help |
Enable support for the 'command' builtin, which allows |
you to run the specified command or builtin, |
even when there is a function with the same name. |
|
endif # ash options |
config BUSYBOX_CONFIG_CTTYHACK |
bool "cttyhack (2.4 kb)" |
default BUSYBOX_DEFAULT_CTTYHACK |
help |
One common problem reported on the mailing list is the "can't |
access tty; job control turned off" error message, which typically |
appears when one tries to use a shell with stdin/stdout on |
/dev/console. |
This device is special - it cannot be a controlling tty. |
|
The proper solution is to use the correct device instead of |
/dev/console. |
|
cttyhack provides a "quick and dirty" solution to this problem. |
It analyzes stdin with various ioctls, trying to determine whether |
it is a /dev/ttyN or /dev/ttySN (virtual terminal or serial line). |
On Linux it also checks sysfs for a pointer to the active console. |
If cttyhack is able to find the real console device, it closes |
stdin/out/err and reopens that device. |
Then it executes the given program. Opening the device will make |
that device a controlling tty. This may require cttyhack |
to be a session leader. |
|
Example for /etc/inittab (for busybox init): |
|
::respawn:/bin/cttyhack /bin/sh |
|
Starting an interactive shell from boot shell script: |
|
setsid cttyhack sh |
|
Giving controlling tty to shell running with PID 1: |
|
# exec cttyhack sh |
|
Without cttyhack, you need to know exact tty name, |
and do something like this: |
|
# exec setsid sh -c 'exec sh </dev/tty1 >/dev/tty1 2>&1' |
|
Starting getty on a controlling tty from a shell script: |
|
# getty 115200 $(cttyhack) |
config BUSYBOX_CONFIG_HUSH |
bool "hush (68 kb)" |
default BUSYBOX_DEFAULT_HUSH |
help |
hush is a small shell. It handles the normal flow control |
constructs such as if/then/elif/else/fi, for/in/do/done, while loops, |
case/esac. Redirections, here documents, $((arithmetic)) |
and functions are supported. |
|
It will compile and work on no-mmu systems. |
|
It does not handle select, aliases, tilde expansion, |
&>file and >&file redirection of stdout+stderr. |
|
config BUSYBOX_CONFIG_HUSH_BASH_COMPAT |
bool "bash-compatible extensions" |
default BUSYBOX_DEFAULT_HUSH_BASH_COMPAT |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_BRACE_EXPANSION |
bool "Brace expansion" |
default BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION |
depends on BUSYBOX_CONFIG_HUSH_BASH_COMPAT |
help |
Enable {abc,def} extension. |
|
config BUSYBOX_CONFIG_HUSH_LINENO_VAR |
bool "$LINENO variable" |
default BUSYBOX_DEFAULT_HUSH_LINENO_VAR |
depends on BUSYBOX_CONFIG_HUSH_BASH_COMPAT |
|
config BUSYBOX_CONFIG_HUSH_BASH_SOURCE_CURDIR |
bool "'source' and '.' builtins search current directory after $PATH" |
default BUSYBOX_DEFAULT_HUSH_BASH_SOURCE_CURDIR # do not encourage non-standard behavior |
depends on BUSYBOX_CONFIG_HUSH_BASH_COMPAT |
help |
This is not compliant with standards. Avoid if possible. |
|
config BUSYBOX_CONFIG_HUSH_INTERACTIVE |
bool "Interactive mode" |
default BUSYBOX_DEFAULT_HUSH_INTERACTIVE |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable interactive mode (prompt and command editing). |
Without this, hush simply reads and executes commands |
from stdin just like a shell script from a file. |
No prompt, no PS1/PS2 magic shell variables. |
|
config BUSYBOX_CONFIG_HUSH_SAVEHISTORY |
bool "Save command history to .hush_history" |
default BUSYBOX_DEFAULT_HUSH_SAVEHISTORY |
depends on BUSYBOX_CONFIG_HUSH_INTERACTIVE && BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY |
|
config BUSYBOX_CONFIG_HUSH_JOB |
bool "Job control" |
default BUSYBOX_DEFAULT_HUSH_JOB |
depends on BUSYBOX_CONFIG_HUSH_INTERACTIVE |
help |
Enable job control: Ctrl-Z backgrounds, Ctrl-C interrupts current |
command (not entire shell), fg/bg builtins work. Without this option, |
"cmd &" still works by simply spawning a process and immediately |
prompting for next command (or executing next command in a script), |
but no separate process group is formed. |
|
config BUSYBOX_CONFIG_HUSH_TICK |
bool "Support command substitution" |
default BUSYBOX_DEFAULT_HUSH_TICK |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable `command` and $(command). |
|
config BUSYBOX_CONFIG_HUSH_IF |
bool "Support if/then/elif/else/fi" |
default BUSYBOX_DEFAULT_HUSH_IF |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_LOOPS |
bool "Support for, while and until loops" |
default BUSYBOX_DEFAULT_HUSH_LOOPS |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_CASE |
bool "Support case ... esac statement" |
default BUSYBOX_DEFAULT_HUSH_CASE |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable case ... esac statement. +400 bytes. |
|
config BUSYBOX_CONFIG_HUSH_FUNCTIONS |
bool "Support funcname() { commands; } syntax" |
default BUSYBOX_DEFAULT_HUSH_FUNCTIONS |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable support for shell functions. +800 bytes. |
|
config BUSYBOX_CONFIG_HUSH_LOCAL |
bool "local builtin" |
default BUSYBOX_DEFAULT_HUSH_LOCAL |
depends on BUSYBOX_CONFIG_HUSH_FUNCTIONS |
help |
Enable support for local variables in functions. |
|
config BUSYBOX_CONFIG_HUSH_RANDOM_SUPPORT |
bool "Pseudorandom generator and $RANDOM variable" |
default BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable pseudorandom generator and dynamic variable "$RANDOM". |
Each read of "$RANDOM" will generate a new pseudorandom value. |
|
config BUSYBOX_CONFIG_HUSH_MODE_X |
bool "Support 'hush -x' option and 'set -x' command" |
default BUSYBOX_DEFAULT_HUSH_MODE_X |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
This instructs hush to print commands before execution. |
Adds ~300 bytes. |
|
config BUSYBOX_CONFIG_HUSH_ECHO |
bool "echo builtin" |
default BUSYBOX_DEFAULT_HUSH_ECHO |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_PRINTF |
bool "printf builtin" |
default BUSYBOX_DEFAULT_HUSH_PRINTF |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_TEST |
bool "test builtin" |
default BUSYBOX_DEFAULT_HUSH_TEST |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_HELP |
bool "help builtin" |
default BUSYBOX_DEFAULT_HUSH_HELP |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_EXPORT |
bool "export builtin" |
default BUSYBOX_DEFAULT_HUSH_EXPORT |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_EXPORT_N |
bool "Support 'export -n' option" |
default BUSYBOX_DEFAULT_HUSH_EXPORT_N |
depends on BUSYBOX_CONFIG_HUSH_EXPORT |
help |
export -n unexports variables. It is a bash extension. |
|
config BUSYBOX_CONFIG_HUSH_READONLY |
bool "readonly builtin" |
default BUSYBOX_DEFAULT_HUSH_READONLY |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
help |
Enable support for read-only variables. |
|
config BUSYBOX_CONFIG_HUSH_KILL |
bool "kill builtin (supports kill %jobspec)" |
default BUSYBOX_DEFAULT_HUSH_KILL |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_WAIT |
bool "wait builtin" |
default BUSYBOX_DEFAULT_HUSH_WAIT |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_COMMAND |
bool "command builtin" |
default BUSYBOX_DEFAULT_HUSH_COMMAND |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_TRAP |
bool "trap builtin" |
default BUSYBOX_DEFAULT_HUSH_TRAP |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_TYPE |
bool "type builtin" |
default BUSYBOX_DEFAULT_HUSH_TYPE |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_TIMES |
bool "times builtin" |
default BUSYBOX_DEFAULT_HUSH_TIMES |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_READ |
bool "read builtin" |
default BUSYBOX_DEFAULT_HUSH_READ |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_SET |
bool "set builtin" |
default BUSYBOX_DEFAULT_HUSH_SET |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_UNSET |
bool "unset builtin" |
default BUSYBOX_DEFAULT_HUSH_UNSET |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_ULIMIT |
bool "ulimit builtin" |
default BUSYBOX_DEFAULT_HUSH_ULIMIT |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_UMASK |
bool "umask builtin" |
default BUSYBOX_DEFAULT_HUSH_UMASK |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_GETOPTS |
bool "getopts builtin" |
default BUSYBOX_DEFAULT_HUSH_GETOPTS |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
config BUSYBOX_CONFIG_HUSH_MEMLEAK |
bool "memleak builtin (debugging)" |
default BUSYBOX_DEFAULT_HUSH_MEMLEAK |
depends on BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_SH_IS_HUSH || BUSYBOX_CONFIG_BASH_IS_HUSH |
|
|
comment "Options common to all shells" |
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 |
|
config BUSYBOX_CONFIG_FEATURE_SH_MATH |
bool "POSIX math support" |
default BUSYBOX_DEFAULT_FEATURE_SH_MATH |
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 |
help |
Enable math support in the shell via $((...)) syntax. |
|
config BUSYBOX_CONFIG_FEATURE_SH_MATH_64 |
bool "Extend POSIX math support to 64 bit" |
default BUSYBOX_DEFAULT_FEATURE_SH_MATH_64 |
depends on BUSYBOX_CONFIG_FEATURE_SH_MATH |
help |
Enable 64-bit math support in the shell. This will make the shell |
slightly larger, but will allow computation with very large numbers. |
This is not in POSIX, so do not rely on this in portable code. |
|
config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET |
bool "Hide message on interactive shell startup" |
default BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET |
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 |
help |
Remove the busybox introduction when starting a shell. |
|
config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE |
bool "Standalone shell" |
default BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE |
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 |
help |
This option causes busybox shells to use busybox applets |
in preference to executables in the PATH whenever possible. For |
example, entering the command 'ifconfig' into the shell would cause |
busybox to use the ifconfig busybox applet. Specifying the fully |
qualified executable name, such as '/sbin/ifconfig' will still |
execute the /sbin/ifconfig executable on the filesystem. This option |
is generally used when creating a statically linked version of busybox |
for use as a rescue shell, in the event that you screw up your system. |
|
This is implemented by re-execing /proc/self/exe (typically) |
with right parameters. |
|
However, there are drawbacks: it is problematic in chroot jails |
without mounted /proc, and ps/top may show command name as 'exe' |
for applets started this way. |
|
config BUSYBOX_CONFIG_FEATURE_SH_NOFORK |
bool "Run 'nofork' applets directly" |
default BUSYBOX_DEFAULT_FEATURE_SH_NOFORK |
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 |
help |
This option causes busybox shells to not execute typical |
fork/exec/wait sequence, but call <applet>_main directly, |
if possible. (Sometimes it is not possible: for example, |
this is not possible in pipes). |
|
This will be done only for some applets (those which are marked |
NOFORK in include/applets.h). |
|
This may significantly speed up some shell scripts. |
|
This feature is relatively new. Use with care. Report bugs |
to project mailing list. |
|
config BUSYBOX_CONFIG_FEATURE_SH_READ_FRAC |
bool "read -t N.NNN support (+110 bytes)" |
default BUSYBOX_DEFAULT_FEATURE_SH_READ_FRAC |
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 |
help |
Enable support for fractional second timeout in read builtin. |
|
config BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE |
bool "Use $HISTFILESIZE" |
default BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE |
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 |
help |
This option makes busybox shells to use $HISTFILESIZE variable |
to set shell history size. Note that its max value is capped |
by "History size" setting in library tuning section. |
|
config BUSYBOX_CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS |
bool "Embed scripts in the binary" |
default BUSYBOX_DEFAULT_FEATURE_SH_EMBEDDED_SCRIPTS |
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 |
help |
Allow scripts to be compressed and embedded in the busybox |
binary. The scripts should be placed in the 'embed' directory |
at build time. Like applets, scripts can be run as |
'busybox SCRIPT ...' or by linking their name to the binary. |
|
This also allows applets to be implemented as scripts: place |
the script in 'applets_sh' and a stub C file containing |
configuration in the appropriate subsystem directory. |
|
endif # Options common to all shells |
|
endmenu |