summaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorDenys Vlasenko2017-01-10 14:58:54 +0100
committerDenys Vlasenko2017-01-10 14:58:54 +0100
commitf560422fa079b07a761a572ca4f9cf287c2cc47e (patch)
tree6962fe92683c37e561363eed6da8b60c09842196 /shell
parentf10f7a21d40d5ce0846414973e88602a59d4580e (diff)
downloadbusybox-f560422fa079b07a761a572ca4f9cf287c2cc47e.zip
busybox-f560422fa079b07a761a572ca4f9cf287c2cc47e.tar.gz
Big cleanup in config help and description
Redundant help texts (one which only repeats the description) are deleted. Descriptions and help texts are trimmed. Some config options are moved, even across menus. No config option _names_ are changed. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell')
-rw-r--r--shell/ash.c85
-rw-r--r--shell/hush.c68
2 files changed, 51 insertions, 102 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 9c46a93..20ed965 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -35,8 +35,6 @@
//config: bool "Optimize for size instead of speed"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Compile ash for reduced size at the price of speed.
//config:
//config:config ASH_INTERNAL_GLOB
//config: bool "Use internal glob() implementation"
@@ -46,6 +44,23 @@
//config: Do not use glob() function from libc, use internal implementation.
//config: Use this if you are getting "glob.h: No such file or directory"
//config: or similar build errors.
+//config: Note that as of now (2017-01), uclibc and musl glob() both have bugs
+//config: which would break ash if you select N here.
+//config:
+//config:config ASH_BASH_COMPAT
+//config: bool "bash-compatible extensions"
+//config: default y
+//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
+//config:
+//config:config ASH_JOB_CONTROL
+//config: bool "Job control"
+//config: default y
+//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
+//config:
+//config:config ASH_ALIAS
+//config: bool "Alias support"
+//config: default y
+//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
//config:
//config:config ASH_RANDOM_SUPPORT
//config: bool "Pseudorandom generator and $RANDOM variable"
@@ -63,88 +78,60 @@
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
//config: help
-//config: "PS#" may contain volatile content, such as backquote commands.
+//config: $PS# may contain volatile content, such as backquote commands.
//config: This option recreates the prompt string from the environment
//config: variable each time it is displayed.
//config:
-//config:config ASH_BASH_COMPAT
-//config: bool "bash-compatible extensions"
-//config: default y
-//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable bash-compatible extensions.
-//config:
//config:config ASH_IDLE_TIMEOUT
-//config: bool "Idle timeout variable"
-//config: default n
-//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enables bash-like auto-logout after $TMOUT seconds of idle time.
-//config:
-//config:config ASH_JOB_CONTROL
-//config: bool "Job control"
-//config: default y
-//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable job control in the ash shell.
-//config:
-//config:config ASH_ALIAS
-//config: bool "Alias support"
+//config: bool "Idle timeout variable $TMOUT"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
//config: help
-//config: Enable alias support in the ash shell.
+//config: Enable bash-like auto-logout after $TMOUT seconds of idle time.
//config:
-//config:config ASH_GETOPTS
-//config: bool "Builtin getopt to parse positional parameters"
+//config:config ASH_MAIL
+//config: bool "Check for new mail in interactive shell"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
//config: help
-//config: Enable support for getopts builtin in ash.
+//config: Enable "check for new mail" function:
+//config: if set, $MAIL file and $MAILPATH list of files
+//config: are checked for mtime changes, and "you have mail"
+//config: message is printed if change is detected.
//config:
//config:config ASH_BUILTIN_ECHO
-//config: bool "Builtin version of 'echo'"
+//config: bool "echo builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable support for echo builtin in ash.
//config:
//config:config ASH_BUILTIN_PRINTF
-//config: bool "Builtin version of 'printf'"
+//config: bool "printf builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable support for printf builtin in ash.
//config:
//config:config ASH_BUILTIN_TEST
-//config: bool "Builtin version of 'test'"
+//config: bool "test builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable support for test builtin in ash.
//config:
//config:config ASH_HELP
//config: bool "help builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable help builtin in ash.
//config:
-//config:config ASH_CMDCMD
-//config: bool "'command' command to override shell builtins"
+//config:config ASH_GETOPTS
+//config: bool "getopts builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
-//config: help
-//config: Enable support for the ash 'command' builtin, which allows
-//config: you to run the specified command with the specified arguments,
-//config: even when there is an ash builtin command with the same name.
//config:
-//config:config ASH_MAIL
-//config: bool "Check for new mail on interactive shells"
+//config:config ASH_CMDCMD
+//config: bool "command builtin"
//config: default y
//config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
//config: help
-//config: Enable "check for new mail" function in the ash shell.
+//config: Enable support for the 'command' builtin, which allows
+//config: you to run the specified command or builtin,
+//config: even when there is a function with the same name.
//config:
//config:endif # ash options
diff --git a/shell/hush.c b/shell/hush.c
index 22d71cb..9e508fc 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -99,8 +99,6 @@
//config: bool "bash-compatible extensions"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable bash-compatible extensions.
//config:
//config:config HUSH_BRACE_EXPANSION
//config: bool "Brace expansion"
@@ -123,8 +121,6 @@
//config: bool "Save command history to .hush_history"
//config: default y
//config: depends on HUSH_INTERACTIVE && FEATURE_EDITING_SAVEHISTORY
-//config: help
-//config: Enable history saving in hush.
//config:
//config:config HUSH_JOB
//config: bool "Job control"
@@ -138,39 +134,35 @@
//config: but no separate process group is formed.
//config:
//config:config HUSH_TICK
-//config: bool "Process substitution"
+//config: bool "Support process substitution"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
//config: help
-//config: Enable process substitution `command` and $(command) in hush.
+//config: Enable `command` and $(command).
//config:
//config:config HUSH_IF
//config: bool "Support if/then/elif/else/fi"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable if/then/elif/else/fi in hush.
//config:
//config:config HUSH_LOOPS
//config: bool "Support for, while and until loops"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable for, while and until loops in hush.
//config:
//config:config HUSH_CASE
//config: bool "Support case ... esac statement"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
//config: help
-//config: Enable case ... esac statement in hush. +400 bytes.
+//config: Enable case ... esac statement. +400 bytes.
//config:
//config:config HUSH_FUNCTIONS
//config: bool "Support funcname() { commands; } syntax"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
//config: help
-//config: Enable support for shell functions in hush. +800 bytes.
+//config: Enable support for shell functions. +800 bytes.
//config:
//config:config HUSH_LOCAL
//config: bool "local builtin"
@@ -199,22 +191,21 @@
//config: bool "echo builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable echo builtin in hush.
//config:
//config:config HUSH_PRINTF
//config: bool "printf builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable printf builtin in hush.
+//config:
+//config:config HUSH_HELP
+//config: bool "help builtin"
+//config: default y
+//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
//config:
//config:config HUSH_EXPORT
//config: bool "export builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable export builtin in hush.
//config:
//config:config HUSH_EXPORT_N
//config: bool "Support 'export -n' option"
@@ -223,82 +214,55 @@
//config: help
//config: export -n unexports variables. It is a bash extension.
//config:
-//config:config HUSH_HELP
-//config: bool "help builtin"
-//config: default y
-//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable help builtin in hush. Code size + ~1 kbyte.
-//config:
//config:config HUSH_KILL
-//config: bool "kill builtin (for kill %jobspec)"
+//config: bool "kill builtin (supports kill %jobspec)"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable kill builtin in hush.
//config:
//config:config HUSH_WAIT
//config: bool "wait builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable wait builtin in hush.
//config:
//config:config HUSH_TRAP
//config: bool "trap builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable trap builtin in hush.
-//config:
-//config:config HUSH_ULIMIT
-//config: bool "ulimit builtin"
-//config: default y
-//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable ulimit builtin in hush.
//config:
//config:config HUSH_TYPE
//config: bool "type builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable type builtin in hush.
//config:
//config:config HUSH_READ
//config: bool "read builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable read builtin in hush.
//config:
//config:config HUSH_SET
//config: bool "set builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable set builtin in hush.
//config:
//config:config HUSH_UNSET
//config: bool "unset builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable unset builtin in hush.
+//config:
+//config:config HUSH_ULIMIT
+//config: bool "ulimit builtin"
+//config: default y
+//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
//config:
//config:config HUSH_UMASK
//config: bool "umask builtin"
//config: default y
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable umask builtin in hush.
//config:
//config:config HUSH_MEMLEAK
//config: bool "memleak builtin (debugging)"
//config: default n
//config: depends on HUSH || SH_IS_HUSH || BASH_IS_HUSH
-//config: help
-//config: Enable memleak builtin in hush.
//config:
//config:config MSH
//config: bool "msh (deprecated: aliased to hush)"
@@ -1096,8 +1060,6 @@ static const struct built_in_command bltins1[] = {
BLTIN("wait" , builtin_wait , "Wait for process"),
#endif
};
-/* For now, echo and test are unconditionally enabled.
- * Maybe make it configurable? */
static const struct built_in_command bltins2[] = {
BLTIN("[" , builtin_test , NULL),
#if ENABLE_HUSH_ECHO