diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-17 11:21:41 +0530 |
---|---|---|
committer | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-17 11:21:41 +0530 |
commit | a87fa103b89213b9306be35dd26980aed22207e0 (patch) | |
tree | 82583b0841e3197750a970e762237b2f8446e8dc | |
parent | 9935e82de6854b334e3b7ce3bd2816c736c38650 (diff) | |
parent | ec583326994010195e0a3afa065cd922c948b890 (diff) | |
download | servo-a87fa103b89213b9306be35dd26980aed22207e0.tar.gz servo-a87fa103b89213b9306be35dd26980aed22207e0.zip |
Auto merge of #10620 - autrilla:mach-command-improvements, r=Wafflespeanut
Improved readability of ensure_bootstrapped
<!-- 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/10620)
<!-- Reviewable:end -->
-rw-r--r-- | python/servo/command_base.py | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/python/servo/command_base.py b/python/servo/command_base.py index 877fb51180a..9f2bf307c9d 100644 --- a/python/servo/command_base.py +++ b/python/servo/command_base.py @@ -415,18 +415,26 @@ class CommandBase(object): if self.context.bootstrapped: return - if not self.config["tools"]["system-rust"] and \ - (not path.exists(path.join( - self.config["tools"]["rust-root"], "rustc", "bin", "rustc" + BIN_SUFFIX)) or - not all([path.exists(path.join( - self.config["tools"]["rust-root"], "rustc", "lib", "rustlib", x - )) for x in targets])): - print("looking for rustc at %s" % path.join( - self.config["tools"]["rust-root"], "rustc", "bin", "rustc" + BIN_SUFFIX)) + rust_root = self.config["tools"]["rust-root"] + rustc_path = path.join( + rust_root, "rustc", "bin", "rustc" + BIN_SUFFIX + ) + rustc_binary_exists = path.exists(rustc_path) + + base_target_path = path.join(rust_root, "rustc", "lib", "rustlib") + target_paths = [path.join(base_target_path, t) for t in targets] + all_targets_exist = all([path.exists(p) for p in target_paths]) + + if (not self.config['tools']['system-rust'] and + (not rustc_binary_exists or not all_targets_exist)): + print("looking for rustc at %s" % (rustc_path)) Registrar.dispatch("bootstrap-rust", context=self.context, target=targets) - if not self.config["tools"]["system-cargo"] and \ - not path.exists(path.join( - self.config["tools"]["cargo-root"], "cargo", "bin", "cargo" + BIN_SUFFIX)): + + cargo_path = path.join(self.config["tools"]["cargo-root"], "cargo", "bin", + "cargo" + BIN_SUFFIX) + cargo_binary_exists = path.exists(cargo_path) + + if not self.config["tools"]["system-cargo"] and not cargo_binary_exists: Registrar.dispatch("bootstrap-cargo", context=self.context) self.context.bootstrapped = True |