summaryrefslogtreecommitdiffstats
path: root/tools/gn/ninja_writer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gn/ninja_writer.cc')
-rw-r--r--tools/gn/ninja_writer.cc64
1 files changed, 0 insertions, 64 deletions
diff --git a/tools/gn/ninja_writer.cc b/tools/gn/ninja_writer.cc
deleted file mode 100644
index 8b69a3f..0000000
--- a/tools/gn/ninja_writer.cc
+++ /dev/null
@@ -1,64 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "tools/gn/ninja_writer.h"
-
-#include "tools/gn/location.h"
-#include "tools/gn/ninja_build_writer.h"
-#include "tools/gn/ninja_toolchain_writer.h"
-
-
-NinjaWriter::NinjaWriter(const BuildSettings* build_settings)
- : build_settings_(build_settings) {
-}
-
-NinjaWriter::~NinjaWriter() {
-}
-
-// static
-bool NinjaWriter::RunAndWriteFiles(const BuildSettings* build_settings) {
- NinjaWriter writer(build_settings);
- return writer.WriteRootBuildfiles();
-}
-
-bool NinjaWriter::WriteRootBuildfiles() {
- // Categorize all targets by toolchain.
- typedef std::map<Label, std::vector<const Target*> > CategorizedMap;
- CategorizedMap categorized;
-
- std::vector<const Target*> all_targets;
- build_settings_->target_manager().GetAllTargets(&all_targets);
- for (size_t i = 0; i < all_targets.size(); i++) {
- categorized[all_targets[i]->label().GetToolchainLabel()].push_back(
- all_targets[i]);
- }
-
- Label default_label =
- build_settings_->toolchain_manager().GetDefaultToolchainUnlocked();
-
- // Write out the toolchain buildfiles, and also accumulate the set of
- // all settings and find the list of targets in the default toolchain.
- std::vector<const Settings*> all_settings;
- const std::vector<const Target*>* default_targets = NULL;
- for (CategorizedMap::const_iterator i = categorized.begin();
- i != categorized.end(); ++i) {
- const Settings* settings;
- {
- base::AutoLock lock(build_settings_->item_tree().lock());
- Err ignored;
- settings =
- build_settings_->toolchain_manager().GetSettingsForToolchainLocked(
- LocationRange(), i->first, &ignored);
- }
- if (i->first == default_label)
- default_targets = &i->second;
- all_settings.push_back(settings);
- if (!NinjaToolchainWriter::RunAndWriteFile(settings, i->second))
- return false;
- }
-
- // Write the root buildfile.
- return NinjaBuildWriter::RunAndWriteFile(build_settings_, all_settings,
- *default_targets);
-}