Index: tools/gn/builder.cc |
diff --git a/tools/gn/builder.cc b/tools/gn/builder.cc |
index fbd4d572a08b04184581f0960b6f57c8718f67de..3a0c1f5851663d502c2b06c3a0eea8bb6dcb512a 100644 |
--- a/tools/gn/builder.cc |
+++ b/tools/gn/builder.cc |
@@ -240,6 +240,17 @@ bool Builder::ConfigDefined(BuilderRecord* record, Err* err) { |
Config* config = record->item()->AsConfig(); |
if (!AddDeps(record, config->configs(), err)) |
return false; |
+ |
+ // Make sure all deps of this config are scheduled to be loaded. For other |
+ // item types like targets, the "should generate" flag is propogated around |
Bons
2015/09/28 16:39:45
propagated
Bons
2015/09/28 17:11:43
what about this?
|
+ // to mark whether this should happen. We could call |
+ // RecursiveSetShouldGenerate to do this step here, but since configs nor |
+ // anything they depend on is actually written, the "generate" flag isn't |
+ // relevant and means extra book keeping. Just force load any deps of this |
+ // config. |
+ for (const auto& cur : record->all_deps()) |
+ ScheduleItemLoadIfNecessary(cur); |
+ |
return true; |
} |