Explicitly add python-numpy dependency to install-build-deps.
[chromium-blink-merge.git] / components / metrics.gypi
blobd510738787afad5a4ab8ff8330cc3132ed143ff9
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       'export_dependent_settings': [
21         'component_metrics_proto',
22       ],
23       'sources': [
24         'metrics/clean_exit_beacon.cc',
25         'metrics/clean_exit_beacon.h',
26         'metrics/client_info.cc',
27         'metrics/client_info.h',
28         'metrics/cloned_install_detector.cc',
29         'metrics/cloned_install_detector.h',
30         'metrics/compression_utils.cc',
31         'metrics/compression_utils.h',
32         'metrics/daily_event.cc',
33         'metrics/daily_event.h',
34         'metrics/machine_id_provider.h',
35         'metrics/machine_id_provider_stub.cc',
36         'metrics/machine_id_provider_win.cc',
37         'metrics/metrics_hashes.cc',
38         'metrics/metrics_hashes.h',
39         'metrics/metrics_log.cc',
40         'metrics/metrics_log.h',
41         'metrics/metrics_log_manager.cc',
42         'metrics/metrics_log_manager.h',
43         'metrics/metrics_log_uploader.cc',
44         'metrics/metrics_log_uploader.h',
45         'metrics/metrics_pref_names.cc',
46         'metrics/metrics_pref_names.h',
47         'metrics/metrics_provider.cc',
48         'metrics/metrics_provider.h',
49         'metrics/metrics_reporting_scheduler.cc',
50         'metrics/metrics_reporting_scheduler.h',
51         'metrics/metrics_service.cc',
52         'metrics/metrics_service.h',
53         'metrics/metrics_service_accessor.cc',
54         'metrics/metrics_service_accessor.h',
55         'metrics/metrics_service_client.cc',
56         'metrics/metrics_service_client.h',
57         'metrics/metrics_state_manager.cc',
58         'metrics/metrics_state_manager.h',
59         'metrics/metrics_switches.cc',
60         'metrics/metrics_switches.h',
61         'metrics/persisted_logs.cc',
62         'metrics/persisted_logs.h',
63       ],
64       'conditions': [
65         ['chromeos==1', {
66           'dependencies': [
67             'metrics_serialization',
68           ],
69         }],
70         ['OS=="win"', {
71           'sources!': [
72             'metrics/machine_id_provider_stub.cc',
73           ],
74         }],
75       ],
76     },
77     {
78       # GN version: //components/metrics:gpu
79       'target_name': 'metrics_gpu',
80       'type': 'static_library',
81       'include_dirs': [
82         '..',
83       ],
84       'dependencies': [
85         'component_metrics_proto',
86         'metrics',
87       ],
88       'sources': [
89         'metrics/gpu/gpu_metrics_provider.cc',
90         'metrics/gpu/gpu_metrics_provider.h',
91       ],
92     },
93     {
94       # GN version: //components/metrics:net
95       'target_name': 'metrics_net',
96       'type': 'static_library',
97       'include_dirs': [
98         '..',
99       ],
100       'dependencies': [
101         '../net/net.gyp:net',
102         'component_metrics_proto',
103         'metrics',
104       ],
105       'sources': [
106         'metrics/net/network_metrics_provider.cc',
107         'metrics/net/network_metrics_provider.h',
108         'metrics/net/net_metrics_log_uploader.cc',
109         'metrics/net/net_metrics_log_uploader.h',
110         'metrics/net/wifi_access_point_info_provider.cc',
111         'metrics/net/wifi_access_point_info_provider.h',
112         'metrics/net/wifi_access_point_info_provider_chromeos.cc',
113         'metrics/net/wifi_access_point_info_provider_chromeos.h',
114       ],
115     },
116     {
117       # GN version: //components/metrics:profiler
118       'target_name': 'metrics_profiler',
119       'type': 'static_library',
120       'include_dirs': [
121         '..',
122       ],
123       'dependencies': [
124         '../content/content.gyp:content_browser',
125         'component_metrics_proto',
126         'metrics',
127       ],
128       'export_dependent_settings': [
129         'component_metrics_proto',
130       ],
131       'sources': [
132         'metrics/profiler/profiler_metrics_provider.cc',
133         'metrics/profiler/profiler_metrics_provider.h',
134         'metrics/profiler/tracking_synchronizer.cc',
135         'metrics/profiler/tracking_synchronizer.h',
136         'metrics/profiler/tracking_synchronizer_observer.h',
137       ],
138     },
139     {
140       # Protobuf compiler / generator for UMA (User Metrics Analysis).
141       #
142       # GN version: //components/metrics/proto:proto
143       'target_name': 'component_metrics_proto',
144       'type': 'static_library',
145       'sources': [
146         'metrics/proto/chrome_user_metrics_extension.proto',
147         'metrics/proto/histogram_event.proto',
148         'metrics/proto/omnibox_event.proto',
149         'metrics/proto/omnibox_input_type.proto',
150         'metrics/proto/perf_data.proto',
151         'metrics/proto/profiler_event.proto',
152         'metrics/proto/sampled_profile.proto',
153         'metrics/proto/system_profile.proto',
154         'metrics/proto/user_action_event.proto',
155       ],
156       'variables': {
157         'proto_in_dir': 'metrics/proto',
158         'proto_out_dir': 'components/metrics/proto',
159       },
160       'includes': [ '../build/protoc.gypi' ],
161     },
162     {
163       # TODO(isherman): Remove all //chrome dependencies on this target, and
164       # merge the files in this target with components_unittests.
165       # GN version: //components/metrics:test_support
166       'target_name': 'metrics_test_support',
167       'type': 'static_library',
168       'include_dirs': [
169         '..',
170       ],
171       'dependencies': [
172         'component_metrics_proto',
173         'metrics',
174       ],
175       'export_dependent_settings': [
176         'component_metrics_proto',
177       ],
178       'sources': [
179         'metrics/test_metrics_service_client.cc',
180         'metrics/test_metrics_service_client.h',
181       ],
182     },
183   ],
184   'conditions': [
185     ['OS=="linux"', {
186       'targets': [
187         {
188           'target_name': 'metrics_serialization',
189           'type': 'static_library',
190           'sources': [
191             'metrics/serialization/serialization_utils.cc',
192             'metrics/serialization/serialization_utils.h',
193             'metrics/serialization/metric_sample.cc',
194             'metrics/serialization/metric_sample.h',
195           ],
196           'dependencies': [
197             '../base/base.gyp:base',
198           ],
199         },
200       ],
201     }],
202   ],