diff options
author | Lieuwe Rooijakkers <lieuwerooijakkers@gmail.com> | 2024-07-23 00:02:27 +0200 |
---|---|---|
committer | Lieuwe Rooijakkers <lieuwerooijakkers@gmail.com> | 2024-07-23 00:02:27 +0200 |
commit | 93394b388f7cbec6640e361aa95c3b30ba2a90fc (patch) | |
tree | 40a30f58d39f01f3eaf9df9446b14edd9b09b534 /main.c | |
parent | bd22d0e47d0fb203286b088f048cf1aff1fa93a1 (diff) |
global progname variable
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 14 |
1 files changed, 9 insertions, 5 deletions
@@ -2,6 +2,10 @@ #include <string.h> #include <unistd.h> +#include "global.h" + +char *progname = NULL; + #define X(name) int entry_ ## name (int argc, char **argv); PROGNAMES_XLIST #undef X @@ -18,9 +22,9 @@ int main(int argc, char **argv) { // Ensure getopt(3) does not print an (English) error opterr = 0; - const char *prognamearg = basename(argv[0]); + progname = basename(argv[0]); - if (strcmp(prognamearg, "drukkedoos") == 0) { + if (strcmp(progname, "drukkedoos") == 0) { argv++; argc--; if (argc == 0) { @@ -31,13 +35,13 @@ int main(int argc, char **argv) { #undef X return 1; } - prognamearg = basename(argv[0]); + progname = basename(argv[0]); } -#define X(name) if (strcmp(prognamearg, #name) == 0) return entry_ ## name (argc, argv); +#define X(name) if (strcmp(progname, #name) == 0) return entry_ ## name (argc, argv); PROGNAMES_XLIST #undef X - fprintf(stderr, "Onbekend hulpmiddel: '%s'\n", prognamearg); + fprintf(stderr, "Onbekend hulpmiddel: '%s'\n", progname); return 1; } |