source: gs3-extensions/i-jetty/trunk/src/PREPARE-JAVA-TO-DEX.sh@ 25625

Last change on this file since 25625 was 25623, checked in by davidb, 12 years ago

Restructuring of scripts to use 'i-jetty' webapps preparation area

  • Property svn:executable set to *
File size: 3.9 KB
Line 
1#!/bin/bash
2
3if [ "x$PREPARE_SDCARD_GSDL3HOME" = "x" ] ; then
4 echo "Environment variable PREPARE_SDCARD_GSDL3HOME undefined" 1>&2
5 exit -1
6fi
7
8
9JARS="axis.jar commons-lang3-3.0-beta.jar cp.jar \
10 gsdl3.jar gutil.jar \
11 jdbm.jar js.jar serializer.jar \
12 xercesImpl.jar xml-apis.jar"
13
14# LuceneWrapper.jar and xalan.jar used to be in the list,
15# but are now in modified-jars. See README.txt in that
16# directory for details
17
18#---
19# Copy GS3 classes files to I-Jetty classes
20#---
21
22if [ -d classes ] ; then
23 echo "#---"
24 echo "# Regenerating directory: classes"
25 echo "#---"
26 /bin/rm -rf classes
27fi
28
29echo "#---"
30echo "# Copying Greenstone-3 classes to the I-Jetty extension"
31/bin/cp -rf "$GSDL3HOME/WEB-INF/classes" classes
32/bin/rm -rf classes/.svn
33
34echo "# Setting GSDL3HOME to match SD-Card on Android device"
35echo "#---"
36
37if [ "x$IJOS" = "xcygwin" -o "x$IJOS" = "xmingw" ] ; then
38 SDCARD_GSDL3HOME_ONDEVICE=`echo $PREPARE_SDCARD_GSDL3HOME | sed 's@^/.\+/war/@/sdcard/jetty/webapps/@'`
39else
40 echo "Need to change mapped location of Android device on host machine"
41 echo "But no support currently implemented for: $IJOS"
42 SDCARD_GSDL3HOME_ONDEVICE=$PREPARE_SDCARD_GSDL3HOME
43fi
44
45cat classes/global.properties \
46 | sed "s@^gsdl3\.home=.*@gsdl3.home=$SDCARD_GSDL3HOME_ONDEVICE@" \
47 | sed "s@^tomcat\.port=.*@tomcat.port=$IJETTY_PORT@" \
48 > classes/global.properties.android
49
50/bin/mv classes/global.properties.android classes/global.properties
51
52cat classes/log4j.properties \
53 | sed "s@^gsdl3\.home=.*@gsdl3.home=$SDCARD_GSDL3HOME_ONDEVICE@" \
54 > classes/log4j.properties.android
55
56/bin/mv classes/log4j.properties.android classes/log4j.properties
57
58
59#---
60# Copy selected GS3 Jar files to I-Jetty jars
61#---
62
63echo "#---"
64if [ -d jars ] ; then
65 echo "# Regenerating jars"
66 /bin/rm -rf jars
67else
68 echo "# Generating jars"
69fi
70echo "#---"
71mkdir jars
72
73for f in $JARS ; do
74 echo " Copying from Greenstone-3 to I-Jetty: $f"
75 /bin/cp "$GSDL3HOME/WEB-INF/lib/$f" jars/.
76done
77
78echo "Overriding existings Greenstone jars with ones that needed tweaking for Android"
79/bin/cp -v modified-jars/* jars/.
80
81
82echo "Topping up 'jars' with Android specific jars"
83/bin/cp -v extra-jars/* jars/.
84
85
86#---
87# Generate dex file in I-Jetty 'classes' directory
88#---
89
90
91# If need more memory, add
92# -JXmx1024M
93
94OUTPUT_DEX=$IJETTY_HOME/classes/classes.dex
95INPUT_DIR=$IJETTY_HOME/jars
96
97dxcmd="dx"
98
99if [ "x$IJOS" = "xcygwin" ] ; then
100 OUTPUT_DEX=`cygpath -w $OUTPUT_DEX`
101 INPUT_DIR=`cygpath -w $INPUT_DIR`
102 dxcmd="dx.bat"
103elif [ "x$IJOS" = "xmingw" ] ; then
104 OUTPUT_DEX=`echo $OUTPUT_DEX | sed 's/^\/\(.\)/\1:/' | sed 's@/@\\\\@g'`
105 INPUT_DIR=`echo $INPUT_DIR | sed 's/^\/\(.\)/\1:/' | sed 's@/@\\\\@g'`
106 dxcmd="cmd /c dx.bat"
107fi
108
109# add --verbose for more information
110$dxcmd --verbose --dex --core-library --positions=lines --output=$OUTPUT_DEX $INPUT_DIR
111
112##dx.bat --dex --core-library --positions=lines --output=$OUTPUT_DEX $INPUT_DIR
113
114if [ $? != 0 ] ; then
115 echo "Error(s) encountered when running 'dx'"
116 exit
117fi
118
119#---
120# Zip up I-Jetty classes directory and put it in lib
121#---
122
123echo "#---"
124if [ -d lib ] ; then
125 echo "# Regenerating directory: lib"
126 /bin/rm -rf lib
127else
128 echo "# Generating directory: lib"
129fi
130echo "#---"
131mkdir lib
132
133echo "#---"
134echo "Zipping up I-Jetty 'classes' and storing in 'lib'"
135echo "#---"
136(cd classes && zip -r ../lib/classes.zip . && cd ..)
137
138if [ $? != 0 ] ; then
139 echo "Error(s) encountered zipping up dexified 'lib' files"
140 exit
141fi
142
143
144
145echo "#---"
146echo "# Copying dexified 'lib' servlet code to "
147echo "# $PREPARE_SDCARD_GSDL3HOME/WEB-INF/lib"
148echo "#---"
149echo ""
150
151if [ -d $PREPARE_SDCARD_GSDL3HOME/WEB-INF/lib ] ; then
152 /bin/rm -rf $PREPARE_SDCARD_GSDL3HOME/WEB-INF/lib
153fi
154
155/bin/cp -r lib $PREPARE_SDCARD_GSDL3HOME/WEB-INF/.
156
157
158
159echo ""
160echo "####"
161echo "# Run ./IJETTY-PUSH.sh \"webapps\" to install all the files needed on the Andorid device"
162echo "# Run ./IJETTY-PUSH.sh \"webapps/WEB-INF/lib\" to install the latest DEX files on the device"
163echo "####"
164echo ""
Note: See TracBrowser for help on using the repository browser.