M Makefile => Makefile +1 -1
@@ 1,6 1,6 @@
include config.mk
-CFLAGS += -I. -DWLR_USE_UNSTABLE -std=c99 -pedantic
+CFLAGS += -I. -DWLR_USE_UNSTABLE -std=c99 -pedantic -DVERSION=\"$(VERSION)\"
WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
M config.mk => config.mk +3 -0
@@ 1,3 1,6 @@
+_VERSION = 0.3.1
+VERSION = $(shell ./generate-version.sh $(_VERSION))
+
# paths
PREFIX = /usr/local
MANDIR = $(PREFIX)/share/man
M dwl.c => dwl.c +3 -1
@@ 2516,9 2516,11 @@ main(int argc, char *argv[])
char *startup_cmd = NULL;
int c;
- while ((c = getopt(argc, argv, "s:h")) != -1) {
+ while ((c = getopt(argc, argv, "s:hv")) != -1) {
if (c == 's')
startup_cmd = optarg;
+ else if (c == 'v')
+ die("dwl " VERSION);
else
goto usage;
}
A generate-version.sh => generate-version.sh +13 -0
@@ 0,0 1,13 @@
+#!/bin/sh
+
+if git tag --contains HEAD | grep -q $1; then
+ echo $1
+else
+ branch="$(git rev-parse --abbrev-ref HEAD)"
+ commit="$(git rev-parse --short HEAD)"
+ if [ "${branch}" != "main" ]; then
+ echo $1-$branch-$commit
+ else
+ echo $1-$commit
+ fi
+fi