Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Side by Side Diff: tools/gn/ninja_toolchain_writer.h

Issue 21114002: Add initial prototype for the GN meta-buildsystem. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add owners and readme Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/gn/ninja_target_writer.cc ('k') | tools/gn/ninja_toolchain_writer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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.
4
5 #ifndef TOOLS_GN_NINJA_TOOLCHAIN_WRITER_H_
6 #define TOOLS_GN_NINJA_TOOLCHAIN_WRITER_H_
7
8 #include <iosfwd>
9 #include <vector>
10
11 #include "tools/gn/ninja_helper.h"
12 #include "tools/gn/path_output.h"
13
14 class BuildSettings;
15 class Settings;
16 class Target;
17
18 class NinjaToolchainWriter {
19 public:
20 // Takes the settings for the toolchain, as well as the list of all targets
21 // assicoated with the toolchain.
22 static bool RunAndWriteFile(const Settings* settings,
23 const std::vector<const Target*>& targets);
24
25 private:
26 NinjaToolchainWriter(const Settings* settings,
27 const std::vector<const Target*>& targets,
28 std::ostream& out);
29 ~NinjaToolchainWriter();
30
31 void Run();
32
33 void WriteRules();
34 void WriteSubninjas();
35
36 const Settings* settings_;
37 std::vector<const Target*> targets_;
38 std::ostream& out_;
39 PathOutput path_output_;
40
41 NinjaHelper helper_;
42
43 DISALLOW_COPY_AND_ASSIGN(NinjaToolchainWriter);
44 };
45
46 #endif // TOOLS_GN_NINJA_TOOLCHAIN_WRITER_H_
OLDNEW
« no previous file with comments | « tools/gn/ninja_target_writer.cc ('k') | tools/gn/ninja_toolchain_writer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698