diff --git a/check-release.sh b/check-release.sh new file mode 100755 index 0000000000..a7cf8ecb35 --- /dev/null +++ b/check-release.sh @@ -0,0 +1,70 @@ +#!/bin/sh +set -e + +ver=$1 +dir=libressl-$ver +tarball=$dir.tar.gz +tag=v$ver + +if [ -z "$LIBRESSL_SSH" ]; then + if ! curl -v 1>/dev/null 2>&1; then + download="curl -O" + elif echo quit | ftp 1>/dev/null 2>&1; then + download=ftp + else + echo "need 'ftp' or 'curl' to verify" + exit + fi +fi + +if [ "$ver" = "" ]; then + echo "please specify a version to check, e.g. $0 2.1.2" + exit +fi + +if [ ! -e releases/$tarball ]; then + mkdir -p releases + rm -f $tarball + if [ -z "$LIBRESSL_SSH" ]; then + $download http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/$tarball releases/ + mv $tarball releases + else + scp $LIBRESSL_SSH/$tarball releases + fi + (cd releases; tar zxvf $tarball) +fi + +if [ ! -e gen-releases/$tarball ]; then + rm -fr tests man include ssl crypto libtls-standalone/VERSION INSTALL + git checkout OPENBSD_BRANCH update.sh tests man include ssl crypto + git checkout $tag + echo "libressl-$tag" > OPENBSD_BRANCH + sed -i 's/git pull --rebase//' update.sh + ./autogen.sh + ./configure --enable-libtls + make dist + + mkdir -p gen-releases + mv $tarball gen-releases + + git checkout OPENBSD_BRANCH update.sh + git checkout master +fi + +(cd gen-releases; rm -fr $dir; tar zxf $tarball) +(cd releases; rm -fr $dir; tar zxf $tarball) + +echo "differences between release and regenerated release tag:" +diff -urN \ + -x *.3 \ + -x Makefile.in \ + -x aclocal.m4 \ + -x compile \ + -x config.guess \ + -x config.sub \ + -x configure \ + -x depcomp \ + -x install-sh \ + -x missing \ + -x test-driver \ + releases/$dir gen-releases/$dir diff --git a/gen-openbsd-tags.sh b/gen-openbsd-tags.sh new file mode 100755 index 0000000000..a500c76726 --- /dev/null +++ b/gen-openbsd-tags.sh @@ -0,0 +1,20 @@ +#!/bin/sh +set -e + +for tag in `git tag`; do + branch=master + if [[ $tag = v2.0* ]]; then + branch=OPENBSD_5_6 + elif [[ $tag = v2.1* ]]; then + branch=OPENBSD_5_7 + elif [[ $tag = v2.2* ]]; then + branch=OPENBSD_5_8 + elif [[ $tag = v2.3* ]]; then + branch=OPENBSD_5_9 + fi + # adjust for 9 hour timezone delta between trees + release_ts=$((`git show -s --format=%ct $tag|tail -n1` + 32400)) + commit=`git -C openbsd rev-list -n 1 --before=$release_ts $branch` + git -C openbsd tag -f libressl-$tag $commit + echo Tagged $tag as $commit in openbsd +done