Chromium Code Reviews| Index: tools/gn/ninja_toolchain_writer.cc |
| diff --git a/tools/gn/ninja_toolchain_writer.cc b/tools/gn/ninja_toolchain_writer.cc |
| index e7459ebb3cfa2ede1e0d5303aedfdf0b36e134b2..f33fec065c8bd83c2b318d57d362d3e54d63f5d8 100644 |
| --- a/tools/gn/ninja_toolchain_writer.cc |
| +++ b/tools/gn/ninja_toolchain_writer.cc |
| @@ -49,7 +49,7 @@ void NinjaToolchainWriter::Run() { |
| bool NinjaToolchainWriter::RunAndWriteFile( |
| const Settings* settings, |
| const Toolchain* toolchain, |
| - const std::vector<const Target*>& targets) { |
| + std::vector<const Target*>& targets) { |
| base::FilePath ninja_file(settings->build_settings()->GetFullPath( |
| GetNinjaFileForToolchain(settings))); |
| ScopedTrace trace(TraceItem::TRACE_FILE_WRITE, FilePathToUTF8(ninja_file)); |
| @@ -62,6 +62,11 @@ bool NinjaToolchainWriter::RunAndWriteFile( |
| if (file.fail()) |
| return false; |
| + // Sort targets so that they are in a deterministic order. |
|
M-A Ruel
2015/12/07 15:09:50
I'd still prefer:
DCHECK(
std::is_sorted(targe
Zachary Forman
2015/12/08 09:40:42
I've followed your advice here and effectively rem
|
| + std::sort( |
| + targets.begin(), targets.end(), |
| + [](const Target* a, const Target* b) { return a->label() < b->label(); }); |
| + |
| NinjaToolchainWriter gen(settings, toolchain, targets, file); |
| gen.Run(); |
| return true; |