From 3a5d384ad25bc01c0bdb8b60cbf0152a387b1c78 Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Tue, 13 Jan 2015 22:10:27 +0200 Subject: [PATCH] SDL: Extract binaries--pie.zip for Lollipop and newer, then try binaries-.zip --- project/java/MainActivity.java | 4 ++-- project/jni/application/xserver/AndroidAppSettings.cfg | 4 ++-- project/jni/application/xserver/AndroidBuild.sh | 10 +++++++--- project/jni/application/xserver/xserver | 2 +- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/project/java/MainActivity.java b/project/java/MainActivity.java index 29ae9cac1..57522611b 100644 --- a/project/java/MainActivity.java +++ b/project/java/MainActivity.java @@ -1096,8 +1096,9 @@ public class MainActivity extends Activity } } - // ----- VCMI hack ----- String [] binaryZipNames = { "binaries-" + android.os.Build.CPU_ABI + ".zip", "binaries-" + android.os.Build.CPU_ABI2 + ".zip", "binaries.zip" }; + if ( android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP ) + binaryZipNames = new String[] { "binaries-" + android.os.Build.CPU_ABI + "-pie.zip", "binaries-" + android.os.Build.CPU_ABI2 + "-pie.zip", "binaries-" + android.os.Build.CPU_ABI + ".zip", "binaries-" + android.os.Build.CPU_ABI2 + ".zip", "binaries.zip" }; for(String binaryZip: binaryZipNames) { try { @@ -1203,7 +1204,6 @@ public class MainActivity extends Activity //Log.i("SDL", "libSDL: Error: " + eee.toString()); } } - // ----- VCMI hack ----- }; public static void LoadApplicationLibrary(final Context context) diff --git a/project/jni/application/xserver/AndroidAppSettings.cfg b/project/jni/application/xserver/AndroidAppSettings.cfg index f77ee3b77..db1ff557b 100644 --- a/project/jni/application/xserver/AndroidAppSettings.cfg +++ b/project/jni/application/xserver/AndroidAppSettings.cfg @@ -7,10 +7,10 @@ AppName="XServer XSDL" AppFullName=x.org.server # Application version code (integer) -AppVersionCode=11121 +AppVersionCode=11122 # Application user-visible version name (string) -AppVersionName="1.11.21" +AppVersionName="1.11.22" # Specify path to download application data in zip archive in the form 'Description|URL|MirrorURL^Description2|URL2|MirrorURL2^...' # If you'll start Description with '!' symbol it will be enabled by default, other downloads should be selected by user from startup config menu diff --git a/project/jni/application/xserver/AndroidBuild.sh b/project/jni/application/xserver/AndroidBuild.sh index d8a14a66f..d2009b494 100755 --- a/project/jni/application/xserver/AndroidBuild.sh +++ b/project/jni/application/xserver/AndroidBuild.sh @@ -72,12 +72,16 @@ cp $CURDIR/xserver/data/busybox-$1 ./busybox cp $CURDIR/ssh ./ cp $CURDIR/sshpass ./ mkdir -p usr/bin -# Executables linked with NDK, which crash on some devices. -for f in xhost xkbcomp xli xsel; do cp $CURDIR/xserver/android/$1/$f ./usr/bin/ ; done +# Executables linked with NDK, which crash on Lollipop. +for f in xhost xkbcomp xli xsel; do cp $CURDIR/xserver/android/$1/$f ./usr/bin/$f ; done # Statically-linked prebuilt executables, generated using Debian chroot. # There are no executables for old ARMv5, so we'll use NDK executables instead for that arch. -for f in xhost xkbcomp xli xsel; do cp $CURDIR/xserver/data/$f-$1 ./usr/bin/$f ; done +#for f in xhost xkbcomp xli xsel; do cp $CURDIR/xserver/data/$f-$1 ./usr/bin/$f ; done rm -f ../AndroidData/binaries-$1.zip zip -r ../AndroidData/binaries-$1.zip . +# Executables linked with NDK with -pie, which crash on pre-Lollipop. +for f in xhost xkbcomp xli xsel; do rm ./usr/bin/$f ; cp $CURDIR/xserver/android/$1/pie/$f ./usr/bin/$f ; done +rm -f ../AndroidData/binaries-$1-pie.zip +zip -r ../AndroidData/binaries-$1-pie.zip . exit 0 diff --git a/project/jni/application/xserver/xserver b/project/jni/application/xserver/xserver index f8e8197ac..d0bceab14 160000 --- a/project/jni/application/xserver/xserver +++ b/project/jni/application/xserver/xserver @@ -1 +1 @@ -Subproject commit f8e8197ac7236c9e9eb15b24fd08e514fb904242 +Subproject commit d0bceab1467d6d58e6481503ce248e7c04b3628a