aboutsummaryrefslogtreecommitdiffstats
path: root/python/servo
diff options
context:
space:
mode:
Diffstat (limited to 'python/servo')
-rw-r--r--python/servo/build_commands.py8
-rw-r--r--python/servo/command_base.py7
-rw-r--r--python/servo/testing_commands.py4
3 files changed, 17 insertions, 2 deletions
diff --git a/python/servo/build_commands.py b/python/servo/build_commands.py
index d10be83e0a7..817dd6f66f1 100644
--- a/python/servo/build_commands.py
+++ b/python/servo/build_commands.py
@@ -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,
diff --git a/python/servo/command_base.py b/python/servo/command_base.py
index 79e1fb8f3c1..0fb5d86955d 100644
--- a/python/servo/command_base.py
+++ b/python/servo/command_base.py
@@ -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")
diff --git a/python/servo/testing_commands.py b/python/servo/testing_commands.py
index 4495b40c667..4a3e0b844bc 100644
--- a/python/servo/testing_commands.py
+++ b/python/servo/testing_commands.py
@@ -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"