source: main/trunk/release-kits/bin/rk@ 35570

Last change on this file since 35570 was 35570, checked in by davidb, 3 years ago

Main change is to set explicitly setJAVACFLAGS here (i.e. in the release kit) so as to trigger it generateing backwards compatible Java class files. The opportunity was also taken to update rk.bat to bring it a little bit more inline with what the bash version does

  • Property svn:executable set to *
File size: 3.0 KB
Line 
1#!/bin/bash
2
3function show_title() {
4 echo "RK_HOME: $RK_HOME"
5 echo "O---------------------------------------------O"
6 echo
7 echo " $rk_name ";
8 echo " $rk_fullname ";
9 echo
10 echo "O---------------------------------------------O"
11
12}
13
14function show_help {
15 echo "usage: {rk2|rk3|sork2|sork2|cdrk2|derk|clientrk} [-help|-cmd] [ANT_ARGS]"
16 echo " -help show this help screen"
17 echo " -cmd show the ant command being used by the releas kit"
18 echo " ANT_ARGS additional arguments to be passed to ant"
19}
20
21#determine requested release kit
22rk_name="$(basename $0)"
23export RK_HOME="$(cd "$(dirname "$0")/.." && pwd)"
24
25if [ "$rk_name" == "rk2" ]; then
26 rk_fullname="Release Kit for Greenstone2"
27elif [ "$rk_name" == "rk3" ]; then
28 rk_fullname="Release Kit for Greenstone3"
29elif [ "$rk_name" == "sork2" ]; then
30 rk_fullname="Source Code Release Kit for Greenstone2"
31elif [ "$rk_name" == "sork3" ]; then
32 rk_fullname="Source Code Release Kit for Greenstone3"
33elif [ "$rk_name" == "cdrk2" ]; then
34 rk_fullname="CD-ROM Release Kit for Greenstone2"
35elif [ "$rk_name" == "derk" ]; then
36 rk_fullname="Documented Examples Release Kit"
37elif [ "$rk_name" == "clientrk" ]; then
38 rk_fullname="Standalone Client-GLI Release Kit"
39else
40 show_help
41 exit
42fi
43
44#make sure ant has enough memory
45export ANT_OPTS=-Xmx1024M
46
47# set JAVACFLAGS (used in the relevant javac lines in our Makefiles) so that any compiled Java code
48# is backwards compatible with Java v1.6
49
50# Note: Given the way autoconf uses 'eval' to test javac, then the usual technique of double-quoting
51# (e.g.) the bootclasspath directory to project against spaces *won't* *work* as it is not passed
52# to a shell environment to be interpretted first.
53# Instead, we result to backlash escaping any spaces
54export RK_HOME_BACKSLASH_ESCAPED=`echo $RK_HOME | sed 's/ /\\\\ /g'`
55
56export JAVACFLAGS="-source 1.6 -target 1.6 -bootclasspath $RK_HOME_BACKSLASH_ESCAPED/shared/core/java-rt/rt-openjdk6.jar -extdirs ''"
57
58#create the command
59toexec="ant -lib \"`pwd`/installer/classes\" -f \"$RK_HOME/kits/$rk_name/ant-scripts/build.xml\" \"-Dbasedir=`pwd`\" \"-Drk.home=$RK_HOME\" \"-Drk.name=$rk_name\""
60
61# Generally, an ant property can be true|on|yes vs false|off|no (or left unset)
62# see https://ant.apache.org/manual/properties.html#if+unless
63# However, the release-kit code requires envvar KEEP_SRC to be "true" in order to stop it deleting source code
64# set KEEP_SRC env var here or in envi/etc/tasks/snapshot/environment.pl
65#KEEP_SRC=true
66#echo "KEEP_SRC: $KEEP_SRC"
67if test -n $KEEP_SRC ; then
68 toexec="$toexec \"-Dkeep.src=$KEEP_SRC\""
69fi
70
71show_cmd=false
72
73#pass on the arguments
74while [ "$1" != "" ]; do
75
76 if [ "$1" == "-help" ]; then
77 show_help
78 exit
79 elif [ "$1" == "-cmd" ]; then
80 show_cmd=true
81 else
82 toexec="$toexec \"$1\""
83 fi
84 shift
85
86done
87
88#show the command to be executed
89if [ "$show_cmd" == "true" ]; then
90 echo $toexec
91#execute
92else
93 show_title | tee ${rk_name}.out
94 $toexec 2>&1 | tee -a ${rk_name}.out
95fi
96
Note: See TracBrowser for help on using the repository browser.