From 6339de7f4fef46fb3ad32d1ecf9379f5b5d24ccb Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Mon, 8 Feb 2010 10:25:13 -0500 Subject: release-scripts: parametrize scripts This should make it easier to keep all release scripts alined as it will reduce the difference between them to ideally a few variables Also moves the tdb script in the scripts directory. --- lib/tdb/release-script.sh | 48 ---------------------------- lib/tdb/script/release-script.sh | 67 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+), 48 deletions(-) delete mode 100755 lib/tdb/release-script.sh create mode 100755 lib/tdb/script/release-script.sh (limited to 'lib/tdb') diff --git a/lib/tdb/release-script.sh b/lib/tdb/release-script.sh deleted file mode 100755 index 273ca30be8..0000000000 --- a/lib/tdb/release-script.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -if [ "$1" = "" ]; then - echo "Please provide version string, eg: 1.2.0" - exit 1 -fi - -if [ ! -d "lib/tdb" ]; then - echo "Run this script from the samba base directory." - exit 1 -fi - -git clean -f -x -d lib/tdb -git clean -f -x -d lib/replace - -curbranch=`git branch |grep "^*" | tr -d "* "` - -version=$1 -strver=`echo ${version} | tr "." "-"` - -# Checkout the release tag -git branch -f tdb-release-script-${strver} tdb-${strver} -if [ ! "$?" = "0" ]; then - echo "Unable to checkout tdb-${strver} release" - exit 1 -fi - -git checkout tdb-release-script-${strver} - -# Test configure agrees with us -confver=`grep "^AC_INIT" lib/tdb/configure.ac | tr -d "AC_INIT(tdb, " | tr -d ")"` -if [ ! "$confver" = "$version" ]; then - echo "Wrong version, requested release for ${version}, found ${confver}" - exit 1 -fi - -# Now build tarball -cp -a lib/tdb tdb-${version} -cp -a lib/replace tdb-${version}/libreplace -pushd tdb-${version} -./autogen.sh -popd -tar cvzf tdb-${version}.tar.gz tdb-${version} -rm -fr tdb-${version} - -#Clean up -git checkout $curbranch -git branch -d tdb-release-script-${strver} diff --git a/lib/tdb/script/release-script.sh b/lib/tdb/script/release-script.sh new file mode 100755 index 0000000000..e9a023d7a5 --- /dev/null +++ b/lib/tdb/script/release-script.sh @@ -0,0 +1,67 @@ +#!/bin/bash + +LNAME=tdb +LINCLUDE=include/tdb.h + +if [ "$1" = "" ]; then + echo "Please provide version string, eg: 1.2.0" + exit 1 +fi + +if [ ! -d "lib/${LNAME}" ]; then + echo "Run this script from the samba base directory." + exit 1 +fi + +curbranch=`git branch |grep "^*" | tr -d "* "` + +version=$1 +strver=`echo ${version} | tr "." "-"` + +# Checkout the release tag +git branch -f ${LNAME}-release-script-${strver} ${LNAME}-${strver} +if [ ! "$?" = "0" ]; then + echo "Unable to checkout ${LNAME}-${strver} release" + exit 1 +fi + +function cleanquit { + #Clean up + git checkout $curbranch + git branch -d ${LNAME}-release-script-${strver} + exit $1 +} + +# NOTE: use cleanquit after this point +git checkout ${LNAME}-release-script-${strver} + +# Test configure agrees with us +confver=`grep "^AC_INIT" lib/${LNAME}/configure.ac | tr -d "AC_INIT(${LNAME}, " | tr -d ")"` +if [ ! "$confver" = "$version" ]; then + echo "Wrong version, requested release for ${version}, found ${confver}" + exit 1 +fi + +# Check exports and signatures are up to date +pushd lib/${LNAME} +./script/abi_checks.sh ${LNAME} ${LINCLUDE} +abicheck=$? +popd +if [ ! "$abicheck" = "0" ]; then + echo "ERROR: ABI Checks produced warnings!" + cleanquit 1 +fi + +git clean -f -x -d lib/${LNAME} +git clean -f -x -d lib/replace + +# Now build tarball +cp -a lib/${LNAME} ${LNAME}-${version} +cp -a lib/replace ${LNAME}-${version}/libreplace +pushd ${LNAME}-${version} +./autogen.sh +popd +tar cvzf ${LNAME}-${version}.tar.gz ${LNAME}-${version} +rm -fr ${LNAME}-${version} + +cleanquit 0 -- cgit