summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordautor <karlo98.m@gmail.com>2024-11-19 18:43:02 +0100
committerdautor <karlo98.m@gmail.com>2024-11-19 18:43:02 +0100
commit1e8c79f75bfff6cf1cadfd3a02d04ab6c91f09b3 (patch)
tree22079a8d15153dc459febe179ac9c201336bbf98
parentf1e579bc427df418af96da61498fe0cdb4cecb69 (diff)
Add -v flag0.1
-rwxr-xr-xbuild.sh4
-rw-r--r--src/base/main.c7
-rw-r--r--src/lamina/main.c18
-rw-r--r--src/module/module.c7
4 files changed, 31 insertions, 5 deletions
diff --git a/build.sh b/build.sh
index ae62e50..69bf12f 100755
--- a/build.sh
+++ b/build.sh
@@ -1,9 +1,11 @@
#!/bin/sh
set -e
+version="$(git describe --tags --first-parent --abbrev=40 --long --dirty --always)"
+
CC=cc
SAN="$SAN -fsanitize=address -fsanitize=undefined -fsanitize=leak"
-CFLAGS="$CFLAGS -g -O0 -DENABLE_ASSERT=1 -DENABLE_DEBUG=1"
+CFLAGS="$CFLAGS -g -O0 -DENABLE_ASSERT=1 -DENABLE_DEBUG=1 -DVERSION=\"$version\""
CFLAGS="$CFLAGS -Wall -Wextra -Weverything -pedantic"
CFLAGS="$CFLAGS -Wno-unsafe-buffer-usage -Wno-gnu-zero-variadic-macro-arguments -Wno-format-non-iso -Wno-declaration-after-statement -Wno-padded -Wno-covered-switch-default -Wno-gnu-empty-struct -Wno-c++-compat -Wno-alloca -Wno-zero-length-array"
diff --git a/src/base/main.c b/src/base/main.c
index 6721701..8286b6a 100644
--- a/src/base/main.c
+++ b/src/base/main.c
@@ -903,10 +903,15 @@ main(int ArgCount, char **Arg)
{
Arg0 = Arg[0];
int C;
- while((C = getopt(ArgCount, Arg, "")) != -1)
+ while((C = getopt(ArgCount, Arg, "v")) != -1)
{
switch(C)
{
+ case 'v':
+ {
+ printf("%s\n", VERSION);
+ exit(EX_USAGE);
+ }
case '?':
default: usage();
}
diff --git a/src/lamina/main.c b/src/lamina/main.c
index f461058..2b974d7 100644
--- a/src/lamina/main.c
+++ b/src/lamina/main.c
@@ -564,8 +564,22 @@ int
main(int ArgCount, char **Arg)
{
Arg0 = Arg[0];
- --ArgCount;
- ++Arg;
+ int C;
+ while((C = getopt(ArgCount, Arg, "v")) != -1)
+ {
+ switch(C)
+ {
+ case 'v':
+ {
+ printf("%s\n", VERSION);
+ exit(EX_USAGE);
+ }
+ case '?':
+ default: usage();
+ }
+ }
+ ArgCount -= optind;
+ Arg += optind;
if(ArgCount != 2) usage();
char const *Path = Arg[0];
Root = Arg[1];
diff --git a/src/module/module.c b/src/module/module.c
index 22f6142..ad066ee 100644
--- a/src/module/module.c
+++ b/src/module/module.c
@@ -30,10 +30,15 @@ main(int ArgCount, char **Arg)
{
Arg0 = Arg[0];
int C;
- while((C = getopt(ArgCount, Arg, "")) != -1)
+ while((C = getopt(ArgCount, Arg, "v")) != -1)
{
switch(C)
{
+ case 'v':
+ {
+ printf("%s\n", VERSION);
+ exit(EX_USAGE);
+ }
case '?':
default: usage();
}