diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2010-08-17 21:06:58 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2010-08-17 21:06:58 +0000 |
commit | cc5f0168350723809225ff59b93906809a2b55e9 (patch) | |
tree | 6acf0e4b075a7d08565e15306e8545a4ae1e15f4 /android | |
parent | eca68ee4b20a75e7b4cfed52711a49c98e911549 (diff) | |
download | rockbox-cc5f0168350723809225ff59b93906809a2b55e9.tar.gz rockbox-cc5f0168350723809225ff59b93906809a2b55e9.zip |
Android port: add build script
This allows building the Java part of the port with only requiring the Android SDK + javac installed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27839 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'android')
-rwxr-xr-x | android/build.sh | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/android/build.sh b/android/build.sh new file mode 100755 index 0000000000..e68718a39a --- /dev/null +++ b/android/build.sh | |||
@@ -0,0 +1,63 @@ | |||
1 | #!/bin/sh | ||
2 | ############################################################################ | ||
3 | # __________ __ ___. | ||
4 | # Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
5 | # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
6 | # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
7 | # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
8 | # \/ \/ \/ \/ \/ | ||
9 | # $Id$ | ||
10 | # | ||
11 | # Copyright (C) 2010 by Maurus Cuelenaere | ||
12 | # | ||
13 | # All files in this archive are subject to the GNU General Public License. | ||
14 | # See the file COPYING in the source tree root for full license agreement. | ||
15 | # | ||
16 | # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | ||
17 | # KIND, either express or implied. | ||
18 | # | ||
19 | ############################################################################ | ||
20 | |||
21 | # TODO: convert this into a Makefile | ||
22 | |||
23 | ROCKBOX_DIR=`dirname $0` | ||
24 | |||
25 | if [ -z "$ANDROID_SDK_PATH" ]; then | ||
26 | echo "Please set \$ANDROID_SDK_PATH!" | ||
27 | exit 0 | ||
28 | fi | ||
29 | |||
30 | if [ -z "$ANDROID_PLATFORM_VERSION" ]; then | ||
31 | ANDROID_PLATFORM_VERSION=8 | ||
32 | fi | ||
33 | |||
34 | ANDROID_PLATFORM="$ANDROID_SDK_PATH/platforms/android-$ANDROID_PLATFORM_VERSION" | ||
35 | AAPT="$ANDROID_PLATFORM/tools/aapt" | ||
36 | DX="$ANDROID_PLATFORM/tools/dx" | ||
37 | APKBUILDER="$ANDROID_SDK_PATH/tools/apkbuilder" | ||
38 | |||
39 | if [ \! -d "$ANDROID_PLATFORM" ]; then | ||
40 | echo "Can't find Android platform v$ANDROID_PLATFORM_VERSION!" | ||
41 | exit 0 | ||
42 | fi | ||
43 | |||
44 | if [ -d "$ROCKBOX_DIR/bin" ]; then | ||
45 | echo "[CLEAN] bin/" | ||
46 | rm -rf $ROCKBOX_DIR/bin | ||
47 | fi | ||
48 | |||
49 | mkdir $ROCKBOX_DIR/bin | ||
50 | |||
51 | echo "[AAPT] bin/resources.ap_" | ||
52 | $AAPT package -f -m -J $ROCKBOX_DIR/gen -M $ROCKBOX_DIR/AndroidManifest.xml -S $ROCKBOX_DIR/res -I $ANDROID_PLATFORM/android.jar -F $ROCKBOX_DIR/bin/resources.ap_ | ||
53 | |||
54 | for file in `find $ROCKBOX_DIR \( -wholename '*src/*' -o -wholename '*gen/*' \) -a -name '*.java'`; do | ||
55 | echo "[JAVAC] `echo $file | sed 's/'$ROCKBOX_DIR'\///'`" | ||
56 | javac -d $ROCKBOX_DIR/bin -classpath $ANDROID_PLATFORM/android.jar:$ROCKBOX_DIR/bin -sourcepath $ROCKBOX_DIR/src:$ROCKBOX_DIR/gen $file | ||
57 | done | ||
58 | |||
59 | echo "[DEX] bin/classes.dex" | ||
60 | $DX --dex --output=$ROCKBOX_DIR/bin/classes.dex $ROCKBOX_DIR/bin | ||
61 | |||
62 | echo "[APKBUILDER] bin/Rockbox.apk" | ||
63 | $APKBUILDER $ROCKBOX_DIR/bin/Rockbox.apk -u -z $ROCKBOX_DIR/bin/resources.ap_ -f $ROCKBOX_DIR/bin/classes.dex | ||