From a08a2a2dbb3d150bdb2d01bd54c6ad32f02fe5fa Mon Sep 17 00:00:00 2001 From: Tom Smeding Date: Sat, 13 Jul 2024 18:33:37 +0200 Subject: waar, poging 2 --- main.c | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'main.c') diff --git a/main.c b/main.c index b5e3883..8cde9b8 100644 --- a/main.c +++ b/main.c @@ -1,5 +1,35 @@ #include +#include + +#define X(name) int entry_ ## name (int argc, char **argv); +PROGNAMES_XLIST +#undef X + +static char* basename(char *path) { + size_t len = strlen(path); + for (size_t i = len - 1; i != 0; i--) { + if (path[i] == '/') return path + (i + 1); + } + return path; +} int main(int argc, char **argv) { - fprintf(stderr, "Drukkedoos moet nog geïmplementeerd worden\n"); + const char *prognamearg = basename(argv[0]); + + if (strcmp(prognamearg, "drukkedoos") == 0) { + argv++; + argc--; + if (argc == 0) { + fprintf(stderr, "Gebruik: drukkedoos \n"); + return 1; + } + prognamearg = basename(argv[0]); + } + +#define X(name) if (strcmp(argv[0], #name) == 0) return entry_ ## name (argc, argv); +PROGNAMES_XLIST +#undef X + + fprintf(stderr, "Onbekend hulpmiddel: '%s'\n", prognamearg); + return 1; } -- cgit v1.2.3-70-g09d2