[Pkg-voip-commits] [dahdi-tools] 109/285: build_tools/make_version: Teach version string about git.

tzafrir at debian.org tzafrir at debian.org
Thu Jul 7 19:18:39 UTC 2016


This is an automated email from the git hooks/post-receive script.

tzafrir pushed a commit to branch master
in repository dahdi-tools.

commit 025985d9b7b31a117651b9a29a84043014e9d26b
Author: Shaun Ruffell <sruffell at digium.com>
Date:   Wed Jun 12 12:03:55 2013 -0500

    build_tools/make_version: Teach version string about git.
    
    This copies in the make_version script from DAHDI-Linux to allow the version to
    be properly reported from builds in git checkouts.
    
    Signed-off-by: Shaun Ruffell <sruffell at digium.com>
    Signed-off-by: Russ Meyerriecks <rmeyerriecks at digium.com>
---
 Makefile                 |  8 +-----
 build_tools/make_version | 70 ++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 69 insertions(+), 9 deletions(-)

diff --git a/Makefile b/Makefile
index 62f430a..54bdefa 100644
--- a/Makefile
+++ b/Makefile
@@ -67,13 +67,7 @@ ifneq (,$(NETSCR_DIR))
   COPY_NETSCR	:= install -D ifup-hdlc $(NETSCR_TARGET)
 endif
 
-ifneq ($(wildcard .version),)
-  TOOLSVERSION:=$(shell cat .version)
-else
-ifneq ($(wildcard .svn),)
-  TOOLSVERSION=$(shell build_tools/make_version . dahdi/tools)
-endif
-endif
+TOOLSVERSION=$(shell build_tools/make_version . dahdi/tools)
 
 LTZ_A:=libtonezone.a
 LTZ_A_OBJS:=zonedata.o tonezone.o version.o
diff --git a/build_tools/make_version b/build_tools/make_version
index e6caaa2..319842b 100755
--- a/build_tools/make_version
+++ b/build_tools/make_version
@@ -1,10 +1,10 @@
 #!/bin/sh
 
 if [ -f ${1}/.version ]; then
-	cat ${1}.version
+	cat ${1}/.version
 elif [ -f ${1}/.svnrevision ]; then
 	echo SVN-`cat ${1}/.svnbranch`-r`cat ${1}/.svnrevision`
-elif [ -d .svn ]; then
+elif [ -d ${1}/.svn ]; then
     PARTS=`LANG=C svn info ${1} | grep URL | awk '{print $2;}' | sed -e s:^.*/svn/${2}/:: | sed -e 's:/: :g'`
     BRANCH=0
     TEAM=0
@@ -53,4 +53,70 @@ elif [ -d .svn ]; then
     done
     
     echo SVN-${RESULT##-}-r${REV}
+elif [ -d ${1}/.git ]; then
+    # If the first log commit messages indicates that this is checked into
+    # subversion, we'll just use the SVN- form of the revision.
+    MODIFIED=""
+    SVN_REV=`git log --pretty=full -1 | grep -F "git-svn-id:" | sed -e "s/.*\@\([^\s]*\)\s.*/\1/g"`
+    if [ -z "$SVN_REV" ]; then
+        VERSION=`git describe --tags --dirty=M 2> /dev/null | sed -e "s/^v\([0-9]\)/\1/"`
+        if [ $? -ne 0 ]; then
+            if [ "`git ls-files -m | wc -l`" != "0" ]; then
+                MODIFIED="M"
+            fi
+            # Some older versions of git do not support all the above
+            # options.
+            VERSION=GIT-`git rev-parse --short --verify HEAD`${MODIFIED}
+        fi
+        echo ${VERSION}
+    else
+        PARTS=`LANG=C git log --pretty=full | grep -F "git-svn-id:" | head -1 | awk '{print $2;}' | sed -e s:^.*/svn/$2/:: | sed -e 's:/: :g' | sed -e 's/@.*$//g'`
+        BRANCH=0
+        TEAM=0
+
+        if [ "`git ls-files -m | wc -l`" != "0" ]; then
+            MODIFIED="M"
+        fi
+
+        if [ "${PARTS}" = "trunk" ]; then
+            echo SVN-'trunk'-r${SVN_REV}${MODIFIED}
+            exit 0
+        fi
+
+        for PART in $PARTS
+          do
+              if [ ${BRANCH} != 0 ]; then
+              RESULT="${RESULT}-${PART}"
+              break
+          fi
+
+          if [ ${TEAM} != 0 ]; then
+              RESULT="${RESULT}-${PART}"
+              continue
+          fi
+
+          if [ "${PART}" = "branches" ]; then
+              BRANCH=1
+              RESULT="branch"
+              continue
+          fi
+
+          if [ "${PART}" = "tags" ]; then
+              BRANCH=1
+              RESULT="tag"
+              continue
+          fi
+
+          if [ "${PART}" = "team" ]; then
+              TEAM=1
+              continue
+          fi
+        done
+
+        echo SVN-${RESULT##-}-r${SVN_REV}${MODIFIED}
+    fi
+else
+	# Use the directory information in the absence of any other version
+	# information
+	pwd -P
 fi

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-voip/dahdi-tools.git



More information about the Pkg-voip-commits mailing list