91 lines
2.3 KiB
Plaintext
91 lines
2.3 KiB
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
# upload_dahdi: upload a dahdi tarball to updates.xorcom.com
|
||
|
#
|
||
|
|
||
|
set -e
|
||
|
|
||
|
BRANCH_NAME=1.4
|
||
|
REV=HEAD
|
||
|
DAHDI_BASE=http://svn.digium.com/svn/dahdi
|
||
|
TARBALLS_DIR=$PWD
|
||
|
|
||
|
me=`basename $0`
|
||
|
|
||
|
say() {
|
||
|
echo "$me: $@"
|
||
|
}
|
||
|
|
||
|
usage() {
|
||
|
echo >&2 "$0: Generate snapshot from DAHDI SVN"
|
||
|
echo >&2 ' ($Id$)'
|
||
|
echo >&2 ""
|
||
|
echo >&2 "$0 [-r REV] [-2] [-s]"
|
||
|
echo >&2 "$0 <-h | --help>: This message"
|
||
|
echo >&2 ""
|
||
|
echo >&2 "Options:"
|
||
|
echo >&2 " -2 --dahdi12: Use Asterisk 1.2. Implies -u."
|
||
|
echo >&2 " -r --rev REV: extract xpp-dahdi from this revision ($REV)."
|
||
|
echo >&2 " -s --show: Just show versions. Do nothing"
|
||
|
|
||
|
}
|
||
|
|
||
|
opt_showonly=no
|
||
|
|
||
|
options=`getopt -o 2hr:s --long dahdi12,help,rev:,revision:,show -- "$@"`
|
||
|
if [ $? != 0 ] ; then echo >&2 "Terminating..." ; exit 1 ; fi
|
||
|
|
||
|
# Note the quotes around `$TEMP': they are essential!
|
||
|
eval set -- "$options"
|
||
|
|
||
|
while true ; do
|
||
|
case "$1" in
|
||
|
-2|--dahdi12) BRANCH_NAME=1.2;;
|
||
|
-s|--show) opt_showonly=yes ;;
|
||
|
-r|--rev|--revision) REV="$2"; shift ;;
|
||
|
-h|--help) usage; exit 0;;
|
||
|
--) shift ; break ;;
|
||
|
esac
|
||
|
shift;
|
||
|
done
|
||
|
|
||
|
BRANCH=branches/$BRANCH_NAME
|
||
|
DAHDI_URL=$DAHDI_BASE/$BRANCH
|
||
|
|
||
|
set -e
|
||
|
|
||
|
# Get the name of the "previous version" for this release.
|
||
|
# The idea is to look at the latest tag for that branhch. Tags are
|
||
|
# global, and hence we filter tag names by branch name.
|
||
|
#
|
||
|
# Note: this strips any minor version number.
|
||
|
# e.g: if last releast was 1.4.5.1, this will still return 1.4.5 . Here
|
||
|
# we rely on the fact that the revision number will be added.
|
||
|
dahdi_ver=`svn ls -r $REV $DAHDI_BASE/tags | grep "^$BRANCH_NAME" \
|
||
|
| sed -e "s/\($BRANCH_NAME\.[0-9]\+\)[/.-].*/\1/" \
|
||
|
| sort -nu -t . -k 3 | tail -n 1`
|
||
|
|
||
|
real_rev=`svn info -r $REV $DAHDI_URL \
|
||
|
| awk '/^Last Changed Rev: /{print $4}'`
|
||
|
|
||
|
ver_full="$dahdi_ver.9.svn.$real_rev"
|
||
|
tar_name="dahdi-$ver_full"
|
||
|
tar_ball_full="$TARBALLS_DIR/$tar_name.tar.gz"
|
||
|
|
||
|
say "Version: $ver_full (ver: $dahdi_ver, rev: $real_rev)"
|
||
|
say "Tarball: $tar_ball_full"
|
||
|
|
||
|
if [ "$opt_showonly" = 'yes' ]; then
|
||
|
exit 0;
|
||
|
fi
|
||
|
|
||
|
DAHDI_CHECKOUT_DIR=`mktemp -d dahdi_checkout_dir_XXXXXX`
|
||
|
|
||
|
# Package a tarball from the subversion, using 'make dist':
|
||
|
svn export -q -r $REV $DAHDI_URL $DAHDI_CHECKOUT_DIR/$tar_name
|
||
|
echo "$ver_full" >$DAHDI_CHECKOUT_DIR/$tar_name/.version
|
||
|
tar cz -C $DAHDI_CHECKOUT_DIR -f $tar_ball_full $tar_name
|
||
|
|
||
|
rm -rf $DAHDI_CHECKOUT_DIR
|
||
|
|