aboutsummaryrefslogtreecommitdiff
path: root/gen-version.sh
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2007-09-03 21:52:14 +0200
committerLars Hjemli <hjemli@gmail.com>2007-09-03 22:17:04 +0200
commite8920b52629911f92dbbecdb1d7675760e7a781e (patch)
treebd02d106cfee5823d7496f21756389c119a152dd /gen-version.sh
parent1221adbb581e222cfe932fe72fded2d8613112d9 (diff)
downloadcgit-e8920b52629911f92dbbecdb1d7675760e7a781e.tar.gz
cgit-e8920b52629911f92dbbecdb1d7675760e7a781e.tar.bz2
cgit-e8920b52629911f92dbbecdb1d7675760e7a781e.zip
Rewrite the makefile + gen-version.sh
The old files were simply broken, hopefully the new ones will work out somewhat better. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'gen-version.sh')
-rwxr-xr-xgen-version.sh24
1 files changed, 20 insertions, 4 deletions
diff --git a/gen-version.sh b/gen-version.sh
index 4c60f60..739c83e 100755
--- a/gen-version.sh
+++ b/gen-version.sh
@@ -1,4 +1,20 @@
-v=$(git-describe --abbrev=4 HEAD | sed -e 's/-/./g')
-test -z "$v" && exit 1
-echo "CGIT_VERSION = $v"
-echo "CGIT_VERSION = $v" > VERSION
+#!/bin/sh
+
+# Get version-info specified in Makefile
+V=$1
+
+# Use `git describe` to get current version if we're inside a git repo
+if test -d .git
+then
+ V=$(git describe --abbrev=4 HEAD 2>/dev/null | sed -e 's/-/./g')
+fi
+
+new="CGIT_VERSION = $V"
+old=$(cat VERSION 2>/dev/null)
+
+# Exit if VERSION is uptodate
+test "$old" = "$new" && exit 0
+
+# Update VERSION with new version-info
+echo "$new" > VERSION
+cat VERSION