Chromium Code Reviews| Index: tools/gn/target.h |
| diff --git a/tools/gn/target.h b/tools/gn/target.h |
| index 440fc49ae5584561840a1ae1d8d2964f457da739..f81a34819793e6db58f888e0c5fe7842bbf561de 100644 |
| --- a/tools/gn/target.h |
| +++ b/tools/gn/target.h |
| @@ -15,6 +15,7 @@ |
| #include "base/synchronization/lock.h" |
| #include "tools/gn/action_values.h" |
| #include "tools/gn/config_values.h" |
| +#include "tools/gn/inherited_libraries.h" |
| #include "tools/gn/item.h" |
| #include "tools/gn/label_ptr.h" |
| #include "tools/gn/ordered_set.h" |
| @@ -189,7 +190,7 @@ class Target : public Item { |
| return allow_circular_includes_from_; |
| } |
| - const UniqueVector<const Target*>& inherited_libraries() const { |
| + const InheritedLibraries& inherited_libraries() const { |
| return inherited_libraries_; |
| } |
| @@ -241,7 +242,8 @@ class Target : public Item { |
| private: |
| // Pulls necessary information from dependencies to this one when all |
| // dependencies have been resolved. |
| - void PullDependentTargetInfo(); |
| + void PullDependentTarget(const Target* dep, bool is_public); |
| + void PullDependentTargets(); |
| // These each pull specific things from dependencies to this one when all |
| // deps have been resolved. |
| @@ -281,12 +283,9 @@ class Target : public Item { |
| std::set<Label> allow_circular_includes_from_; |
| - // Static libraries and source sets from transitive deps. These things need |
| - // to be linked only with the end target (executable, shared library). Source |
| - // sets do not get pushed beyond static library boundaries, and neither |
| - // source sets nor static libraries get pushed beyond sahred library |
| - // boundaries. |
| - UniqueVector<const Target*> inherited_libraries_; |
| + // Static libraries, shared, libraries, and source sets from transitive deps |
|
Dirk Pranke
2015/04/15 19:31:38
nit: extra comma after "shared"?
|
| + // that need to be linked. |
| + InheritedLibraries inherited_libraries_; |
| // These libs and dirs are inherited from statically linked deps and all |
| // configs applying to this target. |