Gather metrics on hosted app unlimitedStorage usage
[chromium-blink-merge.git] / components / gcm_driver.gypi
blobfb6d958a077ce6261075c5050568ac234530d5c4
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/gcm_driver
9       'target_name': 'gcm_driver',
10       'type': 'static_library',
11       'dependencies': [
12         'os_crypt',
13         '../base/base.gyp:base',
14         '../google_apis/gcm/gcm.gyp:gcm',
15         '../net/net.gyp:net',
16       ],
17       'include_dirs': [
18         '..',
19       ],
20       'sources': [
21          # Note: file list duplicated in GN build.
22         'gcm_driver/android/component_jni_registrar.cc',
23         'gcm_driver/android/component_jni_registrar.h',
24         'gcm_driver/default_gcm_app_handler.cc',
25         'gcm_driver/default_gcm_app_handler.h',
26         'gcm_driver/gcm_account_mapper.cc',
27         'gcm_driver/gcm_account_mapper.h',
28         'gcm_driver/gcm_activity.cc',
29         'gcm_driver/gcm_activity.h',
30         'gcm_driver/gcm_app_handler.cc',
31         'gcm_driver/gcm_app_handler.h',
32         'gcm_driver/gcm_backoff_policy.cc',
33         'gcm_driver/gcm_backoff_policy.h',
34         'gcm_driver/gcm_channel_status_request.cc',
35         'gcm_driver/gcm_channel_status_request.h',
36         'gcm_driver/gcm_channel_status_syncer.cc',
37         'gcm_driver/gcm_channel_status_syncer.h',
38         'gcm_driver/gcm_client.cc',
39         'gcm_driver/gcm_client.h',
40         'gcm_driver/gcm_client_factory.cc',
41         'gcm_driver/gcm_client_factory.h',
42         'gcm_driver/gcm_client_impl.cc',
43         'gcm_driver/gcm_client_impl.h',
44         'gcm_driver/gcm_connection_observer.cc',
45         'gcm_driver/gcm_connection_observer.h',
46         'gcm_driver/gcm_delayed_task_controller.cc',
47         'gcm_driver/gcm_delayed_task_controller.h',
48         'gcm_driver/gcm_driver.cc',
49         'gcm_driver/gcm_driver.h',
50         'gcm_driver/gcm_driver_android.cc',
51         'gcm_driver/gcm_driver_android.h',
52         'gcm_driver/gcm_driver_desktop.cc',
53         'gcm_driver/gcm_driver_desktop.h',
54         'gcm_driver/gcm_stats_recorder_impl.cc',
55         'gcm_driver/gcm_stats_recorder_impl.h',
56         'gcm_driver/proto/gcm_channel_status.proto',
57         'gcm_driver/system_encryptor.cc',
58         'gcm_driver/system_encryptor.h',
59       ],
60       'variables': {
61         'proto_in_dir': 'gcm_driver/proto',
62         'proto_out_dir': 'components/gcm_driver/proto',
63       },
64       'includes': [ '../build/protoc.gypi' ],
65       'conditions': [
66         ['OS == "android"', {
67           'dependencies': [
68             'gcm_driver_jni_headers',
69           ],
70           'dependencies!': [
71             '../google_apis/gcm/gcm.gyp:gcm',
72           ],
73           'sources!': [
74             'gcm_driver/gcm_account_mapper.cc',
75             'gcm_driver/gcm_account_mapper.h',
76             'gcm_driver/gcm_channel_status_request.cc',
77             'gcm_driver/gcm_channel_status_request.h',
78             'gcm_driver/gcm_channel_status_syncer.cc',
79             'gcm_driver/gcm_channel_status_syncer.h',
80             'gcm_driver/gcm_client_factory.cc',
81             'gcm_driver/gcm_client_factory.h',
82             'gcm_driver/gcm_client_impl.cc',
83             'gcm_driver/gcm_client_impl.h',
84             'gcm_driver/gcm_delayed_task_controller.cc',
85             'gcm_driver/gcm_delayed_task_controller.h',
86             'gcm_driver/gcm_driver_desktop.cc',
87             'gcm_driver/gcm_driver_desktop.h',
88             'gcm_driver/gcm_stats_recorder_impl.cc',
89             'gcm_driver/gcm_stats_recorder_impl.h',
90             'gcm_driver/proto/gcm_channel_status.proto',
91           ],
92         }],
93       ],
94     },
95     {
96       # GN version: //components/gcm_driver:test_support
97       'target_name': 'gcm_driver_test_support',
98       'type': 'static_library',
99       'dependencies': [
100         'gcm_driver',
101         '../base/base.gyp:base',
102         '../google_apis/gcm/gcm.gyp:gcm_test_support',
103         '../testing/gtest.gyp:gtest',
104       ],
105       'include_dirs': [
106         '..',
107       ],
108       'sources': [
109         # Note: file list duplicated in GN build.
110         'gcm_driver/fake_gcm_app_handler.cc',
111         'gcm_driver/fake_gcm_app_handler.h',
112         'gcm_driver/fake_gcm_client.cc',
113         'gcm_driver/fake_gcm_client.h',
114         'gcm_driver/fake_gcm_client_factory.cc',
115         'gcm_driver/fake_gcm_client_factory.h',
116         'gcm_driver/fake_gcm_driver.cc',
117         'gcm_driver/fake_gcm_driver.h',
118       ],
119       'conditions': [
120         ['OS == "android"', {
121           'dependencies!': [
122             '../google_apis/gcm/gcm.gyp:gcm_test_support',
123           ],
124           'sources!': [
125             'gcm_driver/fake_gcm_client.cc',
126             'gcm_driver/fake_gcm_client.h',
127             'gcm_driver/fake_gcm_client_factory.cc',
128             'gcm_driver/fake_gcm_client_factory.h',
129           ],
130         }],
131       ],
132     },
133   ],
134   'conditions': [
135     ['OS == "android"', {
136       'targets': [
137         {
138           'target_name': 'gcm_driver_java',
139           'type': 'none',
140           'dependencies': [
141             '../base/base.gyp:base',
142             # TODO(johnme): Fix the layering violation of depending on content/
143             '../content/content.gyp:content_java',
144             '../sync/sync.gyp:sync_java',
145           ],
146           'variables': {
147             'java_in_dir': 'gcm_driver/android/java',
148           },
149           'includes': [ '../build/java.gypi' ],
150         },
151         {
152           # GN version: //components/gcm_driver:jni_headers
153           'target_name': 'gcm_driver_jni_headers',
154           'type': 'none',
155           'sources': [
156             'gcm_driver/android/java/src/org/chromium/components/gcm_driver/GCMDriver.java',
157           ],
158           'variables': {
159             'jni_gen_package': 'components/gcm_driver',
160           },
161           'includes': [ '../build/jni_generator.gypi' ],
162         },
163       ],
164      },
165     ],
166   ],