release-scripts: parametrize scripts
authorSimo Sorce <idra@samba.org>
Mon, 8 Feb 2010 15:25:13 +0000 (10:25 -0500)
committerSimo Sorce <idra@samba.org>
Mon, 8 Feb 2010 15:29:06 +0000 (10:29 -0500)
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/talloc/script/release-script.sh
lib/tdb/release-script.sh [deleted file]
lib/tdb/script/release-script.sh [new file with mode: 0755]

index 2f354ab35a7c0c24f0869bc0dc26a9c6a8418272..4b8aac7d3c418b30d5c866181a12ad13a5da8120 100755 (executable)
@@ -1,11 +1,14 @@
 #!/bin/bash
 
+LNAME=talloc
+LINCLUDE=talloc.h
+
 if [ "$1" = "" ]; then
     echo "Please provide version string, eg: 1.2.0"
     exit 1
 fi
 
-if [ ! -d "lib/talloc" ]; then
+if [ ! -d "lib/${LNAME}" ]; then
     echo "Run this script from the samba base directory."
     exit 1
 fi
@@ -16,32 +19,32 @@ version=$1
 strver=`echo ${version} | tr "." "-"`
 
 # Checkout the release tag
-git branch -f talloc-release-script-${strver} talloc-${strver}
+git branch -f ${LNAME}-release-script-${strver} ${LNAME}-${strver}
 if [ ! "$?" = "0" ];  then
-    echo "Unable to checkout talloc-${strver} release"
+    echo "Unable to checkout ${LNAME}-${strver} release"
     exit 1
 fi
 
 function cleanquit {
     #Clean up
     git checkout $curbranch
-    git branch -d talloc-release-script-${strver}
+    git branch -d ${LNAME}-release-script-${strver}
     exit $1
 }
 
 # NOTE: use cleanquit after this point
-git checkout talloc-release-script-${strver}
+git checkout ${LNAME}-release-script-${strver}
 
 # Test configure agrees with us
-confver=`grep "^AC_INIT" lib/talloc/configure.ac | tr -d "AC_INIT(talloc, " | tr -d ")"`
+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}"
     cleanquit 1
 fi
 
 # Check exports and signatures are up to date
-pushd lib/talloc
-./script/abi_checks.sh talloc talloc.h
+pushd lib/${LNAME}
+./script/abi_checks.sh ${LNAME} ${LINCLUDE}
 abicheck=$?
 popd
 if [ ! "$abicheck" = "0" ]; then
@@ -49,17 +52,17 @@ if [ ! "$abicheck" = "0" ]; then
     cleanquit 1
 fi
 
-git clean -f -x -d lib/talloc
+git clean -f -x -d lib/${LNAME}
 git clean -f -x -d lib/replace
 
 # Now build tarball
-cp -a lib/talloc talloc-${version}
-cp -a lib/replace talloc-${version}/libreplace
-pushd talloc-${version}
+cp -a lib/${LNAME} ${LNAME}-${version}
+cp -a lib/replace ${LNAME}-${version}/libreplace
+pushd ${LNAME}-${version}
 ./autogen.sh
 popd
-tar cvzf talloc-${version}.tar.gz talloc-${version}
-rm -fr talloc-${version}
+tar cvzf ${LNAME}-${version}.tar.gz ${LNAME}-${version}
+rm -fr ${LNAME}-${version}
 
 cleanquit 0
 
diff --git a/lib/tdb/release-script.sh b/lib/tdb/release-script.sh
deleted file mode 100755 (executable)
index 273ca30..0000000
+++ /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 (executable)
index 0000000..e9a023d
--- /dev/null
@@ -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