diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2023-04-29 21:42:33 +0200 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2023-04-29 21:42:33 +0200 |
commit | 8b4ad891dce51baa3fb306c617f3368d24600e6d (patch) | |
tree | 065cbaee51791d3a35f15547a3c3ff77c97db83a /src/cmd_line.c | |
parent | make struct storage_settings_sqlite opaque (diff) | |
download | cimple-8b4ad891dce51baa3fb306c617f3368d24600e6d.tar.gz cimple-8b4ad891dce51baa3fb306c617f3368d24600e6d.zip |
dedupe command line routines
Diffstat (limited to '')
-rw-r--r-- | src/cmd_line.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/cmd_line.c b/src/cmd_line.c new file mode 100644 index 0000000..9527d6f --- /dev/null +++ b/src/cmd_line.c @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2023 Egor Tensin <Egor.Tensin@gmail.com> + * This file is part of the "cimple" project. + * For details, see https://github.com/egor-tensin/cimple. + * Distributed under the MIT License. + */ + +#include "cmd_line.h" + +#include <stdio.h> +#include <stdlib.h> + +void exit_with_usage(int ec, const char *argv0) +{ + FILE *dest = stdout; + if (ec) + dest = stderr; + + fprintf(dest, "usage: %s %s\n", argv0, get_usage_string()); + exit(ec); +} + +void exit_with_usage_err(const char *argv0, const char *msg) +{ + if (msg) + fprintf(stderr, "usage error: %s\n", msg); + exit_with_usage(1, argv0); +} + +void exit_with_version() +{ + printf("%s\n", VERSION); + exit(0); +} |