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

Unified Diff: tools/gn/target.h

Issue 1083663007: Propagate GN public shared libraries through shared libraries (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more docs Created 5 years, 8 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 side-by-side diff with in-line comments
Download patch
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.

Powered by Google App Engine
This is Rietveld 408576698