Mojo: Move ChannelEndpoint's message_pipe_ and port_ under lock.
[chromium-blink-merge.git] / components / metrics.gypi
blob1e41f86f39b41d243194a9fb84131b6774e31168
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'targets': [
7     {
8       # GN version: //components/metrics
9       'target_name': 'metrics',
10       'type': 'static_library',
11       'include_dirs': [
12         '..',
13       ],
14       'dependencies': [
15         '../base/base.gyp:base',
16         '../third_party/zlib/zlib.gyp:zlib',
17         'component_metrics_proto',
18         'variations',
19       ],
20       'sources': [
21         'metrics/clean_exit_beacon.cc',
22         'metrics/clean_exit_beacon.h',
23         'metrics/client_info.cc',
24         'metrics/client_info.h',
25         'metrics/cloned_install_detector.cc',
26         'metrics/cloned_install_detector.h',
27         'metrics/compression_utils.cc',
28         'metrics/compression_utils.h',
29         'metrics/daily_event.cc',
30         'metrics/daily_event.h',
31         'metrics/machine_id_provider.h',
32         'metrics/machine_id_provider_stub.cc',
33         'metrics/machine_id_provider_win.cc',
34         'metrics/metrics_hashes.cc',
35         'metrics/metrics_hashes.h',
36         'metrics/metrics_log.cc',
37         'metrics/metrics_log.h',
38         'metrics/metrics_log_manager.cc',
39         'metrics/metrics_log_manager.h',
40         'metrics/metrics_log_uploader.cc',
41         'metrics/metrics_log_uploader.h',
42         'metrics/metrics_pref_names.cc',
43         'metrics/metrics_pref_names.h',
44         'metrics/metrics_provider.cc',
45         'metrics/metrics_provider.h',
46         'metrics/metrics_reporting_scheduler.cc',
47         'metrics/metrics_reporting_scheduler.h',
48         'metrics/metrics_service.cc',
49         'metrics/metrics_service.h',
50         'metrics/metrics_service_client.cc',
51         'metrics/metrics_service_client.h',
52         'metrics/metrics_state_manager.cc',
53         'metrics/metrics_state_manager.h',
54         'metrics/metrics_switches.cc',
55         'metrics/metrics_switches.h',
56         'metrics/persisted_logs.cc',
57         'metrics/persisted_logs.h',
58       ],
59       'conditions': [
60         ['chromeos==1', {
61           'dependencies': [
62             'metrics_serialization',
63           ],
64         }],
65         ['OS=="win"', {
66           'sources!': [
67             'metrics/machine_id_provider_stub.cc',
68           ],
69         }],
70       ],
71     },
72     {
73       # GN version: //components/metrics:gpu
74       'target_name': 'metrics_gpu',
75       'type': 'static_library',
76       'include_dirs': [
77         '..',
78       ],
79       'dependencies': [
80         'component_metrics_proto',
81         'metrics',
82       ],
83       'sources': [
84         'metrics/gpu/gpu_metrics_provider.cc',
85         'metrics/gpu/gpu_metrics_provider.h',
86       ],
87     },
88     {
89       # GN version: //components/metrics:net
90       'target_name': 'metrics_net',
91       'type': 'static_library',
92       'include_dirs': [
93         '..',
94       ],
95       'dependencies': [
96         '../net/net.gyp:net',
97         'component_metrics_proto',
98         'metrics',
99       ],
100       'sources': [
101         'metrics/net/network_metrics_provider.cc',
102         'metrics/net/network_metrics_provider.h',
103         'metrics/net/net_metrics_log_uploader.cc',
104         'metrics/net/net_metrics_log_uploader.h',
105         'metrics/net/wifi_access_point_info_provider.cc',
106         'metrics/net/wifi_access_point_info_provider.h',
107         'metrics/net/wifi_access_point_info_provider_chromeos.cc',
108         'metrics/net/wifi_access_point_info_provider_chromeos.h',
109       ],
110     },
111     {
112       # GN version: //components/metrics:profiler
113       'target_name': 'metrics_profiler',
114       'type': 'static_library',
115       'include_dirs': [
116         '..',
117       ],
118       'dependencies': [
119         '../content/content.gyp:content_browser',
120         'component_metrics_proto',
121         'metrics',
122       ],
123       'sources': [
124         'metrics/profiler/profiler_metrics_provider.cc',
125         'metrics/profiler/profiler_metrics_provider.h',
126         'metrics/profiler/tracking_synchronizer.cc',
127         'metrics/profiler/tracking_synchronizer.h',
128         'metrics/profiler/tracking_synchronizer_observer.h',
129       ],
130     },
131     {
132       # Protobuf compiler / generator for UMA (User Metrics Analysis).
133       #
134       # GN version: //components/metrics/proto:proto
135       'target_name': 'component_metrics_proto',
136       'type': 'static_library',
137       'sources': [
138         'metrics/proto/chrome_user_metrics_extension.proto',
139         'metrics/proto/histogram_event.proto',
140         'metrics/proto/omnibox_event.proto',
141         'metrics/proto/omnibox_input_type.proto',
142         'metrics/proto/perf_data.proto',
143         'metrics/proto/profiler_event.proto',
144         'metrics/proto/sampled_profile.proto',
145         'metrics/proto/system_profile.proto',
146         'metrics/proto/user_action_event.proto',
147       ],
148       'variables': {
149         'proto_in_dir': 'metrics/proto',
150         'proto_out_dir': 'components/metrics/proto',
151       },
152       'includes': [ '../build/protoc.gypi' ],
153     },
154     {
155       # TODO(isherman): Remove all //chrome dependencies on this target, and
156       # merge the files in this target with components_unittests.
157       # GN version: //components/metrics:test_support
158       'target_name': 'metrics_test_support',
159       'type': 'static_library',
160       'include_dirs': [
161         '..',
162       ],
163       'dependencies': [
164         'component_metrics_proto',
165         'metrics',
166       ],
167       'export_dependent_settings': [
168         'component_metrics_proto',
169       ],
170       'sources': [
171         'metrics/test_metrics_service_client.cc',
172         'metrics/test_metrics_service_client.h',
173       ],
174     },
175   ],
176   'conditions': [
177     ['OS=="linux"', {
178       'targets': [
179         {
180           'target_name': 'metrics_serialization',
181           'type': 'static_library',
182           'sources': [
183             'metrics/serialization/serialization_utils.cc',
184             'metrics/serialization/serialization_utils.h',
185             'metrics/serialization/metric_sample.cc',
186             'metrics/serialization/metric_sample.h',
187           ],
188           'dependencies': [
189             '../base/base.gyp:base',
190           ],
191         },
192       ],
193     }],
194   ],