|
|
@@ -1222,11 +1222,13 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatements(
|
|
|
|
|
|
cmNinjaBuild build(this->LanguageDyndepRule(language, config));
|
|
|
build.Outputs.push_back(this->GetDyndepFilePath(language, config));
|
|
|
- build.ImplicitOuts.push_back(
|
|
|
+ build.ImplicitOuts.emplace_back(
|
|
|
cmStrCat(this->Makefile->GetCurrentBinaryDirectory(), '/',
|
|
|
this->LocalGenerator->GetTargetDirectory(this->GeneratorTarget),
|
|
|
this->GetGlobalGenerator()->ConfigDirectory(config), '/',
|
|
|
language, "Modules.json"));
|
|
|
+ build.ImplicitDeps.emplace_back(
|
|
|
+ this->GetTargetDependInfoPath(language, config));
|
|
|
for (auto const& scanFiles : scanningFiles) {
|
|
|
if (!scanFiles.ScanningOutput.empty()) {
|
|
|
build.ExplicitDeps.push_back(scanFiles.ScanningOutput);
|
|
|
@@ -1241,10 +1243,12 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatements(
|
|
|
auto const linked_directories =
|
|
|
this->GetLinkedTargetDirectories(language, config);
|
|
|
for (std::string const& l : linked_directories.Direct) {
|
|
|
- build.ImplicitDeps.push_back(cmStrCat(l, '/', language, "Modules.json"));
|
|
|
+ build.ImplicitDeps.emplace_back(
|
|
|
+ cmStrCat(l, '/', language, "Modules.json"));
|
|
|
}
|
|
|
for (std::string const& l : linked_directories.Forward) {
|
|
|
- build.ImplicitDeps.push_back(cmStrCat(l, '/', language, "Modules.json"));
|
|
|
+ build.ImplicitDeps.emplace_back(
|
|
|
+ cmStrCat(l, '/', language, "Modules.json"));
|
|
|
}
|
|
|
|
|
|
this->GetGlobalGenerator()->WriteBuild(this->GetImplFileStream(fileConfig),
|