diff options
author | Mathew Robinson <mathew.robinson@mongodb.com> | 2020-01-24 16:08:37 +0000 |
---|---|---|
committer | evergreen <evergreen@mongodb.com> | 2020-01-24 16:08:37 +0000 |
commit | d4970df8517be6aab286d3a0551263b12076e6b3 (patch) | |
tree | f714830b69608694298bcb34cd1d62de4fa2afad /SConstruct | |
parent | ba1b7bfcc7bc133fcb3ebf6ea44c6a55edab0bea (diff) | |
download | mongo-d4970df8517be6aab286d3a0551263b12076e6b3.tar.gz |
SERVER-45724 Make new generator as fast as old module
Diffstat (limited to 'SConstruct')
-rw-r--r-- | SConstruct | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/SConstruct b/SConstruct index f65a4add436..e3ac11cb54c 100644 --- a/SConstruct +++ b/SConstruct @@ -3817,6 +3817,20 @@ if get_option('ninja') == 'true': env.NinjaRegisterFunctionHandler("integration_test_list_builder_action", skip) env.NinjaRegisterFunctionHandler("benchmark_list_builder_action", skip) + + # idlc.py has the ability to print it's implicit dependencies + # while generating, Ninja can consume these prints using the + # deps=msvc method. + env.AppendUnique(IDLCFLAGS= "--write-dependencies-inline") + env.NinjaRule( + rule="IDLC", + command="cmd /c $cmd" if env.TargetOSIs("windows") else "$cmd", + description="Generating $out", + deps="msvc", + ) + env.NinjaRuleMapping("$IDLCCOM", "IDLC") + env.NinjaRuleMapping(env["IDLCCOM"], "IDLC") + # We can create empty files for FAKELIB in Ninja because it # does not care about content signatures. We have to # write_uuid_to_file for FAKELIB in SCons because SCons does. |