From ad6c3b36bdc00ecee24c84c2ddf2537786cdd360 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Thu, 2 Jan 2020 12:39:28 +0100 Subject: fbtest: long options --- fbtest.c | 41 +++++++++++++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 6 deletions(-) diff --git a/fbtest.c b/fbtest.c index e946c3b..a8aa930 100644 --- a/fbtest.c +++ b/fbtest.c @@ -64,14 +64,43 @@ static void usage(FILE *fp) "usage: fbtest [ options ]\n" "\n" "options:\n" - " -h print this\n" - " -a autotest mode (don't print hardware info)\n" - " -f pick framebuffer\n" - " -s set sleep time (default: 60)\n" - " -i load and display image \n" + " -h | --help print this\n" + " -a | --autotest autotest mode (don't print hardware info)\n" + " -f | --fbdev pick framebuffer\n" + " -s | --sleep set sleep time (default: 60)\n" + " -i | --image load and display image \n" "\n"); } +struct option long_opts[] = { + { + /* --- no argument --- */ + .name = "help", + .has_arg = false, + .val = 'h', + },{ + .name = "autotest", + .has_arg = false, + .val = 'a', + },{ + + /* --- with argument --- */ + .name = "fbdev", + .has_arg = true, + .val = 'f', + },{ + .name = "sleep", + .has_arg = true, + .val = 's', + },{ + .name = "image", + .has_arg = true, + .val = 'i', + },{ + /* end of list */ + } +}; + int main(int argc, char **argv) { int framebuffer = 0; @@ -80,7 +109,7 @@ int main(int argc, char **argv) int c; for (;;) { - c = getopt(argc, argv, "has:i:f:"); + c = getopt_long(argc, argv, "has:i:f:", long_opts, NULL); if (c == -1) break; switch (c) { -- cgit