]> git.ipfire.org Git - thirdparty/squid.git/blob - mkrelease.sh
Fix a small keyboard typo / vi ghost..
[thirdparty/squid.git] / mkrelease.sh
1 #!/bin/sh -ex
2 if [ $# -ne 1 -a $# -ne 2 ]; then
3 echo "Usage: $0 revision [destination]"
4 exit 1
5 fi
6 package=squid
7 module=squid3
8 rev=`echo $1 | sed -e "s/^${package}-//"`
9 name=${package}-${rev}
10 tag=`echo ${name} | tr a-z.- A-Z__`
11 startdir=$PWD/
12 dst=${2:-$PWD}/
13 RELEASE_TIME=`date +%s`
14
15 tmpdir=${TMPDIR:-${PWD}}/${name}-mkrelease
16
17 CVSROOT=${CVSROOT:-/server/cvs-server/squid}
18 export CVSROOT
19
20 rm -rf $name.tar.gz $tmpdir
21 trap "rm -rf $tmpdir" 0
22
23 cvs -Q export -d $tmpdir -r $tag $module
24 if [ ! -f $tmpdir/configure ]; then
25 echo "ERROR! Tag $tag not found in $module"
26 fi
27
28 cd $tmpdir
29 eval `grep ^VERSION= configure | sed -e 's/-CVS$//'`
30 eval `grep ^PACKAGE= configure`
31 if [ ${name} != ${PACKAGE}-${VERSION} ]; then
32 echo "ERROR! The version numbers does not match!"
33 echo "${name} != ${PACKAGE}-${VERSION}"
34 exit 1
35 fi
36 RELEASE=`echo $VERSION | cut -d. -f1,2 | cut -d- -f1`
37 ed -s configure.in <<EOS
38 g/${VERSION}-CVS/ s//${VERSION}/
39 w
40 EOS
41 ed -s configure <<EOS
42 g/${VERSION}-CVS/ s//${VERSION}/
43 w
44 EOS
45 ed -s include/version.h <<EOS
46 g/squid_curtime/ s//${RELEASE_TIME}/
47 w
48 EOS
49
50 ./configure --silent
51 make dist-all
52
53 cd $startdir
54 cp -p $tmpdir/${name}.tar.gz $dst
55 cp -p $tmpdir/${name}.tar.bz2 $dst
56 cp -p $tmpdir/CONTRIBUTORS $dst/CONTRIBUTORS.txt
57 cp -p $tmpdir/COPYING $dst/COPYING.txt
58 cp -p $tmpdir/COPYRIGHT $dst/COPYRIGHT.txt
59 cp -p $tmpdir/CREDITS $dst/CREDITS.txt
60 cp -p $tmpdir/ChangeLog $dst/ChangeLog.txt
61 if [ -f $tmpdir/doc/release-notes/release-$RELEASE.html ]; then
62 cp -p $tmpdir/doc/release-notes/release-$RELEASE.html $dst/RELEASENOTES.html
63 fi