From cac2679f885c1bd6c72b72ced063cd43e2560731 Mon Sep 17 00:00:00 2001 From: Urban Wallasch Date: Fri, 5 Apr 2019 10:23:33 +0200 Subject: [PATCH] * Added automatic git version string generation. --- .gitignore | 1 + Makefile | 14 +++++++++++--- gogopherd.go | 2 ++ version.sh | 4 ++++ 4 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 version.sh diff --git a/.gitignore b/.gitignore index e656622..825745f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ gogopherd +version.go diff --git a/Makefile b/Makefile index 1603da1..7e8bded 100644 --- a/Makefile +++ b/Makefile @@ -5,21 +5,29 @@ PROJECT := gogopherd GOBLD := go build +SH := /bin/sh + +GETVER := version.sh +VERFILE := version.go + BIN := $(PROJECT) SRC := $(wildcard *.go) SELF := $(lastword $(MAKEFILE_LIST)) -.PHONY: all clean distclean +.PHONY: all version clean distclean -all: $(BIN) +all: version $(BIN) $(BIN): $(SRC) $(SELF) $(GOBLD) $(SRVSRC) +version: + $(SH) $(GETVER) $(VERFILE) + clean: - $(RM) $(BIN) + $(RM) $(BIN) $(VERFILE) distclean: clean diff --git a/gogopherd.go b/gogopherd.go index 7f303aa..f3618f1 100644 --- a/gogopherd.go +++ b/gogopherd.go @@ -66,10 +66,12 @@ func initialize() { flag.BoolVar(&cfg.verbose, "v", cfg.verbose, "produce verbose output") flag.Parse() if help { + fmt.Println("Version ", version) flag.Usage() os.Exit(1) } if 0 != len(flag.Args()) { + fmt.Println("Version ", version) fmt.Println("unrecognized options: ", flag.Args()) flag.Usage() os.Exit(1) diff --git a/version.sh b/version.sh new file mode 100644 index 0000000..50007cc --- /dev/null +++ b/version.sh @@ -0,0 +1,4 @@ +#!/bin/sh +VERSION=`git describe` +echo "package main" > "$1" +echo "const version = \"$VERSION\"" >> "$1" -- 2.30.2