]> git.ipfire.org Git - thirdparty/squid.git/blame - mksnapshot.sh
Merged from trunk.
[thirdparty/squid.git] / mksnapshot.sh
CommitLineData
7aef1654 1#!/bin/sh -e
39e4ea99 2
79d7c801 3if [ $# -lt 1 ]; then
7aef1654 4 echo "Usage: $0 [branch]"
39e4ea99 5 echo "Where [branch] is the path under /bzr/ to the branch to snapshot."
7aef1654 6 exit 1
7fi
39e4ea99 8# VCS details
e14c0072 9module=squid3
39e4ea99
HN
10BZRROOT=${BZRROOT:-/bzr}
11
12# generate a tarball name from the branch ($1) note that trunk is at
13# /bzr/trunk, but we call it HEAD for consistency with CVS (squid 2.x), and
14# branches are in /bzr/branches/ but we don't want 'branches/' in the tarball
15# name so we strip that.
39e4ea99 16branchpath=${1:-trunk}
79d7c801 17tag=${2:-`basename $branchpath`}
7aef1654 18startdir=$PWD
10f7190b 19date=`env TZ=GMT date +%Y%m%d`
7aef1654 20
bf97dee2 21tmpdir=${TMPDIR:-${PWD}}/${module}-${tag}-mksnapshot
7aef1654 22
7aef1654 23rm -rf $tmpdir
24trap "rm -rf $tmpdir" 0
25
19be127e 26rm -f ${tag}.out
f3aaab79 27bzr export $tmpdir $BZRROOT/$module/$branchpath || exit 1
045442b0
HN
28if [ ! -f $tmpdir/configyre ] && [ -f $tmpdir/configure.in ]; then
29 sh -c "cd $tmpdir && ./bootstrap.sh"
30fi
7aef1654 31if [ ! -f $tmpdir/configure ]; then
e14c0072 32 echo "ERROR! Tag $tag not found in $module"
7aef1654 33fi
34
35cd $tmpdir
d81d6f38 36eval `grep "^ *VERSION=" configure | sed -e 's/-BZR//' | sed -e 's/-CVS//'`
66d21f95 37eval `grep "^ *PACKAGE=" configure`
7aef1654 38ed -s configure.in <<EOS
d81d6f38 39g/${VERSION}-[A-Z]*/ s//${VERSION}-${date}/
7aef1654 40w
41EOS
42ed -s configure <<EOS
d81d6f38 43g/${VERSION}-[A-Z]*/ s//${VERSION}-${date}/
7aef1654 44w
45EOS
46
47./configure --silent
19be127e 48make -s dist-all
7aef1654 49
05a55a90 50basetarball=/server/httpd/htdocs/squid-cache.org/Versions/v`echo $VERSION | cut -d. -f1`/`echo $VERSION | cut -d. -f-2|cut -d- -f1`/${PACKAGE}-${VERSION}.tar.bz2
79325308 51if (echo $VERSION | grep PRE) || (echo $VERSION | grep STABLE); then
79325308 52 if [ -f $basetarball ]; then
53 tar jxf ${PACKAGE}-${VERSION}-${date}.tar.bz2
54 tar jxf $basetarball
79d7c801 55 echo "Differences from ${PACKAGE}-${VERSION} to ${PACKAGE}-${VERSION}-${date}" >${PACKAGE}-${VERSION}-${date}.diff
79325308 56 diff -ruN ${PACKAGE}-${VERSION} ${PACKAGE}-${VERSION}-${date} >>${PACKAGE}-${VERSION}-${date}.diff || true
57 else
79d7c801 58 #cvs -q rdiff -u -r SQUID_`echo $VERSION | tr .- __` -r $tag $module >>${PACKAGE}-${VERSION}-${date}.diff || true
79325308 59 fi
b8da3ec1 60elif [ -f STABLE_BRANCH ]; then
79d7c801
HN
61 #stable=`cat STABLE_BRANCH`
62 #echo "Differences from ${stable} to ${PACKAGE}-${VERSION}-${date}" >${PACKAGE}-${VERSION}-${date}.diff
63 #cvs -q rdiff -u -r $stable -r $tag $module >>${PACKAGE}-${VERSION}-${date}.diff
79325308 64fi
65
7aef1654 66cd $startdir
67cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.tar.gz .
19be127e 68echo ${PACKAGE}-${VERSION}-${date}.tar.gz >>${tag}.out
c6a26ddb 69cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.tar.bz2 .
71918ca5 70echo ${PACKAGE}-${VERSION}-${date}.tar.bz2 >>${tag}.out
79325308 71if [ -f $tmpdir/${PACKAGE}-${VERSION}-${date}.diff ]; then
72 cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.diff .
73 echo ${PACKAGE}-${VERSION}-${date}.diff >>${tag}.out
74fi
19be127e 75
c6a26ddb 76relnotes=$tmpdir/doc/release-notes/release-`echo $VERSION | cut -d. -f1,2 | cut -d- -f1`.html
77if [ -f $relnotes ]; then
78 cp -p $relnotes ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html
79 echo ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html >>${tag}.out
a6528f8d 80 ed -s ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html <<EOF
81g/"ChangeLog"/ s//"${PACKAGE}-${VERSION}-${date}-ChangeLog.txt"/g
82w
83EOF
c6a26ddb 84fi
f2cc0e97 85cp -p $tmpdir/ChangeLog ${PACKAGE}-${VERSION}-${date}-ChangeLog.txt
86echo ${PACKAGE}-${VERSION}-${date}-ChangeLog.txt >>${tag}.out
b8da3ec1 87
88if [ -x $tmpdir/scripts/www/build-cfg-help.pl ]; then
89 make -C $tmpdir/src cf.data
90 mkdir -p $tmpdir/doc/cfgman
00a4454c 91 $tmpdir/scripts/www/build-cfg-help.pl --version ${VERSION} -o $tmpdir/doc/cfgman $tmpdir/src/cf.data
b8da3ec1 92 sh -c "cd $tmpdir/doc/cfgman && tar -zcf $PWD/${PACKAGE}-${VERSION}-${date}-cfgman.tar.gz *"
93 echo ${PACKAGE}-${VERSION}-${date}-cfgman.tar.gz >>${tag}.out
00a4454c 94 $tmpdir/scripts/www/build-cfg-help.pl --version ${VERSION} -o ${PACKAGE}-${VERSION}-${date}-cfgman.html -f singlehtml $tmpdir/src/cf.data
b8da3ec1 95 gzip -f -9 ${PACKAGE}-${VERSION}-${date}-cfgman.html
96 echo ${PACKAGE}-${VERSION}-${date}-cfgman.html.gz >>${tag}.out
97fi
d2669d90
AJ
98
99# Generate language-pack tarballs
100# NP: Only to be done on HEAD branch.
f2f17d62 101if test "${VERSION}" = "3.HEAD" ; then
39d24d69
AJ
102 sh -c "cd $tmpdir/errors && tar -zcf ${PWD}/${PACKAGE}-${VERSION}-${date}-langpack.tar.gz ./*/*"
103 echo ${PACKAGE}-${VERSION}-${date}-langpack.tar.gz >>${tag}.out
104fi