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

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

Issue 440333002: Support more configurability in GN toolchains (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: unsigned check Created 6 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/BUILD.gn ('k') | tools/gn/builder.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef TOOLS_GN_BUILDER_H_ 5 #ifndef TOOLS_GN_BUILDER_H_
6 #define TOOLS_GN_BUILDER_H_ 6 #define TOOLS_GN_BUILDER_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/containers/hash_tables.h" 10 #include "base/containers/hash_tables.h"
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 // This takes a BuilderRecord with resolved depdencies, and fills in the 111 // This takes a BuilderRecord with resolved depdencies, and fills in the
112 // target's Label*Vectors with the resolved pointers. 112 // target's Label*Vectors with the resolved pointers.
113 bool ResolveItem(BuilderRecord* record, Err* err); 113 bool ResolveItem(BuilderRecord* record, Err* err);
114 114
115 // Fills in the pointers in the given vector based on the labels. We assume 115 // Fills in the pointers in the given vector based on the labels. We assume
116 // that everything should be resolved by this point, so will return an error 116 // that everything should be resolved by this point, so will return an error
117 // if anything isn't found or if the type doesn't match. 117 // if anything isn't found or if the type doesn't match.
118 bool ResolveDeps(LabelTargetVector* deps, Err* err); 118 bool ResolveDeps(LabelTargetVector* deps, Err* err);
119 bool ResolveConfigs(UniqueVector<LabelConfigPair>* configs, Err* err); 119 bool ResolveConfigs(UniqueVector<LabelConfigPair>* configs, Err* err);
120 bool ResolveForwardDependentConfigs(Target* target, Err* err); 120 bool ResolveForwardDependentConfigs(Target* target, Err* err);
121 bool ResolveToolchain(Target* target, Err* err);
121 122
122 // Given a list of unresolved records, tries to find any circular 123 // Given a list of unresolved records, tries to find any circular
123 // dependencies and returns the string describing the problem. If no circular 124 // dependencies and returns the string describing the problem. If no circular
124 // deps were found, returns the empty string. 125 // deps were found, returns the empty string.
125 std::string CheckForCircularDependencies( 126 std::string CheckForCircularDependencies(
126 const std::vector<const BuilderRecord*>& bad_records) const; 127 const std::vector<const BuilderRecord*>& bad_records) const;
127 128
128 // Non owning pointer. 129 // Non owning pointer.
129 Loader* loader_; 130 Loader* loader_;
130 131
131 // Owning pointers. 132 // Owning pointers.
132 typedef base::hash_map<Label, BuilderRecord*> RecordMap; 133 typedef base::hash_map<Label, BuilderRecord*> RecordMap;
133 RecordMap records_; 134 RecordMap records_;
134 135
135 ResolvedCallback resolved_callback_; 136 ResolvedCallback resolved_callback_;
136 137
137 DISALLOW_COPY_AND_ASSIGN(Builder); 138 DISALLOW_COPY_AND_ASSIGN(Builder);
138 }; 139 };
139 140
140 #endif // TOOLS_GN_BUILDER_H_ 141 #endif // TOOLS_GN_BUILDER_H_
OLDNEW
« no previous file with comments | « tools/gn/BUILD.gn ('k') | tools/gn/builder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698