[x264-devel] commit: git compatible version script (Loren Merritt )

git version control git at videolan.org
Tue Mar 11 08:43:39 CET 2008


x264 | branch: master | Loren Merritt <pengvado at akuvian.org> | Sun Mar  9 05:58:55 2008 -0600| [096b39036aad8d363b81e520ad13cee412b0e568]

git compatible version script

> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=096b39036aad8d363b81e520ad13cee412b0e568
---

 version.sh |   21 ++++++++++++++-------
 1 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/version.sh b/version.sh
index a91c48b..37b9908 100755
--- a/version.sh
+++ b/version.sh
@@ -1,12 +1,19 @@
 #!/bin/sh
-VER=`svnversion .`
-if [ "x$VER" != x -a "$VER" != exported ]
-then
-  echo "#define X264_VERSION \" svn-$VER\"" >> config.h
-  VER=`echo $VER | sed -e 's/[^0-9].*//'`
+git-rev-list HEAD | sort > config.git-hash
+LOCALVER=`wc -l config.git-hash | awk '{print $1}'`
+if [ $LOCALVER \> 1 ] ; then
+    VER=`git-rev-list origin/master | sort | join config.git-hash - | wc -l | awk '{print $1}'`
+    if [ $VER != $LOCALVER ] ; then
+        VER="$VER+$(($LOCALVER-$VER))"
+    elif git-status | grep -q "modified:" ; then
+        VER="${VER}M"
+    fi
+    VER="$VER $(git-rev-list HEAD -n 1 | head -c 7)"
+    echo "#define X264_VERSION \" r$VER\"" >> config.h
 else
-  echo "#define X264_VERSION \"\"" >> config.h
-  VER="x"
+    echo "#define X264_VERSION \"\"" >> config.h
+    VER="x"
 fi
+rm -f config.git-hash
 API=`grep '#define X264_BUILD' < x264.h | sed -e 's/.* \([1-9][0-9]*\).*/\1/'`
 echo "#define X264_POINTVER \"0.$API.$VER\"" >> config.h



More information about the x264-devel mailing list