aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-09-30 23:20:36 +0000
committerzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-09-30 23:20:36 +0000
commiteccd9059d31ab67308dbd17c262fd9e5cdca4754 (patch)
tree921fd245e9494c6a6bd4a643421af6f817cdf46d /tools
parent740fd107f2cd4921905403b7af326554fde3a0a2 (diff)
Add numeric version tag support to release script.
The release process itself does not use this support yet, but it allows packagers to automate the process of managing their own tags, if they patch the source code before releasing binaries. The release processes should be revised to incorporate this feature to support -rc packages. git-svn-id: svn://svn.berlios.de/openocd/trunk@2786 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'tools')
-rwxr-xr-xtools/release.sh20
1 files changed, 16 insertions, 4 deletions
diff --git a/tools/release.sh b/tools/release.sh
index 8df0fa3a..de0946b7 100755
--- a/tools/release.sh
+++ b/tools/release.sh
@@ -314,15 +314,27 @@ do_version_bump_minor() {
do_version_bump_micro() {
do_version_bump_sed "${PACKAGE_MAJOR_AND_MINOR}.$((PACKAGE_MICRO + 1))"
}
-do_version_bump_rc() {
- die "patch missing: -rc support is not implemented"
+do_version_bump_tag() {
+ local TAG="$1"
+ [ "${TAG}" ] || die "TAG argument is missing"
+ local TAGS="${PACKAGE_VERSION_TAGS}"
+ if has_version_tag "${TAG}"; then
+ local RC=$(echo ${TAGS} | perl -ne "/-${TAG}"'(\d+)/ && print $1')
+ RC=$((${RC} + 1))
+ TAGS=$(echo ${TAGS} | perl -npe "s/-${TAG}[\\d]*/-${TAG}${RC}/")
+ else
+ TAGS="-${TAG}1${PACKAGE_VERSION_TAGS}"
+ fi
+ PACKAGE_VERSION_TAGS="${TAGS}"
+ do_version_bump_sed "${PACKAGE_VERSION_BASE}"
}
+do_version_bump_rc() { do_version_bump_tag 'rc'; }
do_version_bump() {
CMD="$1"
shift
case "${CMD}" in
- major|minor|micro|rc)
- eval "do_version_bump_${CMD}"
+ major|minor|micro|rc|tag)
+ eval "do_version_bump_${CMD}" "$@"
;;
*)
do_version_usage