talloc: Fix abi checks in release script
authorSimo Sorce <idra@samba.org>
Mon, 8 Feb 2010 15:05:24 +0000 (10:05 -0500)
committerSimo Sorce <idra@samba.org>
Mon, 8 Feb 2010 15:12:50 +0000 (10:12 -0500)
We must perform abi checks against the version we are going to release.
Not against the current tree we are in.

lib/talloc/script/release-script.sh

index fd5c1eff5db4706633d0167f25be7425fdd3ccd4..2f354ab35a7c0c24f0869bc0dc26a9c6a8418272 100755 (executable)
@@ -10,19 +10,6 @@ if [ ! -d "lib/talloc" ]; then
     exit 1
 fi
 
-# Check exports and signatures are up to date
-pushd lib/talloc
-./script/abi_checks.sh talloc talloc.h
-abicheck=$?
-popd
-if [ ! "$abicheck" = "0" ]; then
-    echo "ERROR: ABI Checks produced warnings!"
-    exit 1
-fi
-
-git clean -f -x -d lib/talloc
-git clean -f -x -d lib/replace
-
 curbranch=`git branch |grep "^*" | tr -d "* "`
 
 version=$1
@@ -35,15 +22,36 @@ if [ ! "$?" = "0" ];  then
     exit 1
 fi
 
+function cleanquit {
+    #Clean up
+    git checkout $curbranch
+    git branch -d talloc-release-script-${strver}
+    exit $1
+}
+
+# NOTE: use cleanquit after this point
 git checkout talloc-release-script-${strver}
 
 # Test configure agrees with us
 confver=`grep "^AC_INIT" lib/talloc/configure.ac | tr -d "AC_INIT(talloc, " | tr -d ")"`
 if [ ! "$confver" = "$version" ]; then
     echo "Wrong version, requested release for ${version}, found ${confver}"
-    exit 1
+    cleanquit 1
+fi
+
+# Check exports and signatures are up to date
+pushd lib/talloc
+./script/abi_checks.sh talloc talloc.h
+abicheck=$?
+popd
+if [ ! "$abicheck" = "0" ]; then
+    echo "ERROR: ABI Checks produced warnings!"
+    cleanquit 1
 fi
 
+git clean -f -x -d lib/talloc
+git clean -f -x -d lib/replace
+
 # Now build tarball
 cp -a lib/talloc talloc-${version}
 cp -a lib/replace talloc-${version}/libreplace
@@ -53,6 +61,5 @@ popd
 tar cvzf talloc-${version}.tar.gz talloc-${version}
 rm -fr talloc-${version}
 
-#Clean up
-git checkout $curbranch
-git branch -d talloc-release-script-${strver}
+cleanquit 0
+