Bug 1824045 - Run pre-export/export steps in mach cargo even when configure has run. r=firefox-build-system-reviewers,ahochheiden

Differential Revision: https://phabricator.services.mozilla.com/D173373
This commit is contained in:
Mike Hommey 2023-03-23 00:26:49 +00:00
Родитель a6287b9ca6
Коммит a105c4155d
1 изменённых файлов: 14 добавлений и 8 удалений

Просмотреть файл

@ -236,11 +236,13 @@ def cargo(
if cargo_extra_flags is not None:
cargo_extra_flags = " ".join(cargo_extra_flags)
try:
command_context.config_environment
except BuildEnvironmentNotFoundException:
build = command_context._spawn(BuildDriver)
if cargo_build_flags:
ret = 0
if cargo_build_flags:
# This directory is created during export. If it's not there,
# export hasn't run already.
deps = Path(command_context.topobjdir) / ".deps"
if not deps.exists():
build = command_context._spawn(BuildDriver)
ret = build.build(
command_context.metrics,
what=["pre-export", "export"],
@ -248,13 +250,17 @@ def cargo(
verbose=verbose,
mach_context=command_context._mach_context,
)
else:
else:
try:
command_context.config_environment
except BuildEnvironmentNotFoundException:
build = command_context._spawn(BuildDriver)
ret = build.configure(
command_context.metrics,
buildstatus_messages=False,
)
if ret != 0:
return ret
if ret != 0:
return ret
# XXX duplication with `mach vendor rust`
crates_and_roots = {