build.bash: bake the go-fuse commit hash into the binaries

This commit is contained in:
Jakob Unterwurzacher 2016-04-10 23:16:09 +02:00
parent 776c734f43
commit 36c1039228
2 changed files with 8 additions and 3 deletions

View File

@ -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

View File

@ -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() {