- add central knob to turn off getopt_long everywhere. EXPERIMENTAL!
Adds "Enable getopt long" under "General options", default y.
Send patches to fix getopt_ulflags and run_parts.c if you turn this off..
See http://busybox.net/lists/busybox/2006-May/021828.html for a start to run-parts
diff --git a/console-tools/Config.in b/console-tools/Config.in
index 34e83e1..ec2273c 100644
--- a/console-tools/Config.in
+++ b/console-tools/Config.in
@@ -65,6 +65,13 @@
This program redirects the system console to another device,
like the current tty while logged in via telnet.
+config CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS
+ bool "Enable long options"
+ default n
+ depends on CONFIG_SET_CONSOLE && CONFIG_GETOPT_LONG
+ help
+ Support long options for the setconsole applet.
+
config CONFIG_SETKEYCODES
bool "setkeycodes"
default n
diff --git a/console-tools/setconsole.c b/console-tools/setconsole.c
index bf06cc5..79a4313 100644
--- a/console-tools/setconsole.c
+++ b/console-tools/setconsole.c
@@ -16,10 +16,12 @@
#include "busybox.h"
+#if ENABLE_FEATURE_SETCONSOLE_LONG_OPTIONS
static const struct option setconsole_long_options[] = {
{ "reset", 0, NULL, 'r' },
{ 0, 0, 0, 0 }
};
+#endif
#define OPT_SETCONS_RESET 1
@@ -28,7 +30,9 @@
unsigned long flags;
const char *device = CURRENT_TTY;
+#if ENABLE_FEATURE_SETCONSOLE_LONG_OPTIONS
bb_applet_long_options = setconsole_long_options;
+#endif
flags = bb_getopt_ulflags(argc, argv, "r");
if (argc - optind > 1)