]> git.itanic.dy.fi Git - log-plotter/blobdiff - options.c
Add primitive config file parsing support
[log-plotter] / options.c
index 48cd259a3fa754dcf79723229fbd9e1b56eb07b5..18db9c5e44e173ba1b24f70f4a44a44079187d6b 100644 (file)
--- a/options.c
+++ b/options.c
@@ -15,6 +15,7 @@ void print_help_and_die(const char *exec_name)
        pr_info("  -o, --output            logfile path, stdout only if omited\n");
        pr_info("  -v, --verbose           increase verbosity\n");
        pr_info("  -q, --quiet             decrease verbosity\n");
+       pr_info("  -c, --config=PATH       config file path\n");
        pr_info("  -h, --help              show this help\n");
 
        exit(0);
@@ -37,9 +38,10 @@ int read_args(int argc, char *argv[], struct plotter_options *opts)
                { .val = 'b', .name = "baud", .has_arg = 1 },
                { .val = 'v', .name = "verbose", .has_arg = 2 },
                { .val = 'q', .name = "quiet", },
+               { .val = 'c', .name = "config", .has_arg = 1 },
                { .val = 'h', .name = "help", },
        };
-       char short_options[] = "d:o:b:vqh";
+       char short_options[] = "d:o:b:vqc:h";
 
        set_default_options(opts);
 
@@ -68,6 +70,9 @@ int read_args(int argc, char *argv[], struct plotter_options *opts)
                        trace_level--;
                        pr_debug("Degreased trace level to %d\n", trace_level);
                        break;
+               case 'c':
+                       opts->config_file_path = optarg;
+                       break;
                case 'h':
                        print_help_and_die(argv[0]);
                        break;