cmGlobalGenerator: Process targets in a stable order

`cmMakefile::Targets` is meant for efficient lookup but does not
have a stable order.  Use `cmMakefile::OrderedTargets` instead.
This commit is contained in:
NAKAMURA Takumi 2021-06-24 18:42:53 +09:00 committed by Brad King
parent 8a812dde61
commit 9e9ab61e2f
2 changed files with 3 additions and 4 deletions

View File

@ -1781,9 +1781,8 @@ void cmGlobalGenerator::CreateGeneratorTargets(
std::map<cmTarget*, cmGeneratorTarget*> const& importedMap)
{
if (targetTypes == AllTargets) {
for (auto& target : mf->GetTargets()) {
cmTarget* t = &target.second;
lg->AddGeneratorTarget(cm::make_unique<cmGeneratorTarget>(t, lg));
for (cmTarget* target : mf->GetOrderedTargets()) {
lg->AddGeneratorTarget(cm::make_unique<cmGeneratorTarget>(target, lg));
}
}

View File

@ -1,3 +1,3 @@
CMake Error: Bad parameter for VS_DPI_AWARE: Bar
CMake Error: Bad parameter for VS_DPI_AWARE: Foo
CMake Error: Bad parameter for VS_DPI_AWARE: Bar
CMake Generate step failed. Build files cannot be regenerated correctly.