source:
git/make_release
        
        | Last change on this file was 10ddcbc, checked in by , 13 months ago | |
|---|---|
            
  | 
        |
| File size: 1.6 KB | |
| Rev | Line | |
|---|---|---|
| [d7acd89] | 1 | #! /bin/sh | 
| [ae1309f] | 2 | |
| [088d34f] | 3 | # This script automates most of the process on making a new release. | 
| 4 | ||
| [098acb1] | 5 | set -e | 
| 6 | ||
| [ae1309f] | 7 | rel=yes | 
| [e66be9a] | 8 | if test x"$1" = x-t ; then | 
| [ae1309f] | 9 | rel= | 
| [f30265a0] | 10 | shift | 
| [d7acd89] | 11 | fi | 
| [dd7674d] | 12 | |
| [ae1309f] | 13 | if test x"$rel" = xyes ; then | 
| [9d5aa63] | 14 | # Check there are no uncommitted changes. | 
| 15 | if git commit -a --dry-run >/dev/null 2>/dev/null ; then | |
| 16 | echo 'There are uncommitted changes - please rectify' | |
| [d2980d2] | 17 | echo 'If you just want to test, run with option -t' | 
| 18 | exit 1 | |
| 19 | fi | |
| [098acb1] | 20 | |
| [d2980d2] | 21 | test ! -f Makefile || make distclean | 
| 22 | cp -u /usr/share/misc/config.guess . | |
| 23 | cp -u /usr/share/misc/config.sub . | |
| [f5baa8c] | 24 | mv INSTALL INSTALL.keep | 
| [d2980d2] | 25 | autoreconf --force -i | 
| [f5baa8c] | 26 | mv INSTALL.keep INSTALL | 
| [d2980d2] | 27 | ./configure CC=gcc CXX=g++ | 
| [148c993] | 28 | # Don't error out on new GCC8 and GCC9 warnings for now. | 
| 29 | make CFLAGS='-Werror' CXXFLAGS='-Werror -Wno-error=cast-function-type -Wno-error=deprecated-copy -Wno-error=ignored-qualifiers' | |
| [8ea94ea] | 30 | VALGRIND=valgrind make distcheck VERBOSE=1 | 
| [f78ad72] | 31 | else | 
| [d2980d2] | 32 | make dist | 
| [e719df1] | 33 | fi | 
| [098acb1] | 34 | |
| [d2980d2] | 35 | if test x"$rel" = xyes ; then | 
| 36 | rm -rf "$tardir" | |
| [004b1c2] | 37 | else | 
| 38 | exit 0 | |
| [d2980d2] | 39 | fi | 
| [7b12c6d] | 40 | |
| [9c9fd6b] | 41 | VERSION=`sed 's/^VERSION *= *//p;d' Makefile` | 
| [f6edb9e] | 42 | HOST=thyestes.tartarus.org | 
| 43 | ||
| 44 | echo 'Tagging' | |
| 45 | git tag -s -m"Survex $VERSION" "v$VERSION" | |
| 46 | ||
| 47 | echo 'Pushing' | |
| 48 | git push --follow-tags | |
| 49 | ssh "$HOST" bin/survex-git-mirror | |
| 50 | ||
| [10ddcbc] | 51 | msw=survex-microsoft-windows-$VERSION.exe | 
| 52 | echo "Download CI built microsoft-windows-installer.zip and unzip" | |
| 53 | echo "putting $msw into `pwd`" | |
| [f6edb9e] | 54 | |
| [10ddcbc] | 55 | while test ! -f "$msw" ; do sleep 1 ; done | 
| [f6edb9e] | 56 | |
| [10ddcbc] | 57 | FILES="survex-$VERSION.tar.gz $msw" | 
| [f4671eb] | 58 | echo "SHA256 checksums:" | 
| 59 | sha256sum $FILES | |
| [8430216] | 60 | echo | 
| 61 | ||
| [179a57b] | 62 | for f in $FILES ; do | 
| [201310c] | 63 | gpg --detach-sign --armour "$f" | 
| [179a57b] | 64 | FILES="$FILES $f.asc" | 
| 65 | done | |
| 66 | ||
| [f6edb9e] | 67 | echo "To upload to the webserver, run:" | 
| [e11c235] | 68 | |
| 69 | echo ssh "$HOST" mkdir /srv/www/survex.com/software/"$VERSION" | |
| [8430216] | 70 | echo scp $FILES "$HOST":/srv/www/survex.com/software/"$VERSION" | 
Note: See TracBrowser
        for help on using the repository browser.
    