diff options
author | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-09-30 23:20:36 +0000 |
---|---|---|
committer | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-09-30 23:20:36 +0000 |
commit | eccd9059d31ab67308dbd17c262fd9e5cdca4754 (patch) | |
tree | 921fd245e9494c6a6bd4a643421af6f817cdf46d /tools | |
parent | 740fd107f2cd4921905403b7af326554fde3a0a2 (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-x | tools/release.sh | 20 |
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 |