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

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

Issue 301243002: Don't inherit source sets across static libs in GN. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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 | « no previous file | tools/gn/target.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_TARGET_H_ 5 #ifndef TOOLS_GN_TARGET_H_
6 #define TOOLS_GN_TARGET_H_ 6 #define TOOLS_GN_TARGET_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 LabelTargetVector datadeps_; 191 LabelTargetVector datadeps_;
192 192
193 LabelConfigVector configs_; 193 LabelConfigVector configs_;
194 LabelConfigVector all_dependent_configs_; 194 LabelConfigVector all_dependent_configs_;
195 LabelConfigVector direct_dependent_configs_; 195 LabelConfigVector direct_dependent_configs_;
196 LabelTargetVector forward_dependent_configs_; 196 LabelTargetVector forward_dependent_configs_;
197 197
198 bool external_; 198 bool external_;
199 199
200 // Static libraries and source sets from transitive deps. These things need 200 // Static libraries and source sets from transitive deps. These things need
201 // to be linked only with the end target (executable, shared library). These 201 // to be linked only with the end target (executable, shared library). Source
202 // do not get pushed beyond shared library boundaries. 202 // sets do not get pushed beyond static library boundaries, and neither
203 // source sets nor static libraries get pushed beyond sahred library
204 // boundaries.
203 std::set<const Target*> inherited_libraries_; 205 std::set<const Target*> inherited_libraries_;
204 206
205 // These libs and dirs are inherited from statically linked deps and all 207 // These libs and dirs are inherited from statically linked deps and all
206 // configs applying to this target. 208 // configs applying to this target.
207 OrderedSet<SourceDir> all_lib_dirs_; 209 OrderedSet<SourceDir> all_lib_dirs_;
208 OrderedSet<std::string> all_libs_; 210 OrderedSet<std::string> all_libs_;
209 211
210 // All hard deps from this target and all dependencies. Filled in when this 212 // All hard deps from this target and all dependencies. Filled in when this
211 // target is marked resolved. This will not include the current target. 213 // target is marked resolved. This will not include the current target.
212 std::set<const Target*> recursive_hard_deps_; 214 std::set<const Target*> recursive_hard_deps_;
213 215
214 ConfigValues config_values_; // Used for all binary targets. 216 ConfigValues config_values_; // Used for all binary targets.
215 ActionValues action_values_; // Used for action[_foreach] targets. 217 ActionValues action_values_; // Used for action[_foreach] targets.
216 218
217 DISALLOW_COPY_AND_ASSIGN(Target); 219 DISALLOW_COPY_AND_ASSIGN(Target);
218 }; 220 };
219 221
220 #endif // TOOLS_GN_TARGET_H_ 222 #endif // TOOLS_GN_TARGET_H_
OLDNEW
« no previous file with comments | « no previous file | tools/gn/target.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698