1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef TOOLS_GN_NINJA_WRITER_H_
6 #define TOOLS_GN_NINJA_WRITER_H_
12 #include "base/basictypes.h"
22 // On failure will populate |err| and will return false.
23 static bool RunAndWriteFiles(const BuildSettings
* build_settings
,
27 // Writes only the toolchain.ninja files, skipping the root buildfile. The
28 // settings for the files written will be added to the vector.
29 static bool RunAndWriteToolchainFiles(
30 const BuildSettings
* build_settings
,
32 std::vector
<const Settings
*>* all_settings
,
36 NinjaWriter(const BuildSettings
* build_settings
, Builder
* builder
);
40 std::vector
<const Settings
*>* all_settings
,
41 std::vector
<const Target
*>* default_targets
,
43 bool WriteRootBuildfiles(const std::vector
<const Settings
*>& all_settings
,
44 const std::vector
<const Target
*>& default_targets
,
47 const BuildSettings
* build_settings_
;
50 DISALLOW_COPY_AND_ASSIGN(NinjaWriter
);
53 #endif // TOOLS_GN_NINJA_WRITER_H_