From: Zachary T Welch Date: Thu, 22 Oct 2009 08:38:22 +0000 (-0700) Subject: Factor release version functions into new script. X-Git-Tag: v0.3.0-rc0~7 X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=commitdiff_plain;h=c970d03ddb7084713533c935864df18a6828d21a Factor release version functions into new script. --- diff --git a/tools/release/helpers.sh b/tools/release/helpers.sh new file mode 100644 index 0000000000..2dd5bae15a --- /dev/null +++ b/tools/release/helpers.sh @@ -0,0 +1,60 @@ +#!/bin/sh -e + +die() { + echo "$@" >&2 + exit 1 +} + +package_info_load_name() { + grep AC_INIT configure.in | perl -ne 's/^.+\(\[([-\w]*)\],.+$/$1/ and print' +} +package_info_load_version() { + grep AC_INIT configure.in | perl -ne 's/^.+\[([-\w\.]*)\],$/$1/ and print' +} + +package_info_load() { + [ -f "configure.in" ] || \ + die "package_info_load: configure.in is missing" + + PACKAGE_NAME="$(package_info_load_name)" + # todo: fix this + PACKAGE_TARNAME="${PACKAGE_NAME}" + + PACKAGE_VERSION="$(package_info_load_version)" + + [ "${PACKAGE_NAME}" -a "${PACKAGE_VERSION}" ] || \ + die "package information is missing from configure script" + + PACKAGE_VERSION_TAGS= + [ "${PACKAGE_VERSION/-/}" = "${PACKAGE_VERSION}" ] || \ + PACKAGE_VERSION_TAGS="-${PACKAGE_VERSION#*-}" + PACKAGE_VERSION_BASE="${PACKAGE_VERSION%%-*}" + PACKAGE_MICRO="${PACKAGE_VERSION_BASE##*.}" + PACKAGE_MAJOR_AND_MINOR="${PACKAGE_VERSION_BASE%.*}" + PACKAGE_MAJOR="${PACKAGE_MAJOR_AND_MINOR%.*}" + PACKAGE_MINOR="${PACKAGE_MAJOR_AND_MINOR#*.}" + + [ "${RELEASE_FINAL}" ] \ + && RELEASE_VERSION="${PACKAGE_VERSION_BASE}" \ + || RELEASE_VERSION="${PACKAGE_VERSION/-dev/}" + PACKAGE_RELEASE="${PACKAGE_TARNAME}-${RELEASE_VERSION}" + PACKAGE_STRING="${PACKAGE_NAME} ${PACKAGE_VERSION}" +} + +package_info_show() { + cat <