aboutsummaryrefslogtreecommitdiffstats
path: root/charconv-mcb.c
blob: 798ff3b1732dbb80c218edc865d3f8f0ee3f9086 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* See LICENSE file for copyright and license details. */
#include "common.h"
#include "charconv-mcb.h"


#define X(NAME, MAIN)\
	extern int MAIN(int argc, char *argv[]);
LIST_BINS(X)
#undef X


char *argv0 = NULL;


int
main(int argc, char *argv[])
{
	char *command = argv[0];
	char *p = strrchr(command, '/');

	command = p ? &p[1] : command;

#define X(NAME, MAIN)\
	if (!strcmp(command, NAME))\
		return MAIN(argc, argv);
	LIST_BINS(X)
#undef X

	fprintf(stderr, "%s: invalid invocation of multicall binary\n", argv[0]);
	return 125;
}