aboutsummaryrefslogtreecommitdiffstats
path: root/python/servo/devenv_commands.py
diff options
context:
space:
mode:
authorSimon Sapin <simon.sapin@exyr.org>2017-04-05 21:50:44 +0200
committerSimon Sapin <simon.sapin@exyr.org>2017-04-05 21:50:44 +0200
commitca08ff876b3622a5e6b3aca6b60c934d245b7b0a (patch)
tree7af4c67de6bc051226ed03975cfc7145571392ae /python/servo/devenv_commands.py
parentbf7c044955ecfb8e074699e278994a08c22109fa (diff)
downloadservo-ca08ff876b3622a5e6b3aca6b60c934d245b7b0a.tar.gz
servo-ca08ff876b3622a5e6b3aca6b60c934d245b7b0a.zip
Add cargo-geckolib and rustc-geckolib commands to mach.
Diffstat (limited to 'python/servo/devenv_commands.py')
-rw-r--r--python/servo/devenv_commands.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/python/servo/devenv_commands.py b/python/servo/devenv_commands.py
index bb5ed6d2704..8fde8e3b361 100644
--- a/python/servo/devenv_commands.py
+++ b/python/servo/devenv_commands.py
@@ -38,6 +38,24 @@ class MachCommands(CommandBase):
return call(["cargo"] + params, env=self.build_env())
return call(['cargo'] + params, env=self.build_env())
+ @Command('cargo-geckolib',
+ description='Run Cargo with the same compiler version and root crate as build-geckolib',
+ category='devenv')
+ @CommandArgument(
+ 'params', default=None, nargs='...',
+ help="Command-line arguments to be passed through to Cargo")
+ def cargo_geckolib(self, params):
+ if not params:
+ params = []
+
+ self.set_use_stable_rust()
+ env = self.build_env(geckolib=True)
+
+ if self.context.topdir == getcwd():
+ with cd(path.join('ports', 'geckolib')):
+ return call(["cargo"] + params, env=env)
+ return call(['cargo'] + params, env=env)
+
@Command('cargo-update',
description='Same as update-cargo',
category='devenv')
@@ -97,6 +115,21 @@ class MachCommands(CommandBase):
params = []
return call(["rustc"] + params, env=self.build_env())
+ @Command('rustc-geckolib',
+ description='Run the Rust compiler with the same compiler version and root crate as build-geckolib',
+ category='devenv')
+ @CommandArgument(
+ 'params', default=None, nargs='...',
+ help="Command-line arguments to be passed through to rustc")
+ def rustc_geckolib(self, params):
+ if params is None:
+ params = []
+
+ self.set_use_stable_rust()
+ env = self.build_env(geckolib=True)
+
+ return call(["rustc"] + params, env=env)
+
@Command('rust-root',
description='Print the path to the root of the Rust compiler',
category='devenv')