3 revision=$(cd "$1" && cat snapshot_version 2> /dev/null)
4 test "$revision" && revision=SVN-r$revision
6 # check for git short hash
7 if ! test "$revision"; then
8 revision=$(cd "$1" && git describe --always 2> /dev/null)
9 test "$revision" && revision=git-$revision
12 # no revision number found
13 test "$revision" || revision=UNKNOWN
15 # releases extract the version number from the VERSION file
16 version=$(cd "$1" && cat VERSION 2> /dev/null)
17 test "$version" || version=$revision
19 test -n "$3" && version=$version-$3
26 NEW_REVISION="#define FFMPEG_VERSION \"$version\""
27 OLD_REVISION=$(cat version.h 2> /dev/null)
29 # Update version.h only on revision changes to avoid spurious rebuilds
30 if test "$NEW_REVISION" != "$OLD_REVISION"; then
31 echo "$NEW_REVISION" > "$2"