Skip to content

Commit f789f5b

Browse files
committed
mach: Fix cargo-geckolib check / cargo-geckolib build after servo#19476.
1 parent 5f4f355 commit f789f5b

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

python/servo/devenv_commands.py

+19-9
Original file line numberDiff line numberDiff line change
@@ -29,22 +29,32 @@
2929
@CommandProvider
3030
class MachCommands(CommandBase):
3131
def run_cargo(self, params, geckolib=False, check=False):
32-
if geckolib:
33-
self.set_use_stable_rust()
34-
crate_dir = path.join('ports', 'geckolib')
35-
else:
36-
crate_dir = path.join('ports', 'servo')
32+
if not params:
33+
params = []
3734

3835
self.ensure_bootstrapped()
3936
self.ensure_clobbered()
4037
env = self.build_env(geckolib=geckolib)
4138

42-
if not params:
43-
params = []
44-
4539
if check:
4640
params = ['check'] + params
4741

42+
if geckolib:
43+
# for c in $(cargo --list | tail -$(($(cargo --list | wc -l) - 1))); do
44+
# (cargo help $c 2>&1 | grep "\\--package" >/dev/null 2>&1) && echo $c
45+
# done
46+
if params[0] and params[0] in [
47+
'bench', 'build', 'check', 'clean', 'doc', 'fmt', 'pkgid',
48+
'run', 'rustc', 'rustdoc', 'test', 'update',
49+
]:
50+
params[1:1] = ['--package', 'geckoservo']
51+
52+
self.set_use_stable_rust()
53+
crate_dir = path.join('ports', 'geckolib')
54+
else:
55+
crate_dir = path.join('ports', 'servo')
56+
57+
4858
build_start = time()
4959
if self.context.topdir == getcwd():
5060
with cd(crate_dir):
@@ -94,7 +104,7 @@ def check(self, params):
94104
'params', default=None, nargs='...',
95105
help="Command-line arguments to be passed through to cargo check")
96106
def check_geckolib(self, params):
97-
return self.run_cargo(["-p", "geckoservo"] + (params or []), check=True, geckolib=True)
107+
return self.run_cargo(params, check=True, geckolib=True)
98108

99109
@Command('cargo-update',
100110
description='Same as update-cargo',

0 commit comments

Comments
 (0)