From 5ac3fa0f3182a67c502b881868c43275e78861a3 Mon Sep 17 00:00:00 2001 From: pelya Date: Wed, 3 Nov 2010 13:36:24 +0200 Subject: [PATCH] Split launchConfigure.sh into launchConfigure.sh and setEnvironment.sh, so you can launch bash and run ./configure by hand --- bugs.txt | 1 - project/jni/application/launchConfigure.sh | 74 +------------------ .../scummvm/AndroidAppSettings.cfg | 6 +- project/jni/application/scummvm/readme.txt | 5 +- project/jni/application/scummvm/scummvm | 2 +- project/jni/application/setEnvironment.sh | 65 ++++++++++++++++ project/jni/application/src | 2 +- 7 files changed, 75 insertions(+), 80 deletions(-) create mode 100755 project/jni/application/setEnvironment.sh diff --git a/bugs.txt b/bugs.txt index 0825d40e7..ea4c94c23 100644 --- a/bugs.txt +++ b/bugs.txt @@ -34,7 +34,6 @@ so the data on your TV will lag halfsecond behind the data on the device screen. 1. Add Russian, Deutsch and Slovak translations: http://wiki.uqm.stack.nl/Translations 2. Add accelerated GFX (even at the cost of GFX bugs, if Melee will work smoothly). 3. Add proper netplay with masterserver and server list instead of "Enter host IP here" dialog. - 4. Add more control options such as joystick with absolute positioning. - Add an option to keep aspect ratio of screen diff --git a/project/jni/application/launchConfigure.sh b/project/jni/application/launchConfigure.sh index 5747de7d6..f213f7877 100755 --- a/project/jni/application/launchConfigure.sh +++ b/project/jni/application/launchConfigure.sh @@ -1,79 +1,7 @@ #!/bin/sh -# Set here your own NDK path if needed -# export PATH=$PATH:~/src/endless_space/android-ndk-r4 - -IFS=' -' - -MYARCH=linux-x86 -if uname -s | grep -i "linux" ; then - MYARCH=linux-x86 -fi -if uname -s | grep -i "darwin" ; then - MYARCH=darwin-x86 -fi -if uname -s | grep -i "windows" ; then - MYARCH=windows-x86 -fi - -NDK=`which ndk-build` -NDK=`dirname $NDK` -GCCVER=4.4.0 -PLATFORMVER=android-8 LOCAL_PATH=`dirname $0` LOCAL_PATH=`cd $LOCAL_PATH && pwd` -# Hacks for broken configure scripts -rm -rf $LOCAL_PATH/../../obj/local/armeabi/libSDL_*.so -rm -rf $LOCAL_PATH/../../obj/local/armeabi/libsdl_main.so +$LOCAL_PATH/setEnvironment.sh ./configure --host=arm-eabi "$@" -# Uncomment if your configure expects SDL libraries in form "libSDL_name.so" -#if [ -e $LOCAL_PATH/../../obj/local/armeabi/libsdl_mixer.so ] ; then -# ln -sf libsdl_mixer.so $LOCAL_PATH/../../obj/local/armeabi/libSDL_Mixer.so -#fi - -for F in $LOCAL_PATH/../../obj/local/armeabi/libsdl_*.so; do - LIBNAME=`echo $F | sed "s@$LOCAL_PATH/../../obj/local/armeabi/libsdl_\(.*\)[.]so@\1@"` - ln -sf libsdl_$LIBNAME.so $LOCAL_PATH/../../obj/local/armeabi/libSDL_$LIBNAME.so -done - -CFLAGS="-I$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/include \ --fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums \ --D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID \ --Wno-psabi -march=armv5te -mtune=xscale -msoft-float -fno-exceptions -fno-rtti -mthumb -Os \ --fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 \ --Wa,--noexecstack -O2 -DNDEBUG -g \ --I$LOCAL_PATH/../sdl-1.2/include -I$LOCAL_PATH/../stlport/stlport \ -`grep 'COMPILED_LIBRARIES [:][=]' $LOCAL_PATH/../Android.mk | sed 's@.*[=]\(.*\)@\1@' | sed \"s@\([-a-zA-Z_]\+\)@$LOCAL_PATH/../\1/include@g\"`" - -LDFLAGS="-nostdlib -Wl,-soname,libapplication.so -Wl,-shared,-Bsymbolic \ --Wl,--whole-archive -Wl,--no-whole-archive \ -$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/lib/gcc/arm-eabi/4.4.0/libgcc.a \ -`echo $LOCAL_PATH/../../obj/local/armeabi/*.so | sed "s@$LOCAL_PATH/../../obj/local/armeabi/libsdl_main.so@@" | sed "s@$LOCAL_PATH/../../obj/local/armeabi/libapplication.so@@"` \ -$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libc.so \ -$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libstdc++.so \ -$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libm.so \ --Wl,--no-undefined -Wl,-z,noexecstack \ --L$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib \ --lGLESv1_CM -ldl -llog -lz \ --Wl,-rpath-link=$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib \ --L$LOCAL_PATH/../../obj/local/armeabi" - -# Comment out if you're using CrystaX toolchain -LDFLAGS="$LDFLAGS $LOCAL_PATH/../../obj/local/armeabi/libstlport.a" - -env PATH=$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin:$LOCAL_PATH:$PATH \ -CFLAGS="$CFLAGS" \ -CXXFLAGS="$CFLAGS" \ -LDFLAGS="$LDFLAGS" \ -CC="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-gcc" \ -CXX="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-g++" \ -RANLIB="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-ranlib" \ -LD="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-gcc" \ -AR="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-ar" \ -CPP="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-cpp $CFLAGS" \ -NM="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-nm" \ -AS="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-as" \ -STRIP="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-strip" \ -./configure --host=arm-eabi "$@" diff --git a/project/jni/application/scummvm/AndroidAppSettings.cfg b/project/jni/application/scummvm/AndroidAppSettings.cfg index cd6885a7d..694930159 100644 --- a/project/jni/application/scummvm/AndroidAppSettings.cfg +++ b/project/jni/application/scummvm/AndroidAppSettings.cfg @@ -22,9 +22,9 @@ MultiABI=n AppVersionCode=12001 AppVersionName="1.2.0.01" CompiledLibraries="mad tremor flac ogg jpeg png" -CustomBuildScript=n -AppCflags='-finline-functions -O2 -DUSE_OSD -DUSE_RGB_COLOR -DUNIX -DUSE_VORBIS -DUSE_TREMOR -DUSE_FLAC -DUSE_MAD -DUSE_PNG -DUSE_JPEG -DUSE_ZLIB -DENABLE_SCUMM -DENABLE_SCUMM_7_8 -DENABLE_HE -DENABLE_AGI -DENABLE_AGOS -DENABLE_AGOS2 -DENABLE_CINE -DENABLE_CRUISE -DENABLE_DRACI -DENABLE_DRASCULA -DENABLE_GOB -DENABLE_GROOVIE -DENABLE_GROOVIE2 -DENABLE_HUGO -DENABLE_KYRA -DENABLE_LOL -DENABLE_LASTEXPRESS -DENABLE_LURE -DENABLE_M4 -DENABLE_MADE -DENABLE_MOHAWK -DENABLE_PARALLACTION -DENABLE_QUEEN -DENABLE_SAGA -DENABLE_IHNM -DENABLE_SAGA2 -DENABLE_SCI -DENABLE_SCI32 -DENABLE_SKY -DENABLE_SWORD1 -DENABLE_SWORD2 -DENABLE_SWORD25 -DENABLE_TESTBED -DENABLE_TEENAGENT -DENABLE_TINSEL -DENABLE_TOON -DENABLE_TOUCHE -DENABLE_TUCKER' +CustomBuildScript=y +AppCflags='' AppLdflags='' -AppSubdirsBuild='scummvm scummvm/backends scummvm/backends/platform/sdl scummvm/backends/keymapper/* scummvm/backends/events/* scummvm/backends/plugins/sdl scummvm/backends/saves/posix scummvm/backends/saves/default scummvm/backends/saves scummvm/backends/timer/default scummvm/backends/fs/posix scummvm/backends/fs scummvm/backends/vkeybd/* scummvm/backends/midi/* scummvm/base/* scummvm/common/* scummvm/engines/* scummvm/graphics/* scummvm/gui/* scummvm/sound/*' +AppSubdirsBuild='' AppUseCrystaXToolchain=n ReadmeText='^You may press "Home" now - the data will be downloaded in background' diff --git a/project/jni/application/scummvm/readme.txt b/project/jni/application/scummvm/readme.txt index 15cfcf228..42df72af2 100644 --- a/project/jni/application/scummvm/readme.txt +++ b/project/jni/application/scummvm/readme.txt @@ -1,5 +1,5 @@ To compile ScummVM add the ScummVM SVN to directory "scummvm" (or make a symlink to it), -apply the patch 'scummvm-trunk-53822.diff' to the SVN, +then overwrite "configure" script with file "configure-androidsdl", then from dir 'project/jni/application' execute commands rm src @@ -7,3 +7,6 @@ ln -s scummvm src Then go to project root and launch 'build.sh' - that should be it. You need to have Android SDK 2.2 and NDK r4b installed in your PATH. + +If you're using ScummVM trunk you'll probably need to apply a patch +'scummvm-trunk-53822.diff' to the SVN, branch 1.2.0 compiles without changes. diff --git a/project/jni/application/scummvm/scummvm b/project/jni/application/scummvm/scummvm index 3c7c69dce..86b9f9c35 120000 --- a/project/jni/application/scummvm/scummvm +++ b/project/jni/application/scummvm/scummvm @@ -1 +1 @@ -../../../../../scummvm/ \ No newline at end of file +../../../../../scummvm.1.2.0/ \ No newline at end of file diff --git a/project/jni/application/setEnvironment.sh b/project/jni/application/setEnvironment.sh new file mode 100755 index 000000000..cbce0314a --- /dev/null +++ b/project/jni/application/setEnvironment.sh @@ -0,0 +1,65 @@ +#!/bin/sh + +# Set here your own NDK path if needed +# export PATH=$PATH:~/src/endless_space/android-ndk-r4 + +IFS=' +' + +MYARCH=linux-x86 +if uname -s | grep -i "linux" > /dev/null ; then + MYARCH=linux-x86 +fi +if uname -s | grep -i "darwin" > /dev/null ; then + MYARCH=darwin-x86 +fi +if uname -s | grep -i "windows" > /dev/null ; then + MYARCH=windows-x86 +fi + +NDK=`which ndk-build` +NDK=`dirname $NDK` +GCCVER=4.4.0 +PLATFORMVER=android-8 +LOCAL_PATH=`dirname $0` +LOCAL_PATH=`cd $LOCAL_PATH && pwd` + +CFLAGS="-I$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/include \ +-fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums \ +-D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID \ +-Wno-psabi -march=armv5te -mtune=xscale -msoft-float -fno-exceptions -fno-rtti -mthumb -Os \ +-fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 \ +-Wa,--noexecstack -DNDEBUG -g \ +-I$LOCAL_PATH/../sdl-1.2/include -I$LOCAL_PATH/../stlport/stlport \ +`grep 'COMPILED_LIBRARIES [:][=]' $LOCAL_PATH/../Settings.mk | sed 's@.*[=]\(.*\)@\1@' | sed \"s@\([-a-zA-Z_]\+\)@-I$LOCAL_PATH/../\1/include@g\"`" + +LDFLAGS="-nostdlib -Wl,-soname,libapplication.so -Wl,-shared,-Bsymbolic \ +-Wl,--whole-archive -Wl,--no-whole-archive \ +$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/lib/gcc/arm-eabi/4.4.0/libgcc.a \ +`echo $LOCAL_PATH/../../obj/local/armeabi/*.so | sed "s@$LOCAL_PATH/../../obj/local/armeabi/libsdl_main.so@@" | sed "s@$LOCAL_PATH/../../obj/local/armeabi/libapplication.so@@"` \ +$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libc.so \ +$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libstdc++.so \ +$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib/libm.so \ +-Wl,--no-undefined -Wl,-z,noexecstack \ +-L$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib \ +-lGLESv1_CM -ldl -llog -lz \ +-Wl,-rpath-link=$NDK/build/platforms/$PLATFORMVER/arch-arm/usr/lib \ +-L$LOCAL_PATH/../../obj/local/armeabi" + +# Comment out if you're using CrystaX toolchain +LDFLAGS="$LDFLAGS $LOCAL_PATH/../../obj/local/armeabi/libstlport.a" + +env PATH=$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin:$LOCAL_PATH:$PATH \ +CFLAGS="$CFLAGS" \ +CXXFLAGS="$CFLAGS" \ +LDFLAGS="$LDFLAGS" \ +CC="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-gcc" \ +CXX="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-g++" \ +RANLIB="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-ranlib" \ +LD="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-gcc" \ +AR="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-ar" \ +CPP="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-cpp $CFLAGS" \ +NM="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-nm" \ +AS="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-as" \ +STRIP="$NDK/build/prebuilt/$MYARCH/arm-eabi-$GCCVER/bin/arm-eabi-strip" \ +$@ diff --git a/project/jni/application/src b/project/jni/application/src index 57d37d935..f36c75d23 120000 --- a/project/jni/application/src +++ b/project/jni/application/src @@ -1 +1 @@ -pachi \ No newline at end of file +scummvm \ No newline at end of file