OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "tools/gn/build_settings.h" | 5 #include "tools/gn/build_settings.h" |
6 | 6 |
7 #include "base/files/file_util.h" | 7 #include "base/files/file_util.h" |
8 #include "tools/gn/filesystem_utils.h" | 8 #include "tools/gn/filesystem_utils.h" |
9 | 9 |
10 BuildSettings::BuildSettings() { | 10 BuildSettings::BuildSettings() |
| 11 : check_for_bad_items_(true) { |
11 } | 12 } |
12 | 13 |
13 BuildSettings::BuildSettings(const BuildSettings& other) | 14 BuildSettings::BuildSettings(const BuildSettings& other) |
14 : root_path_(other.root_path_), | 15 : root_path_(other.root_path_), |
15 root_path_utf8_(other.root_path_utf8_), | 16 root_path_utf8_(other.root_path_utf8_), |
16 secondary_source_path_(other.secondary_source_path_), | 17 secondary_source_path_(other.secondary_source_path_), |
17 python_path_(other.python_path_), | 18 python_path_(other.python_path_), |
18 build_config_file_(other.build_config_file_), | 19 build_config_file_(other.build_config_file_), |
19 build_dir_(other.build_dir_), | 20 build_dir_(other.build_dir_), |
20 build_args_(other.build_args_) { | 21 build_args_(other.build_args_), |
| 22 check_for_bad_items_(true) { |
21 } | 23 } |
22 | 24 |
23 BuildSettings::~BuildSettings() { | 25 BuildSettings::~BuildSettings() { |
24 } | 26 } |
25 | 27 |
26 void BuildSettings::SetRootPath(const base::FilePath& r) { | 28 void BuildSettings::SetRootPath(const base::FilePath& r) { |
27 DCHECK(r.value()[r.value().size() - 1] != base::FilePath::kSeparators[0]); | 29 DCHECK(r.value()[r.value().size() - 1] != base::FilePath::kSeparators[0]); |
28 root_path_ = r.NormalizePathSeparatorsTo('/'); | 30 root_path_ = r.NormalizePathSeparatorsTo('/'); |
29 root_path_utf8_ = FilePathToUTF8(root_path_); | 31 root_path_utf8_ = FilePathToUTF8(root_path_); |
30 } | 32 } |
(...skipping 22 matching lines...) Expand all Loading... |
53 base::FilePath BuildSettings::GetFullPathSecondary( | 55 base::FilePath BuildSettings::GetFullPathSecondary( |
54 const SourceDir& dir) const { | 56 const SourceDir& dir) const { |
55 return dir.Resolve(secondary_source_path_).NormalizePathSeparatorsTo('/'); | 57 return dir.Resolve(secondary_source_path_).NormalizePathSeparatorsTo('/'); |
56 } | 58 } |
57 | 59 |
58 void BuildSettings::ItemDefined(scoped_ptr<Item> item) const { | 60 void BuildSettings::ItemDefined(scoped_ptr<Item> item) const { |
59 DCHECK(item); | 61 DCHECK(item); |
60 if (!item_defined_callback_.is_null()) | 62 if (!item_defined_callback_.is_null()) |
61 item_defined_callback_.Run(item.Pass()); | 63 item_defined_callback_.Run(item.Pass()); |
62 } | 64 } |
OLD | NEW |