diff --git a/alienblaster/ChangeAppSettings.sh b/alienblaster/ChangeAppSettings.sh index e6950de07..494fd221c 100755 --- a/alienblaster/ChangeAppSettings.sh +++ b/alienblaster/ChangeAppSettings.sh @@ -48,6 +48,7 @@ if [ "$DownloadToSdcard" = "y" ] ; then DataPath="/sdcard/$AppShortName" fi AppFullNameUnderscored=`echo $AppFullName | sed 's/[.]/_/g'` +AppSharedLibrariesPath=/data/data/$AppFullName/lib ScreenOrientation1=portrait if [ "$ScreenOrientation" = "h" ] ; then ScreenOrientation1=landscape @@ -78,6 +79,9 @@ cat project/src/Globals.java | \ mv -f project/src/Globals.java.1 project/src/Globals.java echo Patching project/jni/Android.mk + +# sed "s^SDL_SHARED_LIBRARIES_PATH := .*^SDL_SHARED_LIBRARIES_PATH := $AppSharedLibrariesPath^" | \ + cat project/jni/Android.mk | \ sed "s/SDL_JAVA_PACKAGE_PATH := .*/SDL_JAVA_PACKAGE_PATH := $AppFullNameUnderscored/" | \ sed "s^SDL_CURDIR_PATH := .*^SDL_CURDIR_PATH := $DataPath^" > \ diff --git a/alienblaster/project/jni/Android.mk b/alienblaster/project/jni/Android.mk index 234c81500..d0ec625a1 100644 --- a/alienblaster/project/jni/Android.mk +++ b/alienblaster/project/jni/Android.mk @@ -2,6 +2,9 @@ # The namespace in Java file, with dots replaced with underscores SDL_JAVA_PACKAGE_PATH := de_schwardtnet_alienblaster +# Path to shared libraries - Android 1.6 cannot load them properly, thus we have to specify absolute path here +# SDL_SHARED_LIBRARIES_PATH := /data/data/de.schwardtnet.alienblaster/lib + # Path to files with application data - they should be downloaded from Internet on first app run inside # Java sources, or unpacked from resources (TODO) # Typically /sdcard/alienblaster diff --git a/alienblaster/project/jni/sdl/include/SDL_main.h b/alienblaster/project/jni/sdl/include/SDL_main.h index 803aa0fb4..64a3a15b8 100644 --- a/alienblaster/project/jni/sdl/include/SDL_main.h +++ b/alienblaster/project/jni/sdl/include/SDL_main.h @@ -33,7 +33,7 @@ #if defined(__WIN32__) || \ (defined(__MWERKS__) && !defined(__BEOS__)) || \ - defined(__SYMBIAN32__) || defined(__IPHONEOS__) + defined(__SYMBIAN32__) || defined(__IPHONEOS__) || defined(ANDROID) #ifdef __cplusplus #define C_LINKAGE "C" diff --git a/alienblaster/project/jni/sdl_main/Android.mk b/alienblaster/project/jni/sdl_main/Android.mk index 8f62f6c6f..0097ca197 100644 --- a/alienblaster/project/jni/sdl_main/Android.mk +++ b/alienblaster/project/jni/sdl_main/Android.mk @@ -17,6 +17,6 @@ LOCAL_CPP_EXTENSION := .cpp LOCAL_SRC_FILES := sdl_main.c LOCAL_SHARED_LIBRARIES := sdl application -LOCAL_LDLIBS := -llog +LOCAL_LDLIBS := -llog # -Wl,-rpath=$(SDL_SHARED_LIBRARIES_PATH) # -l:$(SDL_SHARED_LIBRARIES_PATH)/libsdl.so -l:$(SDL_SHARED_LIBRARIES_PATH)/libapplication.so include $(BUILD_SHARED_LIBRARY)