1bb0677cdSJon Dugan#!/bin/sh 2bb0677cdSJon Dugan 3bb0677cdSJon Duganproj="iperf" 4bb0677cdSJon Dugan 5*a844d3baSBruce A. Mahif [ "x$2" != "x" ]; then 6*a844d3baSBruce A. Mahtag=$2 7*a844d3baSBruce A. Mahelse 88c6e09a1SJon M. Dugantag=`awk '/IPERF_VERSION / { 9bb0677cdSJon Dugan gsub(/"/, "", $3); 10bb0677cdSJon Dugan print $3 }' src/version.h` 11*a844d3baSBruce A. Mahfi 12bb0677cdSJon Dugan 138c6e09a1SJon M. Dugandirname=`echo $tag $proj | awk '{ 14bb0677cdSJon Dugan gsub(/-ALPHA/, "a", $1); 15bb0677cdSJon Dugan gsub(/-BETA/, "b", $1); 16bb0677cdSJon Dugan gsub(/-RELEASE/, "", $1); 17bb0677cdSJon Dugan print $2"-"$1 }'` 18bb0677cdSJon Dugan 19*a844d3baSBruce A. Mah# echo tag $tag 20*a844d3baSBruce A. Mah# echo dirname $dirname 21bb0677cdSJon Dugan 22bb0677cdSJon Dugando_tag () 23bb0677cdSJon Dugan{ 248c6e09a1SJon M. Dugan hg tag -m "tagging $tag" $tag 25bb0677cdSJon Dugan} 26bb0677cdSJon Dugan 27bb0677cdSJon Dugando_tar () 28bb0677cdSJon Dugan{ 295bafe6e6SJon M. Dugan tarball=${dirname}.tar.gz 30*a844d3baSBruce A. Mah rm -f ${tarball} 31*a844d3baSBruce A. Mah hg archive -t tgz -p ${dirname} -X .hg\* -r ${tag} ${tarball} 32*a844d3baSBruce A. Mah 33*a844d3baSBruce A. Mah # Compute SHA256 hash 34*a844d3baSBruce A. Mah case `uname -s` in 35*a844d3baSBruce A. Mah FreeBSD) sha=sha256 ;; 36*a844d3baSBruce A. Mah Linux) sha=sha256sum ;; 37*a844d3baSBruce A. Mah Darwin) sha="shasum -a 256" ;; 38*a844d3baSBruce A. Mah *) sha=echo ;; 39*a844d3baSBruce A. Mah esac 40*a844d3baSBruce A. Mah ${sha} ${tarball} 415bafe6e6SJon M. Dugan} 425bafe6e6SJon M. Dugan 435bafe6e6SJon M. Duganusage () 445bafe6e6SJon M. Dugan{ 455bafe6e6SJon M. Dugan cat <<EOF 465bafe6e6SJon M. Dugan$0: tag|tar 475bafe6e6SJon M. Dugan 48*a844d3baSBruce A. Mah tag -- create a tag 49*a844d3baSBruce A. Mah tar -- create a tarball from a tag 505bafe6e6SJon M. Dugan 515bafe6e6SJon M. DuganGeneral use is to do: 525bafe6e6SJon M. Dugan 535bafe6e6SJon M. Dugan./$0 tag 545bafe6e6SJon M. Dugan./$0 tar 55*a844d3baSBruce A. Mah 56*a844d3baSBruce A. MahAn optional argument may be specified to both the tag and tar 57*a844d3baSBruce A. Mahsubcommands to explicitly specify a tag string. If not specified, the 58*a844d3baSBruce A. Mahcontents of src/version.h are used. 59*a844d3baSBruce A. Mah 605bafe6e6SJon M. DuganEOF 61bb0677cdSJon Dugan} 62bb0677cdSJon Dugan 63bb0677cdSJon Dugancase $1 in 64bb0677cdSJon Dugan tag) do_tag ;; 65bb0677cdSJon Dugan tar) do_tar ;; 665bafe6e6SJon M. Dugan *) echo "unknown command: $1"; usage ;; 67bb0677cdSJon Duganesac 68bb0677cdSJon Dugan 69bb0677cdSJon Duganexit 70