aboutsummaryrefslogtreecommitdiffstats
path: root/trunk/build_tools/make_version
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/build_tools/make_version')
-rwxr-xr-xtrunk/build_tools/make_version66
1 files changed, 66 insertions, 0 deletions
diff --git a/trunk/build_tools/make_version b/trunk/build_tools/make_version
new file mode 100755
index 000000000..4e9901dc5
--- /dev/null
+++ b/trunk/build_tools/make_version
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+if [ -f ${1}/.version ]; then
+ cat ${1}/.version
+elif [ -d .svn ]; then
+ PARTS=`LANG=C svn info ${1} | ${GREP} URL | ${AWK} '{print $2;}' | sed -e 's:^.*/svn/asterisk/::' | sed -e 's:/: :g'`
+ BRANCH=0
+ TEAM=0
+ TAG=0
+
+ REV=`svnversion -c ${1} | cut -d: -f2`
+
+ BASE=`LANG=C svn pg svnmerge-integrated ${1} | cut -d: -f1`
+
+ if [ "${PARTS}" = "trunk" ] ; then
+ echo SVN-trunk-r${REV}
+ exit 0
+ fi
+
+ for PART in $PARTS ; do
+ if [ ${TAG} != 0 ] ; then
+ RESULT="${PART}"
+ break
+ fi
+
+ if [ ${BRANCH} != 0 ] ; then
+ if [ -z ${RESULT} ] ; then
+ RESULT="${PART}"
+ else
+ RESULT="${RESULT}-${PART}"
+ fi
+ break
+ fi
+
+ if [ ${TEAM} != 0 ] ; then
+ if [ -z ${RESULT} ] ; then
+ RESULT="${PART}"
+ else
+ RESULT="${RESULT}-${PART}"
+ fi
+ continue
+ fi
+
+ if [ "${PART}" = "branches" ] ; then
+ BRANCH=1
+ RESULT="branch"
+ continue
+ fi
+
+ if [ "${PART}" = "tags" ] ; then
+ TAG=1
+ continue
+ fi
+
+ if [ "${PART}" = "team" ] ; then
+ TEAM=1
+ continue
+ fi
+ done
+
+ if [ ${TAG} != 0 ] ; then
+ echo ${RESULT}
+ else
+ echo SVN-${RESULT}-r${REV}${BASE:+-${BASE}}
+ fi
+fi