X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=version.sh;h=178fc95245e385621176f03f0a698ac89facfb2f;hb=001d30598c75d9bbc3aa80f67f9bdac17692437d;hp=5466ef242d2cecffb886fa5b9a819a8b1b4af846;hpb=762f677e095a40e1927086bb08799c01e05c2ee4;p=x264 diff --git a/version.sh b/version.sh index 5466ef24..178fc952 100755 --- a/version.sh +++ b/version.sh @@ -1,24 +1,28 @@ -#!/bin/bash -[ -n "$1" ] && cd $1 -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}'` - VER_DIFF=$(($LOCALVER-$VER)) - echo "#define X264_REV $VER" - echo "#define X264_REV_DIFF $VER_DIFF" - if [ $VER_DIFF != 0 ] ; then - VER="$VER+$VER_DIFF" +#!/bin/sh + +cd "$(dirname "$0")" >/dev/null && [ -f x264.h ] || exit 1 + +api="$(grep '#define X264_BUILD' < x264.h | sed 's/^.* \([1-9][0-9]*\).*$/\1/')" +ver="x" +version="" + +if [ -d .git ] && command -v git >/dev/null 2>&1 ; then + localver="$(($(git rev-list HEAD | wc -l)))" + if [ "$localver" -gt 1 ] ; then + ver_diff="$(($(git rev-list origin/master..HEAD | wc -l)))" + ver="$((localver-ver_diff))" + echo "#define X264_REV $ver" + echo "#define X264_REV_DIFF $ver_diff" + if [ "$ver_diff" -ne 0 ] ; then + ver="$ver+$ver_diff" + fi + if git status | grep -q "modified:" ; then + ver="${ver}M" + fi + ver="$ver $(git rev-list -n 1 HEAD | cut -c 1-7)" + version=" r$ver" fi - if git status | grep -q "modified:" ; then - VER="${VER}M" - fi - VER="$VER $(git rev-list HEAD -n 1 | cut -c 1-7)" - echo "#define X264_VERSION \" r$VER\"" -else - echo "#define X264_VERSION \"\"" - 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\"" + +echo "#define X264_VERSION \"$version\"" +echo "#define X264_POINTVER \"0.$api.$ver\""