commit f98e9045aef95fe28972d477ee549974c7cefb9f from: Omar Polo date: Tue Jun 29 12:39:34 2021 UTC add -D to define macros from the cmd line commit - 3b21cca385c403247960cfe9385dda1d56f28670 commit + f98e9045aef95fe28972d477ee549974c7cefb9f blob - 3801306c4c6e1ee019b5b3cb1e5e57d3b9f55b78 blob + 472bedff33446af49b6954e29dcbc93ff2361ba2 --- ChangeLog +++ ChangeLog @@ -1,4 +1,6 @@ 2021-06-29 Omar Polo + + * gmid.c (main): add -D to define macros from the cmd line * parse.y (yylex): allow to define macros in the config file blob - 4fcd5c208da21e5bdd56265a31662c058a456ccd blob + 93e189561ec10c5b61f69da26f0608dcab452fd0 --- gmid.c +++ gmid.c @@ -27,7 +27,7 @@ #include #include -static const char *opts = "6c:d:fH:hnP:p:Vvx:"; +static const char *opts = "6c:D:d:fH:hnP:p:Vvx:"; static struct option longopts[] = { {"help", no_argument, NULL, 'h'}, @@ -382,7 +382,7 @@ usage(void) { fprintf(stderr, "Version: " GMID_STRING "\n" - "Usage: %s [-fnv] [-c config] [-P pidfile]\n" + "Usage: %s [-fnv] [-c config] [-D macro=value] [-P pidfile]\n" " %s [-6hVv] [-d certs-dir] [-H hostname] [-p port] [-x cgi] [dir]\n", getprogname(), getprogname()); @@ -548,6 +548,11 @@ main(int argc, char **argv) config_path = absolutify_path(optarg); break; + case 'D': + if (cmdline_symset(optarg) == -1) + errx(1, "invalid macro: %s", optarg); + break; + case 'd': certs_dir = optarg; configless = 1;