]> git.sesse.net Git - nageru/commitdiff
Add usage information on invalid option or --help.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 10 Apr 2016 13:21:15 +0000 (15:21 +0200)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 10 Apr 2016 13:27:08 +0000 (15:27 +0200)
flags.cpp

index 7b20995f12c9c2b94d00432f231698d4e6057759..94c98bf00c4998278d212e70038dcdb4d6c9ce48 100644 (file)
--- a/flags.cpp
+++ b/flags.cpp
@@ -6,9 +6,23 @@
 
 Flags global_flags;
 
+void usage()
+{
+       fprintf(stderr, "Usage: nageru [OPTION]...\n");
+       fprintf(stderr, "\n");
+       fprintf(stderr, "  -h, --help                      print usage information\n");
+       fprintf(stderr, "  -c, --num-cards                 set number of input cards (default 2)\n");
+       fprintf(stderr, "  -t, --theme=FILE                choose theme (default theme.lua)\n");
+       fprintf(stderr, "  -v, --va-display=SPEC           VA-API device for H.264 encoding\n");
+       fprintf(stderr, "                                    ($DISPLAY spec or /dev/dri/render* path)\n");
+       fprintf(stderr, "      --http-uncompressed-video   send uncompressed NV12 video to HTTP clients\n");
+       fprintf(stderr, "      --flat-audio                start with most audio processing turned off\n");
+}
+
 void parse_flags(int argc, char * const argv[])
 {
        static const option long_options[] = {
+               { "help", no_argument, 0, 'h' },
                { "num-cards", required_argument, 0, 'c' },
                { "theme", required_argument, 0, 't' },
                { "va-display", required_argument, 0, 1000 },
@@ -39,8 +53,13 @@ void parse_flags(int argc, char * const argv[])
                case 1002:
                        global_flags.flat_audio = true;
                        break;
+               case 'h':
+                       usage();
+                       exit(0);
                default:
                        fprintf(stderr, "Unknown option '%s'\n", argv[option_index]);
+                       fprintf(stderr, "\n");
+                       usage();
                        exit(1);
                }
        }