diff options
author | Daniel Moody <daniel.moody@mongodb.com> | 2021-04-06 05:09:43 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-04-09 17:50:03 +0000 |
commit | 59965cf5430b8132074771c0d9278a3a4b1e6730 (patch) | |
tree | 0c8ccc17ba36e840fd93b5e0c44dafb21aa2f7db /site_scons | |
parent | d7c268102917688e9763063d009ad04fdf1d3532 (diff) | |
download | mongo-59965cf5430b8132074771c0d9278a3a4b1e6730.tar.gz |
SERVER-55808 added more conftest checking to icecream and ninja tools.
Diffstat (limited to 'site_scons')
-rw-r--r-- | site_scons/site_tools/next/icecream.py | 8 | ||||
-rw-r--r-- | site_scons/site_tools/next/ninja.py | 9 |
2 files changed, 15 insertions, 2 deletions
diff --git a/site_scons/site_tools/next/icecream.py b/site_scons/site_tools/next/icecream.py index 7456ed0cc8f..4dadefe32ba 100644 --- a/site_scons/site_tools/next/icecream.py +++ b/site_scons/site_tools/next/icecream.py @@ -493,6 +493,12 @@ def generate(env): # seems fragile. If you find your local machine being overrun by # jobs, figure out what sort they are and extend this part of the # setup. + def icerun_generator(target, source, env, for_signature): + if "conftest" not in str(target[0]): + return '$ICERUN' + return '' + env['ICERUN_GENERATOR'] = icerun_generator + icerun_commands = [ "ARCOM", "LINKCOM", @@ -502,7 +508,7 @@ def generate(env): for command in icerun_commands: if command in env: - env[command] = " ".join(["$( $ICERUN $)", env[command]]) + env[command] = " ".join(["$( $ICERUN_GENERATOR $)", env[command]]) # Uncomment these to debug your icecc integration if env['ICECREAM_DEBUG']: diff --git a/site_scons/site_tools/next/ninja.py b/site_scons/site_tools/next/ninja.py index dd87ff17d40..2af826898ab 100644 --- a/site_scons/site_tools/next/ninja.py +++ b/site_scons/site_tools/next/ninja.py @@ -1344,6 +1344,13 @@ def ninja_always_serial(self, num, taskmaster): self.job = SCons.Job.Serial(taskmaster) +def ninja_print_conf_log(s, target, source, env): + """Command line print only for conftest to generate a correct conf log.""" + if target and "conftest" in str(target[0]): + action = SCons.Action._ActionAction() + action.print_cmd_line(s, target, source, env) + + class NinjaNoResponseFiles(SCons.Platform.TempFileMunge): """Overwrite the __call__ method of SCons' TempFileMunge to not delete.""" @@ -1561,7 +1568,7 @@ def generate(env): SCons.Executor.Executor._get_unchanged_targets = SCons.Executor.Executor._get_targets # Replace false action messages with nothing. - env["PRINT_CMD_LINE_FUNC"] = ninja_noop + env["PRINT_CMD_LINE_FUNC"] = ninja_print_conf_log # This reduces unnecessary subst_list calls to add the compiler to # the implicit dependencies of targets. Since we encode full paths |