summaryrefslogtreecommitdiffstats
path: root/ctdb/packaging
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2013-08-21 17:24:03 +1000
committerAmitay Isaacs <amitay@gmail.com>2013-08-22 17:00:20 +1000
commitaecd66d0a0b8ff1888b5de4c521437abf0d0bc1b (patch)
treebabbb6ad724c534e0c491f9b2e1439d30874921b /ctdb/packaging
parenta04fb437084a49aad36b5165c0bae7d8b63f68e9 (diff)
downloadsamba-aecd66d0a0b8ff1888b5de4c521437abf0d0bc1b.tar.gz
samba-aecd66d0a0b8ff1888b5de4c521437abf0d0bc1b.tar.xz
samba-aecd66d0a0b8ff1888b5de4c521437abf0d0bc1b.zip
packaging: Remove pushd/popd from maketarball.sh, don't need bash
Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 3ffca990a18cbd31c8bd3ae01c6671d60da58f58)
Diffstat (limited to 'ctdb/packaging')
-rwxr-xr-xctdb/packaging/maketarball.sh79
1 files changed, 34 insertions, 45 deletions
diff --git a/ctdb/packaging/maketarball.sh b/ctdb/packaging/maketarball.sh
index c99bb70759..c27e2ec63c 100755
--- a/ctdb/packaging/maketarball.sh
+++ b/ctdb/packaging/maketarball.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
#
# maketarball.sh - create a tarball from the git branch HEAD
#
@@ -24,18 +24,21 @@
# Optional argument is the directory to which tarball is copied.
#
-DIRNAME=$(dirname $0)
-TOPDIR=${DIRNAME}/..
+TARGETDIR="${1:-${PWD}}" # Default target directory is .
-TARGETDIR="$1"
-if [ -z "${TARGETDIR}" ]; then
- TARGETDIR="."
-fi
+DIRNAME=$(dirname "$0")
+cd -P "${DIRNAME}/.."
+TOPDIR="$PWD"
+
+tmpd=$(mktemp -d) || {
+ echo "Failed to create temporary directory"
+ exit 1
+}
TAR_PREFIX_TMP="ctdb-tmp"
-SPECFILE=/tmp/${TAR_PREFIX_TMP}/packaging/RPM/ctdb.spec
-SPECFILE_IN=${SPECFILE}.in
-VERSION_H=/tmp/${TAR_PREFIX_TMP}/include/ctdb_version.h
+SPECFILE="${tmpd}/${TAR_PREFIX_TMP}/packaging/RPM/ctdb.spec"
+SPECFILE_IN="${SPECFILE}.in"
+VERSION_H="${tmpd}/${TAR_PREFIX_TMP}/include/ctdb_version.h"
if echo | gzip -c --rsyncable - > /dev/null 2>&1 ; then
GZIP="gzip -9 --rsyncable"
@@ -43,17 +46,14 @@ else
GZIP="gzip -9"
fi
-pushd ${TOPDIR}
echo "Creating tarball ... "
-git archive --prefix=${TAR_PREFIX_TMP}/ HEAD | ( cd /tmp ; tar xf - )
-RC=$?
-popd
-if [ $RC -ne 0 ]; then
+git archive --prefix="${TAR_PREFIX_TMP}/" HEAD | ( cd "$tmpd" ; tar xf - )
+if [ $? -ne 0 ]; then
echo "Error calling git archive."
exit 1
fi
-set -- $(${TOPDIR}/packaging/mkversion.sh ${VERSION_H})
+set -- $("${TOPDIR}/packaging/mkversion.sh" "$VERSION_H")
VERSION=$1
RELEASE=$2
if [ -z "$VERSION" -o -z "$RELEASE" ]; then
@@ -68,55 +68,44 @@ sed -e "s/@VERSION@/${VERSION}/g" \
TAR_PREFIX="ctdb-${VERSION}"
TAR_BASE="ctdb-${VERSION}"
-pushd /tmp/${TAR_PREFIX_TMP}
-./autogen.sh
-RC=$?
-if [ $RC -ne 0 ]; then
+cd "${tmpd}/${TAR_PREFIX_TMP}"
+./autogen.sh || {
echo "Error calling autogen.sh."
exit 1
-fi
+}
-make -C doc
-RC=$?
-if [ $RC -ne 0 ]; then
+make -C doc || {
echo "Error building docs."
exit 1
-fi
-popd
+}
-if test "x${DEBIAN_MODE}" = "xyes" ; then
+if [ "$DEBIAN_MODE" = "yes" ] ; then
TAR_PREFIX="ctdb-${VERSION}.orig"
TAR_BASE="ctdb_${VERSION}.orig"
- rm -rf /tmp/${TAR_PREFIX_TMP}/lib/popt
+ rm -rf "${tmpd}/${TAR_PREFIX_TMP}/lib/popt"
fi
-TAR_BALL=${TAR_BASE}.tar
-TAR_GZ_BALL=${TAR_BALL}.gz
+TAR_BALL="${TAR_BASE}.tar"
+TAR_GZ_BALL="${TAR_BALL}.gz"
-mv /tmp/${TAR_PREFIX_TMP} /tmp/${TAR_PREFIX}
+mv "${tmpd}/${TAR_PREFIX_TMP}" "${tmpd}/${TAR_PREFIX}"
-pushd /tmp
-tar cf ${TAR_BALL} ${TAR_PREFIX}
-RC=$?
-if [ $RC -ne 0 ]; then
- popd
+cd "$tmpd"
+tar cf "$TAR_BALL" "$TAR_PREFIX" || {
echo "Creation of tarball failed."
exit 1
-fi
+}
-${GZIP} ${TAR_BALL}
-RC=$?
-if [ $RC -ne 0 ]; then
- popd
+$GZIP "$TAR_BALL" || {
echo "Zipping tarball failed."
exit 1
-fi
+}
-rm -rf ${TAR_PREFIX}
+rm -rf "$TAR_PREFIX"
-popd
+mv "${tmpd}/${TAR_GZ_BALL}" "${TARGETDIR}/"
-mv /tmp/${TAR_GZ_BALL} ${TARGETDIR}/
+rmdir "$tmpd"
echo "Done."
exit 0