Auto merge of #11378 - mbrubeck:debug-mozjs, r=larsbergstrom

Default to the same Cargo features in all build commands

Fixes #8308 and #7327. r? @larsbergstrom

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11378)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-05-27 17:15:24 -05:00
commit 2d4941660b
3 changed files with 17 additions and 2 deletions

View file

@ -151,7 +151,7 @@ class MachCommands(CommandBase):
features=None, android=None, verbose=False, debug_mozjs=False, params=None):
if android is None:
android = self.config["build"]["android"]
features = features or []
features = features or self.servo_features()
opts = params or []
@ -198,7 +198,7 @@ class MachCommands(CommandBase):
self.ensure_bootstrapped(target=target)
if debug_mozjs or self.config["build"]["debug-mozjs"]:
if debug_mozjs:
features += ["script/debugmozjs"]
if features:
@ -271,6 +271,10 @@ class MachCommands(CommandBase):
if release:
opts += ["--release"]
servo_features = self.servo_features()
if servo_features:
opts += ["--features", "%s" % ' '.join("servo/" + x for x in servo_features)]
build_start = time()
with cd(path.join("ports", "cef")):
ret = call(["cargo", "build"] + opts,

View file

@ -418,6 +418,13 @@ class CommandBase(object):
def servo_crate(self):
return path.join(self.context.topdir, "components", "servo")
def servo_features(self):
"""Return a list of optional features to enable for the Servo crate"""
features = []
if self.config["build"]["debug-mozjs"]:
features += ["script/debugmozjs"]
return features
def android_support_dir(self):
return path.join(self.context.topdir, "support", "android")

View file

@ -178,6 +178,10 @@ class MachCommands(CommandBase):
args += ["-p", "%s_tests" % crate]
args += test_patterns
features = self.servo_features()
if features:
args += ["--features", "%s" % ' '.join(features)]
env = self.build_env()
env["RUST_BACKTRACE"] = "1"