mirror of
https://github.com/servo/servo.git
synced 2025-06-20 15:18:58 +01:00
Reduce duplication in binary path determinition for Android target (fixes issue #8349)
This commit is contained in:
parent
a5babb89a0
commit
4b71bc5c42
3 changed files with 10 additions and 9 deletions
|
@ -198,7 +198,7 @@ class MachCommands(CommandBase):
|
||||||
if verbose:
|
if verbose:
|
||||||
opts += ["-v"]
|
opts += ["-v"]
|
||||||
if android:
|
if android:
|
||||||
opts += ["--target", "arm-linux-androideabi"]
|
opts += ["--target", self.config["android"]["target"]]
|
||||||
|
|
||||||
if debug_mozjs or self.config["build"]["debug-mozjs"]:
|
if debug_mozjs or self.config["build"]["debug-mozjs"]:
|
||||||
features += ["script/debugmozjs"]
|
features += ["script/debugmozjs"]
|
||||||
|
@ -298,7 +298,6 @@ class MachCommands(CommandBase):
|
||||||
def build_gonk(self, jobs=None, verbose=False, release=False):
|
def build_gonk(self, jobs=None, verbose=False, release=False):
|
||||||
self.ensure_bootstrapped()
|
self.ensure_bootstrapped()
|
||||||
|
|
||||||
ret = None
|
|
||||||
opts = []
|
opts = []
|
||||||
if jobs is not None:
|
if jobs is not None:
|
||||||
opts += ["-j", jobs]
|
opts += ["-j", jobs]
|
||||||
|
@ -307,7 +306,7 @@ class MachCommands(CommandBase):
|
||||||
if release:
|
if release:
|
||||||
opts += ["--release"]
|
opts += ["--release"]
|
||||||
|
|
||||||
opts += ["--target", "arm-linux-androideabi"]
|
opts += ["--target", self.config["android"]["target"]]
|
||||||
env = self.build_env(gonk=True)
|
env = self.build_env(gonk=True)
|
||||||
build_start = time()
|
build_start = time()
|
||||||
with cd(path.join("ports", "gonk")):
|
with cd(path.join("ports", "gonk")):
|
||||||
|
|
|
@ -113,6 +113,7 @@ class CommandBase(object):
|
||||||
self.config["android"].setdefault("sdk", "")
|
self.config["android"].setdefault("sdk", "")
|
||||||
self.config["android"].setdefault("ndk", "")
|
self.config["android"].setdefault("ndk", "")
|
||||||
self.config["android"].setdefault("toolchain", "")
|
self.config["android"].setdefault("toolchain", "")
|
||||||
|
self.config["android"].setdefault("target", "arm-linux-androideabi")
|
||||||
|
|
||||||
self.config.setdefault("gonk", {})
|
self.config.setdefault("gonk", {})
|
||||||
self.config["gonk"].setdefault("b2g", "")
|
self.config["gonk"].setdefault("b2g", "")
|
||||||
|
@ -145,8 +146,10 @@ class CommandBase(object):
|
||||||
else:
|
else:
|
||||||
return path.join(self.context.topdir, "target")
|
return path.join(self.context.topdir, "target")
|
||||||
|
|
||||||
def get_binary_path(self, release, dev):
|
def get_binary_path(self, release, dev, android=False):
|
||||||
base_path = self.get_target_dir()
|
base_path = self.get_target_dir()
|
||||||
|
if android:
|
||||||
|
base_path = path.join(base_path, self.config["android"]["target"])
|
||||||
release_path = path.join(base_path, "release", "servo")
|
release_path = path.join(base_path, "release", "servo")
|
||||||
dev_path = path.join(base_path, "debug", "servo")
|
dev_path = path.join(base_path, "debug", "servo")
|
||||||
|
|
||||||
|
|
|
@ -199,19 +199,18 @@ class PostBuildCommands(CommandBase):
|
||||||
help="Command-line arguments to be passed through to Servo")
|
help="Command-line arguments to be passed through to Servo")
|
||||||
def package(self, params, release=False, dev=False, debug=False, debugger=None):
|
def package(self, params, release=False, dev=False, debug=False, debugger=None):
|
||||||
env = self.build_env()
|
env = self.build_env()
|
||||||
target_dir = path.join(self.get_target_dir(), "arm-linux-androideabi")
|
binary_path = self.get_binary_path(release, dev, android=True)
|
||||||
dev_flag = ""
|
|
||||||
|
|
||||||
if dev:
|
if dev:
|
||||||
env["NDK_DEBUG"] = "1"
|
env["NDK_DEBUG"] = "1"
|
||||||
env["ANT_FLAVOR"] = "debug"
|
env["ANT_FLAVOR"] = "debug"
|
||||||
dev_flag = "-d"
|
dev_flag = "-d"
|
||||||
target_dir = path.join(target_dir, "debug")
|
|
||||||
else:
|
else:
|
||||||
env["ANT_FLAVOR"] = "release"
|
env["ANT_FLAVOR"] = "release"
|
||||||
target_dir = path.join(target_dir, "release")
|
dev_flag = ""
|
||||||
|
|
||||||
output_apk = path.join(target_dir, "servo.apk")
|
target_dir = os.path.dirname(binary_path)
|
||||||
|
output_apk = "{}.apk".format(binary_path)
|
||||||
try:
|
try:
|
||||||
with cd(path.join("support", "android", "build-apk")):
|
with cd(path.join("support", "android", "build-apk")):
|
||||||
subprocess.check_call(["cargo", "run", "--", dev_flag, "-o", output_apk, "-t", target_dir,
|
subprocess.check_call(["cargo", "run", "--", dev_flag, "-o", output_apk, "-t", target_dir,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue