]> jfr.im git - irc/rqf/shadowircd.git/blame - scripts/makerelease.sh
Bump version to 6.3.2
[irc/rqf/shadowircd.git] / scripts / makerelease.sh
CommitLineData
8a99d1b9
JT
1#!/bin/sh
2# mkrelease.sh: Creates a release suitable for distfiles.atheme.org.
3#
c530343c 4# Copyright (c) 2007, 2011 atheme.org
8a99d1b9
JT
5#
6# Permission to use, copy, modify, and/or distribute this software for
7# any purpose with or without fee is hereby granted, provided that the above
8# copyright notice and this permission notice appear in all copies.
9#
10# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
11# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
12# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
13# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
14# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
15# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
16# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
17# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
18# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
19# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
20#
21
22if [ "x$1" = "x" ]; then
23 echo "usage: $0 releasename [--automatic]"
24 exit
25else
c530343c 26 PROGRAM=`pwd | sed "s:/scripts::" | awk -F/ '{print $NF}'`
8a99d1b9
JT
27 RELEASENAME="$1"
28fi
29
c530343c
TV
30if [[ $1 != $PROGRAM* ]]; then
31 echo "example: $0 $PROGRAM-1.2.3"
32 exit
33fi
34
8a99d1b9
JT
35if [ "x$2" = "x--automatic" ]; then
36 AUTOMATIC="yes"
37fi
38
c530343c 39TIP=`git log -1 --pretty=oneline | cut -d" " -f1`
8a99d1b9
JT
40
41WRKDIR=`pwd`
42
43if [ -d $RELEASENAME ]; then
44 echo "Deleting previous release named $RELEASENAME."
45 rm -rf $WRKDIR/$RELEASENAME/
46fi
47
48echo "Making release named $RELEASENAME (tip $TIP)"
49
50echo
51echo "Building root: $RELEASENAME/"
c530343c 52git archive $RELEASENAME
8a99d1b9
JT
53cd $RELEASENAME
54sh autogen.sh
55rm -rf autogen.sh autom4te.cache
c530343c 56rm -rf .gitignore
8a99d1b9
JT
57
58# Run application specific instructions here.
59if [ -x "$WRKDIR/application.sh" ]; then
60 . $WRKDIR/application.sh
61fi
62
63cd ..
64
0d3be78f
JH
65echo "Building $RELEASENAME.tar.gz from $RELEASENAME/"
66tar zcf $RELEASENAME.tar.gz $RELEASENAME/
8a99d1b9 67
0d3be78f
JH
68echo "Building $RELEASENAME.tar.bz2 from $RELEASENAME/"
69tar jcf $RELEASENAME.tar.bz2 $RELEASENAME/
8a99d1b9
JT
70
71PUBLISH="yes"
72
73ok="0"
74if [ "x$AUTOMATIC" != "xyes" ]; then
75 echo
76 echo "Would you like to publish these releases now?"
77 while [ $ok -eq 0 ]; do
78 echo -n "[$PUBLISH] "
79
80 read INPUT
81 case $INPUT in
82 [Yy]*)
83 PUBLISH="yes"
84 ok=1
85 ;;
86 [Nn]*)
87 PUBLISH="no"
88 ok=1
89 ;;
90 esac
91 done
92fi
93
94if [ "x$PUBLISH" = "xyes" ]; then
a751cbef
JT
95 scp $RELEASENAME.tgz hg.atheme.org:/srv/distfiles
96 scp $RELEASENAME.tbz2 hg.atheme.org:/srv/distfiles
8a99d1b9
JT
97
98 echo
99 echo "The releases have been published, and will be available to the entire"
100 echo "distribution network within 15 minutes."
101fi
102
103echo
104echo "Done. If you have any bugs to report, report them against"
c530343c 105echo "the distfiles.atheme.org component at http://jira.atheme.org"
8a99d1b9
JT
106echo "Thanks!"
107echo