Update/fix Android build

Fix wrong path for 32-bit Windows, which fixes #7084
Exclude 32-bit Windows from multi-threaded linking because it's not supported by the NDK
Remove 32-bit Linux as there is no NDK variant for it
(cherry picked from commit 5a26459c06)
This commit is contained in:
Pedro J. Estébanez 2016-11-13 23:54:06 +01:00 committed by Rémi Verschelde
parent 28944e95e7
commit 19ce11b908

View file

@ -130,18 +130,17 @@ def configure(env):
else:
env.extra_suffix = ".armv7" + env.extra_suffix
mt_link = True
if (sys.platform.startswith("linux")):
if (platform.machine().endswith('64')):
host_subpath = "linux-x86_64"
else:
host_subpath = "linux-x86"
elif (sys.platform.startswith("darwin")):
host_subpath = "darwin-x86_64"
elif (sys.platform.startswith('win')):
if (platform.machine().endswith('64')):
host_subpath = "windows-x86_64"
else:
host_subpath = "windows-x86"
mt_link = False
host_subpath = "windows"
compiler_path = env["ANDROID_NDK_ROOT"] + \
"/toolchains/llvm/prebuilt/" + host_subpath + "/bin"
@ -205,14 +204,15 @@ def configure(env):
env['SHLIBSUFFIX'] = '.so'
env['LINKFLAGS'] = ['-shared', '--sysroot=' +
sysroot, '-Wl,--warn-shared-textrel',
'-Wl,--threads']
sysroot, '-Wl,--warn-shared-textrel']
env.Append(LINKFLAGS=string.split(
'-Wl,--fix-cortex-a8'))
env.Append(LINKFLAGS=string.split(
'-Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now'))
env.Append(LINKFLAGS=string.split(
'-Wl,-soname,libgodot_android.so -Wl,--gc-sections'))
if mt_link:
env.Append(LINKFLAGS=['-Wl,--threads'])
env.Append(LINKFLAGS=target_opts)
env.Append(LINKFLAGS=common_opts)