Makes the view manager client lib remove children when embedding
[chromium-blink-merge.git] / components / gcm_driver.gypi
bloba52086c1fec1b9ef78159b67dad037a638a1eec4
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         '../sync/sync.gyp:sync_proto',
17       ],
18       'include_dirs': [
19         '..',
20       ],
21       'sources': [
22          # Note: file list duplicated in GN build.
23         'gcm_driver/android/component_jni_registrar.cc',
24         'gcm_driver/android/component_jni_registrar.h',
25         'gcm_driver/default_gcm_app_handler.cc',
26         'gcm_driver/default_gcm_app_handler.h',
27         'gcm_driver/gcm_account_mapper.cc',
28         'gcm_driver/gcm_account_mapper.h',
29         'gcm_driver/gcm_activity.cc',
30         'gcm_driver/gcm_activity.h',
31         'gcm_driver/gcm_app_handler.cc',
32         'gcm_driver/gcm_app_handler.h',
33         'gcm_driver/gcm_backoff_policy.cc',
34         'gcm_driver/gcm_backoff_policy.h',
35         'gcm_driver/gcm_channel_status_request.cc',
36         'gcm_driver/gcm_channel_status_request.h',
37         'gcm_driver/gcm_channel_status_syncer.cc',
38         'gcm_driver/gcm_channel_status_syncer.h',
39         'gcm_driver/gcm_client.cc',
40         'gcm_driver/gcm_client.h',
41         'gcm_driver/gcm_client_factory.cc',
42         'gcm_driver/gcm_client_factory.h',
43         'gcm_driver/gcm_client_impl.cc',
44         'gcm_driver/gcm_client_impl.h',
45         'gcm_driver/gcm_connection_observer.cc',
46         'gcm_driver/gcm_connection_observer.h',
47         'gcm_driver/gcm_delayed_task_controller.cc',
48         'gcm_driver/gcm_delayed_task_controller.h',
49         'gcm_driver/gcm_driver.cc',
50         'gcm_driver/gcm_driver.h',
51         'gcm_driver/gcm_driver_android.cc',
52         'gcm_driver/gcm_driver_android.h',
53         'gcm_driver/gcm_driver_desktop.cc',
54         'gcm_driver/gcm_driver_desktop.h',
55         'gcm_driver/gcm_stats_recorder_impl.cc',
56         'gcm_driver/gcm_stats_recorder_impl.h',
57         'gcm_driver/registration_info.cc',
58         'gcm_driver/registration_info.h',
59         'gcm_driver/system_encryptor.cc',
60         'gcm_driver/system_encryptor.h',
61       ],
62       'variables': {
63         'proto_in_dir': 'gcm_driver/proto',
64         'proto_out_dir': 'components/gcm_driver/proto',
65       },
66       'includes': [ '../build/protoc.gypi' ],
67       'conditions': [
68         ['OS == "android"', {
69           'dependencies': [
70             'gcm_driver_jni_headers',
71           ],
72           'dependencies!': [
73             '../google_apis/gcm/gcm.gyp:gcm',
74           ],
75           'sources!': [
76             'gcm_driver/gcm_account_mapper.cc',
77             'gcm_driver/gcm_account_mapper.h',
78             'gcm_driver/gcm_channel_status_request.cc',
79             'gcm_driver/gcm_channel_status_request.h',
80             'gcm_driver/gcm_channel_status_syncer.cc',
81             'gcm_driver/gcm_channel_status_syncer.h',
82             'gcm_driver/gcm_client_factory.cc',
83             'gcm_driver/gcm_client_factory.h',
84             'gcm_driver/gcm_client_impl.cc',
85             'gcm_driver/gcm_client_impl.h',
86             'gcm_driver/gcm_delayed_task_controller.cc',
87             'gcm_driver/gcm_delayed_task_controller.h',
88             'gcm_driver/gcm_driver_desktop.cc',
89             'gcm_driver/gcm_driver_desktop.h',
90             'gcm_driver/gcm_stats_recorder_impl.cc',
91             'gcm_driver/gcm_stats_recorder_impl.h',
92             'gcm_driver/proto/gcm_channel_status.proto',
93           ],
94         }],
95         ['chromeos == 1', {
96           'dependencies': [
97             'timers',
98           ],
99         }],
100       ],
101     },
102     {
103       # GN version: //components/gcm_driver:test_support
104       'target_name': 'gcm_driver_test_support',
105       'type': 'static_library',
106       'dependencies': [
107         'gcm_driver',
108         '../base/base.gyp:base',
109         '../google_apis/gcm/gcm.gyp:gcm_test_support',
110         '../testing/gtest.gyp:gtest',
111       ],
112       'include_dirs': [
113         '..',
114       ],
115       'sources': [
116         # Note: file list duplicated in GN build.
117         'gcm_driver/fake_gcm_app_handler.cc',
118         'gcm_driver/fake_gcm_app_handler.h',
119         'gcm_driver/fake_gcm_client.cc',
120         'gcm_driver/fake_gcm_client.h',
121         'gcm_driver/fake_gcm_client_factory.cc',
122         'gcm_driver/fake_gcm_client_factory.h',
123         'gcm_driver/fake_gcm_driver.cc',
124         'gcm_driver/fake_gcm_driver.h',
125       ],
126       'conditions': [
127         ['OS == "android"', {
128           'dependencies!': [
129             '../google_apis/gcm/gcm.gyp:gcm_test_support',
130           ],
131           'sources!': [
132             'gcm_driver/fake_gcm_client.cc',
133             'gcm_driver/fake_gcm_client.h',
134             'gcm_driver/fake_gcm_client_factory.cc',
135             'gcm_driver/fake_gcm_client_factory.h',
136           ],
137         }],
138       ],
139     },
140     {
141       # GN version: //components/gcm_driver/instance_id
142       'target_name': 'instance_id',
143       'type': 'static_library',
144       'include_dirs': [
145         '..',
146       ],
147       'sources': [
148         # Note: file list duplicated in GN build.
149         'gcm_driver/instance_id/instance_id.cc',
150         'gcm_driver/instance_id/instance_id.h',
151         'gcm_driver/instance_id/instance_id_android.cc',
152         'gcm_driver/instance_id/instance_id_android.h',
153         'gcm_driver/instance_id/instance_id_driver.cc',
154         'gcm_driver/instance_id/instance_id_driver.h',
155         'gcm_driver/instance_id/instance_id_impl.cc',
156         'gcm_driver/instance_id/instance_id_impl.h',
157       ],
158       'conditions': [
159         ['OS == "android"', {
160           'sources!': [
161             'gcm_driver/instance_id/instance_id_impl.cc',
162             'gcm_driver/instance_id/instance_id_impl.h',
163           ],
164         }],
165       ],
166     },
167     {
168       # GN version: //components/gcm_driver/instance_id:test_support
169       'target_name': 'instance_id_test_support',
170       'type': 'static_library',
171       'dependencies': [
172         'gcm_driver_test_support',
173         'instance_id',
174         '../testing/gtest.gyp:gtest',
175       ],
176       'include_dirs': [
177         '..',
178       ],
179       'sources': [
180         # Note: file list duplicated in GN build.
181         'gcm_driver/instance_id/fake_gcm_driver_for_instance_id.cc',
182         'gcm_driver/instance_id/fake_gcm_driver_for_instance_id.h',
183       ],
184     },
185   ],
186   'conditions': [
187     ['OS == "android"', {
188       'targets': [
189         {
190           # GN version: //components/gcm_driver/android:gcm_driver_java
191           'target_name': 'gcm_driver_java',
192           'type': 'none',
193           'dependencies': [
194             '../base/base.gyp:base',
195             # TODO(johnme): Fix the layering violation of depending on content/
196             '../content/content.gyp:content_java',
197             '../sync/sync.gyp:sync_java',
198           ],
199           'variables': {
200             'java_in_dir': 'gcm_driver/android/java',
201           },
202           'includes': [ '../build/java.gypi' ],
203         },
204         {
205           # GN version: //components/gcm_driver/android:jni_headers
206           'target_name': 'gcm_driver_jni_headers',
207           'type': 'none',
208           'sources': [
209             'gcm_driver/android/java/src/org/chromium/components/gcm_driver/GCMDriver.java',
210           ],
211           'variables': {
212             'jni_gen_package': 'components/gcm_driver',
213           },
214           'includes': [ '../build/jni_generator.gypi' ],
215         },
216       ],
217      },
218     ],
219   ],