Declare dependencies of command line editing in the build system
diff --git a/shell/Config.in b/shell/Config.in
index 016af71..892b96e 100644
--- a/shell/Config.in
+++ b/shell/Config.in
@@ -137,40 +137,12 @@
comment "Bourne Shell Options"
depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
-config CONFIG_FEATURE_COMMAND_EDITING
- bool "command line editing"
+config CONFIG_FEATURE_SH_EXTRA_QUIET
+ bool "Hide message on interactive shell startup"
default n
depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
help
- Enable command editing in shell.
-
-config CONFIG_FEATURE_COMMAND_SAVEHISTORY
- bool " history saving"
- default n
- depends on CONFIG_ASH
- help
- Enable history saving in ash shell.
-
-config CONFIG_FEATURE_COMMAND_TAB_COMPLETION
- bool "tab completion"
- default n
- depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
- help
- Enable tab completion in shell.
-
-config CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION
- bool "username completion"
- default n
- depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
- help
- Enable username completion in shell.
-
-config CONFIG_FEATURE_COMMAND_HISTORY
- int "history size"
- default 15
- depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
- help
- Specify command history size in shell.
+ Remove the busybox introduction when starting a shell.
config CONFIG_FEATURE_SH_STANDALONE_SHELL
bool "Standalone shell"
@@ -188,20 +160,47 @@
Use a command builtin to the shell over one with the same name,
that may be on the system.
+config CONFIG_FEATURE_COMMAND_EDITING
+ bool "command line editing"
+ default n
+ depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
+ help
+ Enable command editing in shell.
+
+config CONFIG_FEATURE_COMMAND_HISTORY
+ int "history size"
+ default 15
+ depends on CONFIG_FEATURE_COMMAND_EDITING
+ help
+ Specify command history size in shell.
+
+config CONFIG_FEATURE_COMMAND_SAVEHISTORY
+ bool "history saving"
+ default n
+ depends on CONFIG_ASH && CONFIG_FEATURE_COMMAND_EDITING
+ help
+ Enable history saving in ash shell.
+
+config CONFIG_FEATURE_COMMAND_TAB_COMPLETION
+ bool "tab completion"
+ default n
+ depends on CONFIG_FEATURE_COMMAND_EDITING
+ help
+ Enable tab completion in shell.
+
+config CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION
+ bool "username completion"
+ default n
+ depends on CONFIG_FEATURE_COMMAND_TAB_COMPLETION
+ help
+ Enable username completion in shell.
+
config CONFIG_FEATURE_SH_FANCY_PROMPT
bool "Fancy shell prompts"
default n
- depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
+ depends on CONFIG_FEATURE_COMMAND_EDITING
help
Setting this option allows for prompts to use things like \w and
\$ and also using escape codes.
-config CONFIG_FEATURE_SH_EXTRA_QUIET
- bool "Hide message on interactive shell startup"
- default n
- depends on CONFIG_MSH || CONFIG_LASH || CONFIG_HUSH || CONFIG_ASH
- help
- Remove the busybox introduction when starting a shell.
-
endmenu
-
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index a78642b..884489b 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -49,11 +49,7 @@
#define Isprint(c) ( (c) >= ' ' && (c) != ((unsigned char)'\233') )
#endif
-#ifndef TEST
-
-#define D(x)
-
-#else
+#ifdef TEST
/* pretect redefined for test */
#undef CONFIG_FEATURE_COMMAND_EDITING
@@ -68,8 +64,6 @@
#define CONFIG_FEATURE_NONPRINTABLE_INVERSE_PUT
#define CONFIG_FEATURE_CLEAN_UP
-#define D(x) x
-
#endif /* TEST */
#ifdef CONFIG_FEATURE_COMMAND_TAB_COMPLETION
@@ -79,10 +73,6 @@
#ifdef CONFIG_FEATURE_COMMAND_EDITING
-#ifndef CONFIG_FEATURE_COMMAND_TAB_COMPLETION
-#undef CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION
-#endif
-
#if defined(CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION) || defined(CONFIG_FEATURE_SH_FANCY_PROMPT)
#define CONFIG_FEATURE_GETUSERNAME_AND_HOMEDIR
#endif