busybox: Set __progname in getopt for -n to work

This commit is contained in:
Fredrik Fornwall 2016-11-30 20:32:23 -05:00
parent 30ecfee6b9
commit b5ae580768
2 changed files with 24 additions and 0 deletions

View File

@ -2,6 +2,7 @@ TERMUX_PKG_HOMEPAGE=http://www.busybox.net/
TERMUX_PKG_DESCRIPTION="Tiny versions of many common UNIX utilities into a single small executable"
TERMUX_PKG_ESSENTIAL=yes
TERMUX_PKG_VERSION=1.25.1
TERMUX_PKG_BUILD_REVISION=1
TERMUX_PKG_SRCURL=https://www.busybox.net/downloads/busybox-${TERMUX_PKG_VERSION}.tar.bz2
TERMUX_PKG_BUILD_IN_SRC=yes
# We replace env in the old coreutils package:

View File

@ -0,0 +1,23 @@
diff -u -r ../busybox-1.25.1/util-linux/getopt.c ./util-linux/getopt.c
--- ../busybox-1.25.1/util-linux/getopt.c 2016-10-07 10:47:47.000000000 -0400
+++ ./util-linux/getopt.c 2016-11-30 17:46:48.000185295 -0500
@@ -358,6 +358,10 @@
;
#endif
+#ifdef __ANDROID__
+extern char* __progname;
+#endif
+
int getopt_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int getopt_main(int argc, char **argv)
{
@@ -423,5 +427,8 @@
}
argv[n] = name ? name : argv[0];
+#ifdef __ANDROID__
+ __progname = argv[n];
+#endif
return generate_output(argv + n, argc - n, optstr, long_options);
}