Auto merge of #20472 - jdm:android-x86-2, r=mbrubeck

Support i686-linux-android target for android-x86 emulator

The first commit allows `./mach build --target=i686-linux-android` to build successfully. The second commit is temporary as I attempt to find the cause of the mysterious crash that takes down the browser.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20472)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2018-05-23 11:53:39 -04:00 committed by GitHub
commit 521748c01e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 54 additions and 17 deletions

View file

@ -295,6 +295,7 @@ class MachCommands(CommandBase):
sys.exit(1)
env["RUST_TARGET"] = target
env["ANDROID_TOOLCHAIN_NAME"] = self.config["android"]["toolchain_prefix"]
with cd(openssl_dir):
status = call(
make_cmd + ["-f", "openssl.makefile"],

View file

@ -607,6 +607,7 @@ class CommandBase(object):
if target == "arm-linux-androideabi":
self.config["android"]["platform"] = "android-18"
self.config["android"]["target"] = target
self.config["android"]["toolchain_prefix"] = target
self.config["android"]["arch"] = "arm"
self.config["android"]["lib"] = "armeabi"
self.config["android"]["toolchain_name"] = target + "-4.9"
@ -614,6 +615,7 @@ class CommandBase(object):
elif target == "armv7-linux-androideabi":
self.config["android"]["platform"] = "android-18"
self.config["android"]["target"] = target
self.config["android"]["toolchain_prefix"] = "arm-linux-androideabi"
self.config["android"]["arch"] = "arm"
self.config["android"]["lib"] = "armeabi-v7a"
self.config["android"]["toolchain_name"] = "arm-linux-androideabi-4.9"
@ -621,10 +623,19 @@ class CommandBase(object):
elif target == "aarch64-linux-android":
self.config["android"]["platform"] = "android-21"
self.config["android"]["target"] = target
self.config["android"]["toolchain_prefix"] = target
self.config["android"]["arch"] = "arm64"
self.config["android"]["lib"] = "arm64-v8a"
self.config["android"]["toolchain_name"] = target + "-4.9"
return True
elif target == "i686-linux-android":
self.config["android"]["platform"] = "android-18"
self.config["android"]["target"] = target
self.config["android"]["toolchain_prefix"] = "x86"
self.config["android"]["arch"] = "x86"
self.config["android"]["lib"] = "x86"
self.config["android"]["toolchain_name"] = "x86-4.9"
return True
return False
def ensure_bootstrapped(self, target=None):

View file

@ -200,6 +200,8 @@ class PackageCommands(CommandBase):
build_type = "Arm64"
elif "armv7" in android_target:
build_type = "Armv7"
elif "i686" in android_target:
build_type = "x86"
else:
build_type = "Arm"