From 36c1039228b86e2e72367bbb46be41390eb57d84 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 10 Apr 2016 23:16:09 +0200 Subject: [PATCH] build.bash: bake the go-fuse commit hash into the binaries --- build.bash | 7 +++++-- main.go | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/build.bash b/build.bash index 9d2290f..08ccb36 100755 --- a/build.bash +++ b/build.bash @@ -4,17 +4,20 @@ set -eu cd "$(dirname "$0")" +# gocryptfs version according to git GITVERSION=$(git describe --tags --dirty) +# go-fuse version according to git +GITVERSIONFUSE=$(git -C $GOPATH/src/github.com/hanwen/go-fuse rev-parse --short HEAD) # go version go1.5.1 linux/amd64 V=$(go version | cut -d" " -f3 | cut -c3-5) if [ $V == "1.3" -o $V == "1.4" ] then - go build -ldflags="-X main.GitVersion $GITVERSION" + go build -ldflags="-X main.GitVersion $GITVERSION -X main.GitVersionFuse $GITVERSIONFUSE" else # Go 1.5 wants an "=" here - go build -ldflags="-X main.GitVersion=$GITVERSION" + go build -ldflags="-X main.GitVersion=$GITVERSION -X main.GitVersionFuse=$GITVERSIONFUSE" fi ./gocryptfs -version diff --git a/main.go b/main.go index f7d53ae..8e6e565 100644 --- a/main.go +++ b/main.go @@ -52,6 +52,7 @@ var flagSet *flag.FlagSet // GitVersion will be set by the build script "build.bash" var GitVersion = "[version not set - please compile using ./build.bash]" +var GitVersionFuse = "[version not set - please compile using ./build.bash]" func initDir(args *argContainer) { err := checkDirEmpty(args.cipherdir) @@ -137,7 +138,8 @@ func changePassword(args *argContainer) { // printVersion - print a version string like // "gocryptfs v0.3.1-31-g6736212-dirty; on-disk format 2" func printVersion() { - fmt.Printf("%s %s; on-disk format %d\n", toggledlog.ProgramName, GitVersion, contentenc.CurrentVersion) + fmt.Printf("%s %s; on-disk format %d; go-fuse %s\n", + toggledlog.ProgramName, GitVersion, contentenc.CurrentVersion, GitVersionFuse) } func main() {