Index: ios/chrome/browser/metrics/BUILD.gn |
diff --git a/ios/chrome/browser/metrics/BUILD.gn b/ios/chrome/browser/metrics/BUILD.gn |
index feff38a2a832e71638da3a5b9ac1949591d6f74b..5b55c011325bac3232dc8d97614e5b4aca8bd596 100644 |
--- a/ios/chrome/browser/metrics/BUILD.gn |
+++ b/ios/chrome/browser/metrics/BUILD.gn |
@@ -93,8 +93,6 @@ source_set("metrics_internal") { |
"size_class_recorder.h", |
"size_class_recorder.mm", |
"size_class_recorder_private.h", |
- "tab_usage_recorder.h", |
- "tab_usage_recorder.mm", |
"tab_usage_recorder_delegate.h", |
] |
deps = [ |
@@ -111,17 +109,41 @@ source_set("metrics_internal") { |
] |
public_deps = [ |
":metrics_internal_arc", |
+ ":metrics_internal_noarc", |
+ ] |
+ allow_circular_includes_from = [ |
+ ":metrics_internal_arc", |
+ ":metrics_internal_noarc", |
] |
- allow_circular_includes_from = [ ":metrics_internal_arc" ] |
libs = [ "UIKit.framework" ] |
} |
+source_set("metrics_internal_noarc") { |
+ # TODO(crbug.com/731724) This target shouldn't be compiled with ARC until |
+ # after it's converted to use WebStates instead of Tabs. |
+ cflags_objc = [ "-fno-objc-arc" ] |
+ |
+ sources = [ |
+ "tab_usage_recorder.h", |
+ "tab_usage_recorder.mm", |
+ ] |
+ |
+ deps = [ |
+ ":metrics", |
+ "//base", |
+ "//ios/chrome/browser", |
+ "//ios/chrome/browser/tabs", |
+ "//ios/web", |
+ ] |
+} |
+ |
source_set("metrics_internal_arc") { |
sources = [ |
"tab_usage_recorder_web_state_list_observer.h", |
"tab_usage_recorder_web_state_list_observer.mm", |
] |
deps = [ |
+ ":metrics_internal_noarc", |
"//base", |
"//ios/chrome/browser/tabs", |
"//ios/chrome/browser/web_state_list", |