]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | # mkrelease.sh: Creates a release suitable for distfiles.atheme.org. | |
3 | # | |
4 | # Copyright (c) 2007, 2011 atheme.org | |
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 | ||
22 | if [ "x$1" = "x" ]; then | |
23 | echo "usage: $0 releasename" | |
24 | exit | |
25 | else | |
26 | RELEASENAME="$1" | |
27 | fi | |
28 | ||
29 | TIP=`git log -1 --pretty=oneline | cut -d" " -f1` | |
30 | ||
31 | WRKDIR=`pwd` | |
32 | ||
33 | if [ -d $RELEASENAME ]; then | |
34 | echo "Deleting previous release named $RELEASENAME." | |
35 | rm -rf $WRKDIR/$RELEASENAME/ | |
36 | fi | |
37 | ||
38 | echo "Making release named $RELEASENAME (tip $TIP)" | |
39 | ||
40 | echo | |
41 | echo "Building root: $RELEASENAME/" | |
42 | cd .. | |
43 | git archive --format=tar --prefix=$RELEASENAME/ HEAD | gzip >scripts/$RELEASENAME-working.tar.gz | |
44 | cd $WRKDIR | |
45 | tar -xzvf $RELEASENAME-working.tar.gz | |
46 | cd $RELEASENAME | |
47 | sh autogen.sh | |
48 | rm -rf autogen.sh autom4te.cache | |
49 | rm -rf .gitignore | |
50 | ||
51 | # Run application specific instructions here. | |
52 | if [ -x "$WRKDIR/application.sh" ]; then | |
53 | . $WRKDIR/application.sh | |
54 | fi | |
55 | ||
56 | cd .. | |
57 | ||
58 | echo "Building $RELEASENAME.tgz from $RELEASENAME/" | |
59 | tar zcf $RELEASENAME.tar.gz $RELEASENAME/ | |
60 | ||
61 | echo "Building $RELEASENAME.tbz2 from $RELEASENAME/" | |
62 | tar jcf $RELEASENAME.tar.bz2 $RELEASENAME/ | |
63 | ||
64 | rm $RELEASENAME-working.tar.gz | |
65 | rm -rf $RELEASENAME | |
66 | ||
67 | echo "Done. $RELEASENAME.tar.gz and $RELEASENAME.tar.bz2 built." |