aboutsummaryrefslogtreecommitdiffstats
path: root/charconv-mcb.c
diff options
context:
space:
mode:
authorMattias Andrée <m@maandree.se>2026-02-01 15:00:22 +0100
committerMattias Andrée <m@maandree.se>2026-02-01 15:00:22 +0100
commit152fb2bdb81af70c5682102c86009317caaf3ca0 (patch)
treeafc028b989b7b5733767b69848b1f21f49920399 /charconv-mcb.c
parentMisc (diff)
downloadcharconv-master.tar.gz
charconv-master.tar.bz2
charconv-master.tar.xz
Add multicall binaryHEADmaster
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to 'charconv-mcb.c')
-rw-r--r--charconv-mcb.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/charconv-mcb.c b/charconv-mcb.c
new file mode 100644
index 0000000..798ff3b
--- /dev/null
+++ b/charconv-mcb.c
@@ -0,0 +1,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;
+}