mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
A lame start for a `make release' helper.
Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
a5b8687003
commit
de101410cf
2 changed files with 81 additions and 0 deletions
4
Makefile
4
Makefile
|
@ -312,4 +312,8 @@ clean:
|
||||||
$(VERSION_FILE)
|
$(VERSION_FILE)
|
||||||
rm -rf share .dep
|
rm -rf share .dep
|
||||||
|
|
||||||
|
release:
|
||||||
|
@scripts/check-version -cdr $(VERSION_STRING)
|
||||||
|
# Add other rules (like tar-command) bellow
|
||||||
|
|
||||||
-include $(DEPS)
|
-include $(DEPS)
|
||||||
|
|
77
scripts/check-version
Executable file
77
scripts/check-version
Executable file
|
@ -0,0 +1,77 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# $1 - version string
|
||||||
|
# options:
|
||||||
|
# -c colored grep
|
||||||
|
# -d debug
|
||||||
|
# -r release (exit status error; when called from Makefile)
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
#set -x
|
||||||
|
|
||||||
|
files="Documentation/user-manual.txt Makefile README ReleaseNotes.txt"
|
||||||
|
|
||||||
|
whine() {
|
||||||
|
echo "$0: $*" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
croak() {
|
||||||
|
whine "$*"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
color=n
|
||||||
|
debug=n
|
||||||
|
release=n
|
||||||
|
while getopts cdr opt; do
|
||||||
|
case $opt in
|
||||||
|
c)
|
||||||
|
color=y
|
||||||
|
;;
|
||||||
|
d)
|
||||||
|
debug=y
|
||||||
|
;;
|
||||||
|
r)
|
||||||
|
release=y
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
croak "invalid option"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift $(($OPTIND - 1))
|
||||||
|
|
||||||
|
if [ $debug = y ]; then
|
||||||
|
opts=-n
|
||||||
|
else
|
||||||
|
opts=-q
|
||||||
|
fi
|
||||||
|
[ $color = n ] || opts="${opts:+ }--color"
|
||||||
|
|
||||||
|
v=${1:-}
|
||||||
|
case $v in
|
||||||
|
*-*)
|
||||||
|
# Ignore development versions
|
||||||
|
if [ $release = y ]; then
|
||||||
|
croak "'$v' not a release tag"
|
||||||
|
else
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
''|*[!.0-9]*)
|
||||||
|
croak "invalid version string '$v'"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
sts=0
|
||||||
|
whine "checking for version $v"
|
||||||
|
for f in $files; do
|
||||||
|
grep $opts -EHio "(VERSION=|subsurface[[:blank:]]+)?\<v?$v\>" $f || {
|
||||||
|
msg="'$f' may need updating"
|
||||||
|
if [ $release = y ]; then
|
||||||
|
croak "$msg"
|
||||||
|
else
|
||||||
|
whine "$msg"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
done
|
Loading…
Reference in a new issue