diff options
Diffstat (limited to 'python/servo/command_base.py')
-rw-r--r-- | python/servo/command_base.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/python/servo/command_base.py b/python/servo/command_base.py index c1cab4a682c..c6f0aa0601c 100644 --- a/python/servo/command_base.py +++ b/python/servo/command_base.py @@ -7,6 +7,7 @@ # option. This file may not be copied, modified, or distributed # except according to those terms. +from errno import ENOENT as NO_SUCH_FILE_OR_DIRECTORY from glob import glob import gzip import itertools @@ -322,9 +323,18 @@ class CommandBase(object): def call_rustup_run(self, args, **kwargs): if self.config["tools"]["use-rustup"]: args = ["rustup" + BIN_SUFFIX, "run", "--install", self.toolchain()] + args + try: + return call(args, **kwargs) + except OSError as e: + if e.errno == NO_SUCH_FILE_OR_DIRECTORY: + print "It looks like rustup is not installed. See instructions at " \ + "https://github.com/servo/servo/#setting-up-your-environment" + print + return 1 + raise else: args[0] += BIN_SUFFIX - return call(args, **kwargs) + return call(args, **kwargs) def get_top_dir(self): return self.context.topdir |