From f99eaba72e5f1696d44299d76ffc8adeaa7687f1 Mon Sep 17 00:00:00 2001 From: Cameron Cawley Date: Tue, 9 Apr 2019 23:00:21 +0100 Subject: [PATCH] ANDROID: Update to compile with modern NDKs --- backends/platform/android/android.cpp | 1 + backends/platform/android/android.mk | 2 +- backends/platform/android/jni.cpp | 2 +- configure | 35 ++------------------------- 4 files changed, 5 insertions(+), 35 deletions(-) diff --git a/backends/platform/android/android.cpp b/backends/platform/android/android.cpp index 4eedd5145c7..3fd4f46f6de 100644 --- a/backends/platform/android/android.cpp +++ b/backends/platform/android/android.cpp @@ -343,6 +343,7 @@ void OSystem_Android::initBackend() { ConfMan.set("fullscreen", "true"); ConfMan.registerDefault("aspect_ratio", true); + ConfMan.registerDefault("vsync", true); ConfMan.setInt("autosave_period", 0); ConfMan.setBool("FM_high_quality", false); diff --git a/backends/platform/android/android.mk b/backends/platform/android/android.mk index 3a9311394b5..b14df4c59cd 100644 --- a/backends/platform/android/android.mk +++ b/backends/platform/android/android.mk @@ -3,7 +3,7 @@ # These must be incremented for each market upload ANDROID_VERSIONCODE = 1000 -ANDROID_TARGET_VERSION = 15 +ANDROID_TARGET_VERSION = 23 NDK_BUILD = $(ANDROID_NDK)/ndk-build APP_ABI=$(ABI) SDK_ANDROID = $(ANDROID_SDK)/tools/android diff --git a/backends/platform/android/jni.cpp b/backends/platform/android/jni.cpp index e33759f044b..e6f5685cede 100644 --- a/backends/platform/android/jni.cpp +++ b/backends/platform/android/jni.cpp @@ -417,7 +417,7 @@ void JNI::setAudioStop() { void JNI::create(JNIEnv *env, jobject self, jobject asset_manager, jobject egl, jobject egl_display, jobject at, jint audio_sample_rate, jint audio_buffer_size) { - LOGI(gScummVMFullVersion); + LOGI("%s", gScummVMFullVersion); assert(!_system); diff --git a/configure b/configure index 50888d40702..53b94573810 100755 --- a/configure +++ b/configure @@ -2467,7 +2467,8 @@ case $_host_os in android | android-arm) append_var CXXFLAGS "-march=armv5te" append_var CXXFLAGS "-mtune=xscale" - append_var CXXFLAGS "-msoft-float" + append_var CXXFLAGS "-mfloat-abi=softfp" + append_var LDFLAGS "-mthumb" ABI="armeabi" # Platform version 9 is used by ResidualVM ANDROID_PLATFORM=9 @@ -2509,10 +2510,6 @@ case $_host_os in ;; esac - # Setup platform version and arch - append_var CXXFLAGS "--sysroot=$ANDROID_NDK/platforms/android-$ANDROID_PLATFORM/arch-$ANDROID_PLATFORM_ARCH" - append_var LDFLAGS "--sysroot=$ANDROID_NDK/platforms/android-$ANDROID_PLATFORM/arch-$ANDROID_PLATFORM_ARCH" - append_var CXXFLAGS "-fpic" append_var CXXFLAGS "-ffunction-sections" append_var CXXFLAGS "-funwind-tables" @@ -2523,36 +2520,9 @@ case $_host_os in append_var CXXFLAGS "-fomit-frame-pointer" append_var CXXFLAGS "-fstrict-aliasing" fi - append_var CXXFLAGS "-finline-limit=300" _optimization_level=-Os - if test "$_host" = android -o "$_host" = android-arm; then - append_var CXXFLAGS "-mthumb-interwork" - # FIXME: Why is the following in CXXFLAGS and not in DEFINES? Change or document this. - append_var CXXFLAGS "-D__ARM_ARCH_5__" - append_var CXXFLAGS "-D__ARM_ARCH_5T__" - append_var CXXFLAGS "-D__ARM_ARCH_5E__" - append_var CXXFLAGS "-D__ARM_ARCH_5TE__" - fi - - # surpress 'mangling of 'va_list' has changed in GCC 4.4' warning - append_var CXXFLAGS "-Wno-psabi" - - if test "$_host" = android -o "$_host" = android-arm; then - append_var LDFLAGS "-mthumb-interwork" - fi - - append_var INCLUDES "-isystem $ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/`$CXX -dumpversion`/include/" - append_var INCLUDES "-isystem $ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/`$CXX -dumpversion`/libs/$ABI/include/" - append_var LDFLAGS "-L$ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/`$CXX -dumpversion`/libs/$ABI/" - append_var LIBS "-lsupc++" add_line_to_config_mk "ANDROID_SDK = $ANDROID_SDK" - if test -d "$ANDROID_SDK"/build-tools; then - _build_tools_version=`cd "$ANDROID_SDK"/build-tools && ls -1 | sort -rn | head -1` - add_line_to_config_mk "ANDROID_BTOOLS = build-tools/$_build_tools_version" - else - add_line_to_config_mk "ANDROID_BTOOLS = platform-tools" - fi _seq_midi=no ;; beos*) @@ -2970,7 +2940,6 @@ if test -n "$_host"; then _port_mk="backends/platform/android/android.mk" _build_scalers=no _seq_midi=no - _mt32emu=no _timidity=no ;; androidsdl | androidsdl-armeabi | androidsdl-armeabi-v7a | androidsdl-mips | androidsdl-x86 | androidsdl-arm64-v8a | androidsdl-x86_64)