diff options
author | edunham <edunham@mozilla.com> | 2016-03-22 13:10:37 -0700 |
---|---|---|
committer | edunham <edunham@mozilla.com> | 2016-03-22 13:10:37 -0700 |
commit | e6a3f85383bbc4ce711d26d250604e4916f0bd2b (patch) | |
tree | 3764d9ffb4ed774c0580b34f3bcce1d6edc0b64b /python/servo | |
parent | 50193e9119c567c2c511a53749ff188b9c7ec49e (diff) | |
download | servo-e6a3f85383bbc4ce711d26d250604e4916f0bd2b.tar.gz servo-e6a3f85383bbc4ce711d26d250604e4916f0bd2b.zip |
Read SERVO_RUSTC_WITH_GOLD if no .servobuild
The build system needs to disable gold on arm64 slaves. Other configuration is
done through environment variables, and buildbot hosts currently don't use a
.servobuild file at all.
This change adds the `get_env_bool` function to cast an environment variable's
string contents into a Python boolean, and uses it to retrieve the optional
SERVO_RUSTC_WITH_GOLD setting.
Diffstat (limited to 'python/servo')
-rw-r--r-- | python/servo/command_base.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/python/servo/command_base.py b/python/servo/command_base.py index 9efad3a19c2..2c980c276aa 100644 --- a/python/servo/command_base.py +++ b/python/servo/command_base.py @@ -111,6 +111,12 @@ class CommandBase(object): def __init__(self, context): self.context = context + def get_env_bool(var, default): + # Contents of env vars are strings by default. This returns the + # boolean value of the specified environment variable, or the + # speciried default if the var doesn't contain True or False + return {'True': True, 'False': False}.get(os.environ.get(var), default) + def resolverelative(category, key): # Allow ~ self.config[category][key] = path.expanduser(self.config[category][key]) @@ -151,7 +157,7 @@ class CommandBase(object): if not self.config["tools"]["system-cargo"]: self.config["tools"]["cargo-root"] = path.join( context.sharedir, "cargo", self.cargo_build_id()) - self.config["tools"].setdefault("rustc-with-gold", True) + self.config["tools"].setdefault("rustc-with-gold", get_env_bool("SERVO_RUSTC_WITH_GOLD", True)) self.config.setdefault("build", {}) self.config["build"].setdefault("android", False) |