Index: tools/gn/scope_per_file_provider.cc |
diff --git a/tools/gn/scope_per_file_provider.cc b/tools/gn/scope_per_file_provider.cc |
index c6a0cd7f635b6d799709379c4139090eecbd44b3..64b9a83edc27b9a861e02ae49ee76a66935867ac 100644 |
--- a/tools/gn/scope_per_file_provider.cc |
+++ b/tools/gn/scope_per_file_provider.cc |
@@ -10,8 +10,10 @@ |
#include "tools/gn/value.h" |
#include "tools/gn/variables.h" |
-ScopePerFileProvider::ScopePerFileProvider(Scope* scope) |
- : ProgrammaticProvider(scope) { |
+ScopePerFileProvider::ScopePerFileProvider(Scope* scope, |
+ bool allow_target_vars) |
+ : ProgrammaticProvider(scope), |
+ allow_target_vars_(allow_target_vars) { |
} |
ScopePerFileProvider::~ScopePerFileProvider() { |
@@ -32,10 +34,13 @@ const Value* ScopePerFileProvider::GetProgrammaticValue( |
return GetRootGenDir(); |
if (ident == variables::kRootOutDir) |
return GetRootOutDir(); |
- if (ident == variables::kTargetGenDir) |
- return GetTargetGenDir(); |
- if (ident == variables::kTargetOutDir) |
- return GetTargetOutDir(); |
+ |
+ if (allow_target_vars_) { |
+ if (ident == variables::kTargetGenDir) |
+ return GetTargetGenDir(); |
+ if (ident == variables::kTargetOutDir) |
+ return GetTargetOutDir(); |
+ } |
return NULL; |
} |