0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-12-01 09:32:32 +01:00

Revert "SERVER-55259 Ensure build.ninja is always in a clean state"

This reverts commit 13f0ae71f6.
This commit is contained in:
Ryan Egesdahl 2021-10-12 09:03:33 -07:00 committed by Evergreen Agent
parent 4be7848207
commit 9b9183727d

View File

@ -28,7 +28,6 @@ import importlib
import io
import shutil
import shlex
import tempfile
import textwrap
from glob import glob
@ -516,11 +515,6 @@ class NinjaState:
),
"description": "Symlink $in -> $out",
},
"NOOP": {
"command": "echo 0 > {}".format("NUL" if sys.platform == 'win32' else "/dev/null"),
"description": "Checking $out",
"pool": "local_pool",
},
"INSTALL": {
"command": "$COPY $in $out",
"description": "Install $out",
@ -565,9 +559,9 @@ class NinjaState:
},
"REGENERATE": {
"command": "$SCONS_INVOCATION_W_TARGETS",
"description": "Regenerating $self",
"depfile": os.path.join(get_path(env['NINJA_BUILDDIR']), '$out.depfile'),
"description": "Regenerating $out",
"generator": 1,
"depfile": os.path.join(get_path(env['NINJA_BUILDDIR']), '$out.depfile'),
# Console pool restricts to 1 job running at a time,
# it additionally has some special handling about
# passing stdin, stdout, etc to process in this pool
@ -812,28 +806,15 @@ class NinjaState:
# list of build generation about. However, because the generate rule
# is hardcoded here, we need to do this generate_depfile call manually.
ninja_file_path = self.env.File(ninja_file).path
ninja_in_file_path = os.path.join(get_path(self.env['NINJA_BUILDDIR']), os.path.basename(ninja_file)) + ".in"
generate_depfile(
self.env,
ninja_in_file_path,
self.env['NINJA_REGENERATE_DEPS'],
ninja_file_path,
self.env['NINJA_REGENERATE_DEPS']
)
ninja.build(
ninja_in_file_path,
rule="REGENERATE",
variables={
"self": ninja_file_path,
},
)
# This sets up a dependency edge between build.ninja.in and build.ninja
# without actually taking any action to transform one into the other
# because we write both files ourselves later.
ninja.build(
ninja_file_path,
rule="NOOP",
inputs=[ninja_in_file_path],
rule="REGENERATE",
implicit=[__file__],
)
@ -870,10 +851,8 @@ class NinjaState:
if scons_default_targets:
ninja.default(" ".join(scons_default_targets))
with tempfile.NamedTemporaryFile(delete=False, mode='w') as temp_ninja_file:
temp_ninja_file.write(content.getvalue())
shutil.move(temp_ninja_file.name, ninja_in_file_path)
shutil.copy2(ninja_in_file_path, ninja_file)
with open(ninja_file, "w") as build_ninja:
build_ninja.write(content.getvalue())
self.__generated = True