mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-23 15:38:52 -06:00
Ninja Multi-Config: Improve error handling when not doing cross-config build
This commit is contained in:
@@ -1192,7 +1192,10 @@ void cmGlobalNinjaGenerator::WriteTargetAliases(std::ostream& os)
|
||||
this->AppendTargetOutputs(ta.second.GeneratorTarget, build.ExplicitDeps,
|
||||
ta.second.Config);
|
||||
}
|
||||
this->WriteBuild(os, build);
|
||||
this->WriteBuild(this->EnableCrossConfigBuild()
|
||||
? os
|
||||
: *this->GetConfigFileStream(ta.second.Config),
|
||||
build);
|
||||
}
|
||||
|
||||
if (this->IsMultiConfig()) {
|
||||
@@ -1259,7 +1262,10 @@ void cmGlobalNinjaGenerator::WriteFolderTargets(std::ostream& os)
|
||||
}
|
||||
}
|
||||
// Write target
|
||||
this->WriteBuild(os, build);
|
||||
this->WriteBuild(this->EnableCrossConfigBuild()
|
||||
? os
|
||||
: *this->GetConfigFileStream(config),
|
||||
build);
|
||||
}
|
||||
|
||||
// Add shortcut target
|
||||
@@ -1282,7 +1288,7 @@ void cmGlobalNinjaGenerator::WriteFolderTargets(std::ostream& os)
|
||||
}
|
||||
build.Outputs.front() = this->BuildAlias(
|
||||
this->ConvertToNinjaPath(currentBinaryDir + "/all"), "all");
|
||||
this->WriteBuild(*this->GetCommonFileStream(), build);
|
||||
this->WriteBuild(os, build);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
^ninja: error: 'RelWithDebInfo/[^
|
||||
]*simplestatic[^
|
||||
]*', needed by 'all:RelWithDebInfo', missing and no known rule to make it$
|
||||
^ninja: error: unknown target 'all:RelWithDebInfo'$
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
^ninja: error: 'RelWithDebInfo/[^
|
||||
]*simplestatic[^
|
||||
]*', needed by 'simplestatic:RelWithDebInfo', missing and no known rule to make it$
|
||||
^ninja: error: unknown target 'simplestatic:RelWithDebInfo'$
|
||||
|
||||
Reference in New Issue
Block a user