]> git.ipfire.org Git - thirdparty/squid.git/blob - mksnapshot.sh
Language Updates: Polish for manuals translation
[thirdparty/squid.git] / mksnapshot.sh
1 #!/bin/sh -e
2
3 if [ $# -lt 1 ]; then
4 echo "Usage: $0 [branch]"
5 echo "Where [branch] is the path under /bzr/ to the branch to snapshot."
6 exit 1
7 fi
8 # VCS details
9 module=squid3
10 BZRROOT=${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.
16 branchpath=${1:-trunk}
17 tag=${2:-`basename $branchpath`}
18 startdir=$PWD
19 date=`env TZ=GMT date +%Y%m%d`
20
21 tmpdir=${TMPDIR:-${PWD}}/${module}-${tag}-mksnapshot
22
23 rm -rf $tmpdir
24 trap "rm -rf $tmpdir" 0
25
26 rm -f ${tag}.out
27 bzr export $tmpdir $BZRROOT/$module/$branchpath || exit 1
28 if [ ! -f $tmpdir/configyre ] && [ -f $tmpdir/configure.in ]; then
29 sh -c "cd $tmpdir && ./bootstrap.sh"
30 fi
31 if [ ! -f $tmpdir/configure ]; then
32 echo "ERROR! Tag $tag not found in $module"
33 fi
34
35 cd $tmpdir
36 eval `grep "^ *VERSION=" configure | sed -e 's/-BZR//' | sed -e 's/-CVS//'`
37 eval `grep "^ *PACKAGE=" configure`
38 ed -s configure.in <<EOS
39 g/${VERSION}-[A-Z]*/ s//${VERSION}-${date}/
40 w
41 EOS
42 ed -s configure <<EOS
43 g/${VERSION}-[A-Z]*/ s//${VERSION}-${date}/
44 w
45 EOS
46
47 ./test-builds.sh --cleanup || exit 1
48 ./configure --silent
49 make -s dist-all
50
51 basetarball=/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
52 if (echo $VERSION | grep PRE) || (echo $VERSION | grep STABLE); then
53 if [ -f $basetarball ]; then
54 tar jxf ${PACKAGE}-${VERSION}-${date}.tar.bz2
55 tar jxf $basetarball
56 echo "Differences from ${PACKAGE}-${VERSION} to ${PACKAGE}-${VERSION}-${date}" >${PACKAGE}-${VERSION}-${date}.diff
57 diff -ruN ${PACKAGE}-${VERSION} ${PACKAGE}-${VERSION}-${date} >>${PACKAGE}-${VERSION}-${date}.diff || true
58 else
59 #cvs -q rdiff -u -r SQUID_`echo $VERSION | tr .- __` -r $tag $module >>${PACKAGE}-${VERSION}-${date}.diff || true
60 fi
61 elif [ -f STABLE_BRANCH ]; then
62 #stable=`cat STABLE_BRANCH`
63 #echo "Differences from ${stable} to ${PACKAGE}-${VERSION}-${date}" >${PACKAGE}-${VERSION}-${date}.diff
64 #cvs -q rdiff -u -r $stable -r $tag $module >>${PACKAGE}-${VERSION}-${date}.diff
65 fi
66
67 cd $startdir
68 cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.tar.gz .
69 echo ${PACKAGE}-${VERSION}-${date}.tar.gz >>${tag}.out
70 cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.tar.bz2 .
71 echo ${PACKAGE}-${VERSION}-${date}.tar.bz2 >>${tag}.out
72 if [ -f $tmpdir/${PACKAGE}-${VERSION}-${date}.diff ]; then
73 cp -p $tmpdir/${PACKAGE}-${VERSION}-${date}.diff .
74 echo ${PACKAGE}-${VERSION}-${date}.diff >>${tag}.out
75 fi
76
77 relnotes=$tmpdir/doc/release-notes/release-`echo $VERSION | cut -d. -f1,2 | cut -d- -f1`.html
78 if [ -f $relnotes ]; then
79 cp -p $relnotes ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html
80 echo ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html >>${tag}.out
81 ed -s ${PACKAGE}-${VERSION}-${date}-RELEASENOTES.html <<EOF
82 g/"ChangeLog"/ s//"${PACKAGE}-${VERSION}-${date}-ChangeLog.txt"/g
83 w
84 EOF
85 fi
86 cp -p $tmpdir/ChangeLog ${PACKAGE}-${VERSION}-${date}-ChangeLog.txt
87 echo ${PACKAGE}-${VERSION}-${date}-ChangeLog.txt >>${tag}.out
88
89 # Generate Configuration Manual HTML
90 if [ -x $tmpdir/scripts/www/build-cfg-help.pl ]; then
91 make -C $tmpdir/src cf.data
92 mkdir -p $tmpdir/doc/cfgman
93 $tmpdir/scripts/www/build-cfg-help.pl --version ${VERSION} -o $tmpdir/doc/cfgman $tmpdir/src/cf.data
94 sh -c "cd $tmpdir/doc/cfgman && tar -zcf $PWD/${PACKAGE}-${VERSION}-${date}-cfgman.tar.gz *"
95 echo ${PACKAGE}-${VERSION}-${date}-cfgman.tar.gz >>${tag}.out
96 $tmpdir/scripts/www/build-cfg-help.pl --version ${VERSION} -o ${PACKAGE}-${VERSION}-${date}-cfgman.html -f singlehtml $tmpdir/src/cf.data
97 gzip -f -9 ${PACKAGE}-${VERSION}-${date}-cfgman.html
98 echo ${PACKAGE}-${VERSION}-${date}-cfgman.html.gz >>${tag}.out
99 fi
100
101 # Collate Manual Pages and generate HTML versions
102 if (groff --help >/dev/null); then
103 make -C ${tmpdir}/src squid.8
104 if [ ! -d ${tmpdir}/doc/manuals ] ; then
105 mkdir -p ${tmpdir}/doc/manuals
106 fi
107 for f in `ls -1 ${tmpdir}/helpers/*/*/*.8 ${tmpdir}/src/*.8 ${tmpdir}/tools/*.1 ${tmpdir}/tools/*.8 ./helpers/*/*/*.8 2>/dev/null` ; do
108 cp $f ${tmpdir}/doc/manuals/
109 done
110 for f in `ls -1 ${tmpdir}/doc/manuals/*.1 ${tmpdir}/doc/manuals/*.8 2>/dev/null` ; do
111 cat ${f} | groff -E -Thtml -mandoc >${f}.html
112 done
113 sh -c "cd ${tmpdir}/doc/manuals && tar -zcf $PWD/${PACKAGE}-${VERSION}-${date}-manuals.tar.gz *.html *.1 *.8"
114 echo ${PACKAGE}-${VERSION}-${date}-manuals.tar.gz >>${tag}.out
115 fi
116
117 # Generate language-pack tarballs
118 # NP: Only to be done on HEAD branch.
119 if test "${VERSION}" = "3.HEAD" ; then
120 sh -c "cd $tmpdir/errors && tar -zcf ${PWD}/${PACKAGE}-${VERSION}-${date}-langpack.tar.gz ./*/* ./alias* ./TRANSLATORS ./COPYRIGHT "
121 echo ${PACKAGE}-${VERSION}-${date}-langpack.tar.gz >>${tag}.out
122 fi