aboutsummaryrefslogtreecommitdiff
path: root/src/prc1/arg.c
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi92@disroot.org>2026-10-01 01:04:30 +0200
committerXavier Del Campo Romero <xavi92@disroot.org>2026-10-11 00:14:35 +0200
commit4ce39e4fc1de9536de7dedfe91b6dee38dec76ae (patch)
treef9820f96b8eab624430c3700f32a2878a7036ee2 /src/prc1/arg.c
parent9140988be4e5bb028b7140aca1a67af1370c72a7 (diff)
downloadprc-4ce39e4fc1de9536de7dedfe91b6dee38dec76ae.tar.gz
WIP sym + cgen
Diffstat (limited to 'src/prc1/arg.c')
-rw-r--r--src/prc1/arg.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/prc1/arg.c b/src/prc1/arg.c
index f61bca7..f55d322 100644
--- a/src/prc1/arg.c
+++ b/src/prc1/arg.c
@@ -20,7 +20,20 @@ struct arg
static int debug(struct args *a, const char *arg)
{
- dbgen = 1;
+ dbgen++;
+ return 0;
+}
+
+static int target(struct args *a, const char *arg)
+{
+ if (!strcmp(arg, "qbe"))
+ a->tgt = QBE;
+ else
+ {
+ fprintf(stderr, "invalid or unsupported target \"%s\"", arg);
+ return -1;
+ }
+
return 0;
}
@@ -77,6 +90,7 @@ int arg(struct args *a, const char *value)
static const struct arg args[] =
{
{"-d", debug},
+ {"-t", target},
{"-I", inc, SPACEVAL | JOINVAL}
};
@@ -110,6 +124,7 @@ int arg(struct args *a, const char *value)
void arg_defaults(struct args *a)
{
+ a->tgt = QBE;
}
static void free_input(struct arg_input *i)