]> git.sur5r.net Git - openocd/commitdiff
Add numeric version tag support to release script.
authorzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Wed, 30 Sep 2009 23:20:36 +0000 (23:20 +0000)
committerzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Wed, 30 Sep 2009 23:20:36 +0000 (23:20 +0000)
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

tools/release.sh

index 8df0fa3a8c2c274bc8c6182275d05b1a17033cb3..de0946b78b33f7e1391c6e78bb4fe1db5d274d1e 100755 (executable)
@@ -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