From 067637375658047d70c296606ae17ef0bc86499d Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Fri, 12 Dec 2014 16:18:12 +0100 Subject: unistd: allow to turn off getopt_long The GNU variant of getopt() previously had no way to turn off getopt_long() support. --- extra/Configs/Config.in | 14 +++++++------- extra/config/conf.c | 5 ++--- 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'extra') diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in index 00480e9eb..8e603b2ad 100644 --- a/extra/Configs/Config.in +++ b/extra/Configs/Config.in @@ -1893,25 +1893,25 @@ config UCLIBC_HAS_GNU_GETOPT help Answer Y if you want to include full gnu getopt() instead of a (much smaller) SUSv3 compatible getopt(). + Note that getopt_long, getopt_long_only as well as getsubopt + are implemented on top of this choice. Most people will answer Y. config UCLIBC_HAS_GETOPT_LONG - bool "Support getopt_long/getopt_long_only" - depends on !UCLIBC_HAS_GNU_GETOPT + bool "Support getopt_long/getopt_long_only (glibc-compat)" default y help - Answer Y if you want to include getopt_long[_only() used by many - apps, even busybox. + Answer Y if you want to include getopt_long[_only()] used by many + apps. Most people will answer Y. config UCLIBC_HAS_GNU_GETSUBOPT - bool "Support glibc getsubopt" + bool "Support getsubopt" default y help - Answer Y if you want to include glibc getsubopt() instead of a - smaller SUSv3 compatible getsubopt(). + Answer Y if you want to include getsubopt(). Most people will answer Y. endmenu diff --git a/extra/config/conf.c b/extra/config/conf.c index db0905319..b24c1c355 100644 --- a/extra/config/conf.c +++ b/extra/config/conf.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include @@ -447,7 +446,7 @@ static void check_conf(struct menu *menu) } #if 00 // || !defined __UCLIBC__ || \ - (defined UCLIBC_HAS_GETOPT_LONG || defined UCLIBC_HAS_GNU_GETOPT) + defined __UCLIBC_HAS_GETOPT_LONG__ static struct option long_opts[] = { {"oldaskconfig", no_argument, NULL, oldaskconfig}, {"oldconfig", no_argument, NULL, oldconfig}, @@ -526,7 +525,7 @@ int main(int ac, char **av) tty_stdio = isatty(0) && isatty(1) && isatty(2); #if 00// !defined __UCLIBC__ || \ - (defined UCLIBC_HAS_GETOPT_LONG || defined UCLIBC_HAS_GNU_GETOPT) + defined __UCLIBC_HAS_GETOPT_LONG__ while ((opt = getopt_long(ac, av, "", long_opts, NULL)) != -1) #else char *gch = "asonymArDSld"; -- cgit v1.2.3