chiark / gitweb /
try to hit the build over the head to get the version number right
[jarrg-ian.git] / build-sh
1 #!/bin/bash
2 #
3 # We don't supply a Makefile.  Instead, we just supply this shell script.
4
5 set -e
6
7 case "$#.$1" in
8 0.)     ;;
9 *.-*)   echo >&2 'no options allowed'; exit 1;;
10 *)      echo >&2 'no arguments allowed'; exit 1;;
11 esac
12
13 : ${JAVA_HOME:=/usr/lib/jvm/java-6-sun}
14 export JAVA_HOME
15
16 revision=`git describe --always || echo '(unknown revision)'`
17 cat >src/com/tedpearson/ypp/market/Version.java <<END
18   package com.tedpearson.ypp.market;
19   public class Version {
20       public final static String version = "$revision";
21   }
22 END
23 rm -f src/build/com/tedpearson/ypp/market/Version.class
24 rm -f *.jar
25
26 cd src
27 ant -f PCTB.xml
28 cd ..
29
30 echo "
31 Building tarball
32 "
33
34 GZIP='-9v --rsyncable' tar --exclude=\*{~,.tar.gz,.exe} --exclude='#*#' \
35   --transform='s/^./jpctb/' --exclude=jpctb/{src/build,tmp} \
36   -zcf jpctb.tar.gz .
37
38 files='jpctb.tar.gz jpctb-setup.exe'
39
40 echo "
41 Generated OK:
42 "
43 ls -al $files
44
45 pubbase="${JPCTB_PUBLISH_BASE-login.chiark.greenend.org.uk}"
46 pubdir="${JPCTB_PUBLISH_DIR-/home/yarrgweb/public-html/download/jpctb}"
47
48 echo "
49 Install with:
50  RSYNC_RSH=ssh rsync -vP $files $pubbase:$pubdir/test/
51 "