mirror of
https://github.com/mpv-player/mpv
synced 2024-08-20 08:55:06 +02:00
![wm4](/assets/img/avatar_default.png)
With the way I've been doing releases in the release/0.1 branch, this
proved completely useless. You need to write the VERSION file anyway,
and since we use github's automatically generated tarballs (via its
release system), the VERSION file needs to be in the git revision of
a release anyway. git master on the other hand displayed the v0.1.0
tag, because the tag is within the master branch.
This essentially reverts commit b27f65a
. Now just print the contents
of the VERSION file if it exists, and likewise, we append the git
revision if it exists. (Do that even if VERSION exists, because this
way we can tell if someone is using the release branch at an in-between
point where no new release has been made yet.)
55 lines
1.2 KiB
Bash
Executable File
55 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
export LC_ALL=C
|
|
|
|
for ac_option do
|
|
case "$ac_option" in
|
|
--extra=*)
|
|
extra="-$option"
|
|
;;
|
|
--print)
|
|
print=yes
|
|
;;
|
|
*)
|
|
echo "Unknown parameter: $option" >&2
|
|
exit 1
|
|
;;
|
|
|
|
esac
|
|
done
|
|
|
|
# Extract revision number from file used by daily tarball snapshots
|
|
# or from "git describe" output
|
|
git_revision=$(cat snapshot_version 2> /dev/null)
|
|
test $git_revision || test ! -e .git || git_revision=`git rev-parse --short HEAD`
|
|
test $git_revision && git_revision=git-$git_revision
|
|
version="$git_revision"
|
|
|
|
# releases extract the version number from the VERSION file
|
|
releaseversion=$(cat VERSION 2> /dev/null)
|
|
if test $releaseversion ; then
|
|
test $version && version="-$version"
|
|
version="$releaseversion$version"
|
|
fi
|
|
|
|
test $version || version=UNKNOWN
|
|
|
|
VERSION="${version}${extra}"
|
|
|
|
if test "$print" = yes ; then
|
|
echo "$VERSION"
|
|
exit 0
|
|
fi
|
|
|
|
NEW_REVISION="#define VERSION \"${VERSION}\""
|
|
OLD_REVISION=$(head -n 1 version.h 2> /dev/null)
|
|
BUILDDATE="#define BUILDDATE \"$(date)\""
|
|
|
|
# Update version.h only on revision changes to avoid spurious rebuilds
|
|
if test "$NEW_REVISION" != "$OLD_REVISION"; then
|
|
cat <<EOF > version.h
|
|
$NEW_REVISION
|
|
$BUILDDATE
|
|
EOF
|
|
fi
|