summaryrefslogtreecommitdiff
path: root/platform/android/jni/Application.mk
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/jni/Application.mk')
-rw-r--r--platform/android/jni/Application.mk48
1 files changed, 48 insertions, 0 deletions
diff --git a/platform/android/jni/Application.mk b/platform/android/jni/Application.mk
new file mode 100644
index 00000000..8eb9c3b9
--- /dev/null
+++ b/platform/android/jni/Application.mk
@@ -0,0 +1,48 @@
+# When we build for google play, we build 4 different apk's, each with
+# a different version, by uncommenting one of the pairs of lines below.
+# Suppose our base version is X:
+
+# Version X: armeabi
+#APP_PLATFORM=android-8
+#APP_ABI := armeabi
+
+# Version X+1: armeabi-v7a (Much faster due to the availability of hardware
+# FP, but cannot be run in the emulator).
+APP_PLATFORM=android-8
+APP_ABI := armeabi-v7a
+
+# Version X+2: x86 (Requires android-9, so a change needs to be made in
+# AndroidManifest.xml too)
+#APP_PLATFORM=android-9
+#APP_ABI := x86
+
+# Version X+3: mips (Requires android-9, so a change needs to be made in
+# AndroidManifest.xml too)
+#APP_PLATFORM=android-9
+#APP_ABI := mips
+
+ifdef NDK_PROFILER
+# The profiler doesn't seem to receive ticks when run on release code.
+# Accordingly, we need to build as debug - but this turns optimisations
+# off, which is less than ideal. We COULD force them back on by using
+# APP_CFLAGS = -O2, but this then triggers bugs in the compiler when it
+# builds a couple of our source files. Accordingly, we have moved
+# those files into Core2, and we have some flag hackery to make just that
+# module without optimisation.
+APP_OPTIM := debug
+APP_CFLAGS :=
+else
+APP_OPTIM := release
+endif
+ifdef V8_BUILD
+APP_STL := stlport_static
+endif
+ifdef MEMENTO
+APP_CFLAGS += -DMEMENTO -DMEMENTO_LEAKONLY
+endif
+
+# If the ndk is r8b then workaround bug by uncommenting the following line
+#NDK_TOOLCHAIN_VERSION=4.4.3
+
+# If the ndk is newer than r8c, try using clang.
+#NDK_TOOLCHAIN_VERSION=clang3.1