diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2014-11-01 09:53:02 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2014-11-01 09:53:02 +0100 |
commit | 212d7be5331f9dc8c7965214cab61a59bfb8c6f6 (patch) | |
tree | 7f8658922dda6d589d94dc99d6e6a85e7a8d95cc /build/mkversion.sh | |
parent | 5916f762f6c1595d0bf8ca92d638e8c8064ddf7e (diff) |
build: rewrite mkversion.sh to use git metadata (#239)
The current build/mkversion.sh still expected an SVN repository layout,
rewrite it to derive tags and branchnames from git metadata.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'build/mkversion.sh')
-rwxr-xr-x | build/mkversion.sh | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/build/mkversion.sh b/build/mkversion.sh index afb34b415..3680008df 100755 --- a/build/mkversion.sh +++ b/build/mkversion.sh @@ -1,10 +1,26 @@ #!/bin/sh -if [ "${4%%/*}" = "branches" ]; then - variant="LuCI ${4##*[-/]} Branch" -elif [ "${4%%/*}" = "tags" ]; then - variant="LuCI ${4##*[-/]} Release" + +if svn info >/dev/null 2>/dev/null; then + if [ "${4%%/*}" = "branches" ]; then + variant="LuCI ${4##*[-/]} Branch" + elif [ "${4%%/*}" = "tags" ]; then + variant="LuCI ${4##*[-/]} Release" + else + variant="LuCI Trunk" + fi +elif git status >/dev/null 2>/dev/null; then + tag="$(git describe --tags 2>/dev/null)" + branch="$(git symbolic-ref --short -q HEAD 2>/dev/null)" + + if [ -n "$tag" ]; then + variant="LuCI $tag Release" + elif [ "$branch" != "master" ]; then + variant="LuCI ${branch##*-} Branch" + else + variant="LuCI Master" + fi else - variant="LuCI Trunk" + variant="LuCI" fi cat <<EOF > $1 |