chiark / gitweb /
Proper version.h.
[userv.git] / buildship
index 2627ae17b82005f822714246e63484a3d7f287f9..e2df0f676a3fd0eb1354ba1e6a26a6a3ea8baf0f 100755 (executable)
--- a/buildship
+++ b/buildship
@@ -1,10 +1,43 @@
 #!/bin/sh
-if test $# = 0
+# to release, check out a fresh copy and then run this
+
+set -e
+version=`sed -n 's/^#define VERSION \".*\" *$/\1/'
+targz=userv-$version.tar.gz
+tag=`echo release-$version | sed -e 's/\./-/g'`
+
+echo >&2 "*** Tagging (version $version, tag $tag) ..."
+cvs tag -F -c $tag
+
+echo >&2 '*** Generating pre-built files ...'
+autoconf
+autoheader
+./configure
+make ship VERSION=$version
+
+cd shipcheck
+
+echo >&2 '*** Checking whether identical to repository version ...'
+tar zxf $targz
+cvs co -r $tag userv
+cd userv-$version
+cp -r . ../userv/.
+cd ../userv
+if test "x`cvs -n update`" != x
 then
-       echo >&2 'usage: buildship VERSION=<whatever>'
+       echo >&2 mismatch:
+       cvs -n update
        exit 1
 fi
-autoconf
-autoheader
+cd ..
+rm -rf userv
+
+echo >&2 '*** Doing test build ...'
+cd userv-$version
 ./configure
-make ship "$@"
+make
+
+cd ../..
+
+echo >&2 "*** OK.  Distribution file is ../$targz."
+mv -f shipcheck/$targz ..