aboutsummaryrefslogtreecommitdiffstats
path: root/python/servo/command_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/servo/command_base.py')
-rw-r--r--python/servo/command_base.py29
1 files changed, 26 insertions, 3 deletions
diff --git a/python/servo/command_base.py b/python/servo/command_base.py
index 7ab5191b41a..8f04fde27e4 100644
--- a/python/servo/command_base.py
+++ b/python/servo/command_base.py
@@ -277,8 +277,7 @@ class CommandBase(object):
self.config["android"].setdefault("sdk", "")
self.config["android"].setdefault("ndk", "")
self.config["android"].setdefault("toolchain", "")
- self.config["android"].setdefault("platform", "android-18")
- self.config["android"].setdefault("target", "arm-linux-androideabi")
+ self.handle_android_target("arm-linux-androideabi")
self.set_cargo_root()
self.set_use_stable_rust(False)
@@ -538,7 +537,31 @@ class CommandBase(object):
return path.join(self.context.topdir, "support", "android")
def android_build_dir(self, dev):
- return path.join(self.get_target_dir(), "arm-linux-androideabi", "debug" if dev else "release")
+ return path.join(self.get_target_dir(), self.config["android"]["target"], "debug" if dev else "release")
+
+ def handle_android_target(self, target):
+ if target == "arm-linux-androideabi":
+ self.config["android"]["platform"] = "android-18"
+ self.config["android"]["target"] = target
+ self.config["android"]["arch"] = "arm"
+ self.config["android"]["lib"] = "armeabi"
+ self.config["android"]["toolchain_name"] = target + "-4.9"
+ return True
+ elif target == "armv7-linux-androideabi":
+ self.config["android"]["platform"] = "android-18"
+ self.config["android"]["target"] = target
+ self.config["android"]["arch"] = "arm"
+ self.config["android"]["lib"] = "armeabi-v7a"
+ self.config["android"]["toolchain_name"] = "arm-linux-androideabi-4.9"
+ return True
+ elif target == "aarch64-linux-android":
+ self.config["android"]["platform"] = "android-21"
+ self.config["android"]["target"] = target
+ self.config["android"]["arch"] = "arm64"
+ self.config["android"]["lib"] = "arm64-v8a"
+ self.config["android"]["toolchain_name"] = target + "-4.9"
+ return True
+ return False
def ensure_bootstrapped(self, target=None):
if self.context.bootstrapped: