From 6dd6a6c42d1465d8cca2539476f6bffd5e1353dd Mon Sep 17 00:00:00 2001 From: Walter Lozano Date: Fri, 21 Jan 2022 11:00:27 -0300 Subject: [PATCH] Add support for long options to cmp In order to improve compatibility with GNU cmp add support for long options to busybox cmp. function old new delta static.cmp_longopts - 36 +36 cmp_main 589 594 +5 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/0 up/down: 41/0) Total: 41 bytes Signed-off-by: Walter Lozano Signed-off-by: Denys Vlasenko --- editors/cmp.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/editors/cmp.c b/editors/cmp.c index 6d2b0c6c3..b89e519ad 100644 --- a/editors/cmp.c +++ b/editors/cmp.c @@ -54,6 +54,7 @@ int cmp_main(int argc UNUSED_PARAM, char **argv) int retval = 0; int max_count = -1; +#if !ENABLE_LONG_OPTS opt = getopt32(argv, "^" OPT_STR "\0" "-1" @@ -62,6 +63,23 @@ int cmp_main(int argc UNUSED_PARAM, char **argv) ":l--s:s--l", &max_count ); +#else + static const char cmp_longopts[] ALIGN1 = + "bytes\0" Required_argument "n" + "quiet\0" No_argument "s" + "silent\0" No_argument "s" + "verbose\0" No_argument "l" + ; + opt = getopt32long(argv, "^" + OPT_STR + "\0" "-1" + IF_DESKTOP(":?4") + IF_NOT_DESKTOP(":?2") + ":l--s:s--l", + cmp_longopts, + &max_count + ); +#endif argv += optind; filename1 = *argv;