summaryrefslogtreecommitdiffstats
path: root/git-version-gen
blob: d8689526543d7000a1873e68a7d098f34d3d96ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/sh
SRCDIR=`dirname $0`
if test -n "$1"; then
  VER=$1
else
  if test -r "${SRCDIR}/.git" && test -x "`which git`" ; then
    git update-index -q --refresh
    if ! VER=`git describe --tags --dirty 2>/dev/null`; then
      COMMIT=`git rev-parse --short HEAD`
      DIRTY=`git diff --quiet HEAD || echo "-dirty"`
      VER=`sed -n '1,/RE/s/Version \(.*\)/\1/p' ${SRCDIR}/NEWS`-git-${COMMIT}${DIRTY}
    fi
  else
    if test -f "${SRCDIR}/.tarball-version"; then
      VER=`cat "${SRCDIR}/.tarball-version"`
    fi
  fi
fi
VER=`printf %s "$VER" | head -n1`
printf %s "$VER"