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

Unified Diff: tools/gn/visibility.cc

Issue 630223002: gn: Support build directories outside the source tree. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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/visibility.cc
diff --git a/tools/gn/visibility.cc b/tools/gn/visibility.cc
index a61a5cd9c45f7effb57fd053be21ddaf29a6122e..83f0a83bc295eba2d53c533d22ae77885d53b9d4 100644
--- a/tools/gn/visibility.cc
+++ b/tools/gn/visibility.cc
@@ -20,7 +20,8 @@ Visibility::Visibility() {
Visibility::~Visibility() {
}
-bool Visibility::Set(const SourceDir& current_dir,
+bool Visibility::Set(const base::FilePath& source_root,
+ const SourceDir& current_dir,
const Value& value,
Err* err) {
patterns_.clear();
@@ -31,7 +32,8 @@ bool Visibility::Set(const SourceDir& current_dir,
}
for (const auto& item : value.list_value()) {
- patterns_.push_back(LabelPattern::GetPattern(current_dir, item, err));
+ patterns_.push_back(LabelPattern::GetPattern(source_root, current_dir,
+ item, err));
if (err->has_error())
return false;
}
@@ -103,7 +105,8 @@ bool Visibility::CheckItemVisibility(const Item* from,
bool Visibility::FillItemVisibility(Item* item, Scope* scope, Err* err) {
const Value* vis_value = scope->GetValue(variables::kVisibility, true);
if (vis_value)
- item->visibility().Set(scope->GetSourceDir(), *vis_value, err);
+ item->visibility().Set(scope->settings()->build_settings()->root_path(),
+ scope->GetSourceDir(), *vis_value, err);
else // Default to public.
item->visibility().SetPublic();
return !err->has_error();

Powered by Google App Engine
This is Rietveld 408576698