clang/win: Build without -Wno-tautological-compare.
[chromium-blink-merge.git] / components / invalidation.gypi
blob81e255e465501906eef0a6ed13cf3aecf02527f8
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/invalidation/public
9       'target_name': 'invalidation_public',
10       'type': 'static_library',
11       'dependencies': [
12         '../base/base.gyp:base',
13         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation',
14         # TODO(akalin): Remove this (http://crbug.com/133352).
15         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_proto_cpp',
16       ],
17       'export_dependent_settings': [
18         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation',
19       ],
20       'include_dirs': [
21         '..',
22       ],
23       'sources': [
24         # Note: sources list duplicated in GN build.
25         'invalidation/public/ack_handle.cc',
26         'invalidation/public/ack_handle.h',
27         'invalidation/public/ack_handler.cc',
28         'invalidation/public/ack_handler.h',
29         'invalidation/public/invalidation.cc',
30         'invalidation/public/invalidation.h',
31         'invalidation/public/invalidation_export.h',
32         'invalidation/public/invalidation_handler.cc',
33         'invalidation/public/invalidation_handler.h',
34         'invalidation/public/invalidation_service.h',
35         'invalidation/public/invalidation_util.cc',
36         'invalidation/public/invalidation_util.h',
37         'invalidation/public/invalidator_state.cc',
38         'invalidation/public/invalidator_state.h',
39         'invalidation/public/object_id_invalidation_map.cc',
40         'invalidation/public/object_id_invalidation_map.h',
41         'invalidation/public/single_object_invalidation_set.cc',
42         'invalidation/public/single_object_invalidation_set.h',
43       ],
44     },
45     {
46       # GN version: //components/invalidation/impl
47       'target_name': 'invalidation_impl',
48       'type': 'static_library',
49       'dependencies': [
50         'invalidation_public',
51         '../base/base.gyp:base',
52         '../base/base.gyp:base_i18n',
53         '../base/base.gyp:base_prefs',
54         '../google_apis/google_apis.gyp:google_apis',
55         '../jingle/jingle.gyp:notifier',
56         'gcm_driver',
57         'keyed_service_core',
58         'pref_registry',
59         'signin_core_browser',
60       ],
61       'export_dependent_settings': [
62         'invalidation_public',
63       ],
64       'include_dirs': [
65         '..',
66       ],
67       'sources': [
68         # Note: sources list duplicated in GN build.
69         'invalidation/impl/invalidation_logger.cc',
70         'invalidation/impl/invalidation_logger.h',
71         'invalidation/impl/invalidation_logger_observer.h',
72         'invalidation/impl/invalidation_prefs.cc',
73         'invalidation/impl/invalidation_prefs.h',
74         'invalidation/impl/invalidation_service_util.cc',
75         'invalidation/impl/invalidation_service_util.h',
76         'invalidation/impl/invalidation_state_tracker.cc',
77         'invalidation/impl/invalidation_state_tracker.h',
78         'invalidation/impl/invalidation_switches.cc',
79         'invalidation/impl/invalidation_switches.h',
80         'invalidation/impl/invalidator.cc',
81         'invalidation/impl/invalidator.h',
82         'invalidation/impl/invalidator_registrar.cc',
83         'invalidation/impl/invalidator_registrar.h',
84         'invalidation/impl/invalidator_storage.cc',
85         'invalidation/impl/invalidator_storage.h',
86         'invalidation/impl/mock_ack_handler.cc',
87         'invalidation/impl/mock_ack_handler.h',
88         'invalidation/impl/profile_invalidation_provider.cc',
89         'invalidation/impl/profile_invalidation_provider.h',
90         'invalidation/impl/unacked_invalidation_set.cc',
91         'invalidation/impl/unacked_invalidation_set.h',
92       ],
93       'conditions': [
94           ['OS != "android"', {
95             'sources': [
96               # Note: sources list duplicated in GN build.
97               'invalidation/impl/gcm_invalidation_bridge.cc',
98               'invalidation/impl/gcm_invalidation_bridge.h',
99               'invalidation/impl/gcm_network_channel.cc',
100               'invalidation/impl/gcm_network_channel.h',
101               'invalidation/impl/gcm_network_channel_delegate.h',
102               'invalidation/impl/invalidation_notifier.cc',
103               'invalidation/impl/invalidation_notifier.h',
104               'invalidation/impl/non_blocking_invalidator.cc',
105               'invalidation/impl/non_blocking_invalidator.h',
106               'invalidation/impl/notifier_reason_util.cc',
107               'invalidation/impl/notifier_reason_util.h',
108               'invalidation/impl/p2p_invalidator.cc',
109               'invalidation/impl/p2p_invalidator.h',
110               'invalidation/impl/push_client_channel.cc',
111               'invalidation/impl/push_client_channel.h',
112               'invalidation/impl/registration_manager.cc',
113               'invalidation/impl/registration_manager.h',
114               'invalidation/impl/state_writer.h',
115               'invalidation/impl/sync_invalidation_listener.cc',
116               'invalidation/impl/sync_invalidation_listener.h',
117               'invalidation/impl/sync_system_resources.cc',
118               'invalidation/impl/sync_system_resources.h',
119               'invalidation/impl/ticl_invalidation_service.cc',
120               'invalidation/impl/ticl_invalidation_service.h',
121               'invalidation/impl/ticl_settings_provider.cc',
122               'invalidation/impl/ticl_settings_provider.h',
123             ],
124           }],
125         ['OS == "android"', {
126           'dependencies': [
127             'invalidation_jni_headers',
128           ],
129           'sources': [
130             'invalidation/impl/android/component_jni_registrar.cc',
131             'invalidation/impl/android/component_jni_registrar.h',
132             'invalidation/impl/invalidation_service_android.cc',
133             'invalidation/impl/invalidation_service_android.h',
134           ],
135         }],
136       ],
137     },
138     {
139       # GN version: //components/invalidation:test_support
140       'target_name': 'invalidation_test_support',
141       'type': 'static_library',
142       'dependencies': [
143         '../base/base.gyp:base',
144         '../google_apis/google_apis.gyp:google_apis',
145         '../jingle/jingle.gyp:notifier',
146         '../jingle/jingle.gyp:notifier_test_util',
147         '../net/net.gyp:net',
148         '../testing/gmock.gyp:gmock',
149         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation',
150         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_proto_cpp',
151         'gcm_driver_test_support',
152         'keyed_service_core',
153       ],
154       'include_dirs': [
155         '..',
156       ],
157       'sources': [
158         # Note: sources list duplicated in GN build.
159         'invalidation/impl/fake_invalidation_handler.cc',
160         'invalidation/impl/fake_invalidation_handler.h',
161         'invalidation/impl/fake_invalidation_state_tracker.cc',
162         'invalidation/impl/fake_invalidation_state_tracker.h',
163         'invalidation/impl/fake_invalidator.cc',
164         'invalidation/impl/fake_invalidator.h',
165         'invalidation/impl/invalidation_service_test_template.cc',
166         'invalidation/impl/invalidation_service_test_template.h',
167         'invalidation/impl/invalidation_test_util.cc',
168         'invalidation/impl/invalidation_test_util.h',
169         'invalidation/impl/invalidator_test_template.cc',
170         'invalidation/impl/invalidator_test_template.h',
171         'invalidation/impl/object_id_invalidation_map_test_util.cc',
172         'invalidation/impl/object_id_invalidation_map_test_util.h',
173         'invalidation/impl/unacked_invalidation_set_test_util.cc',
174         'invalidation/impl/unacked_invalidation_set_test_util.h',
175       ],
176       'conditions': [
177           ['OS != "android"', {
178             'sources': [
179               # Note: sources list duplicated in GN build.
180               'invalidation/impl/p2p_invalidation_service.cc',
181               'invalidation/impl/p2p_invalidation_service.h',
182             ],
183           }],
184           ['OS == "android"', {
185             'dependencies': [
186               'invalidation_jni_headers',
187             ],
188           }],
189       ],
190     },
191   ],
192   'conditions': [
193     ['OS == "android"', {
194       'targets': [
195         {
196           'target_name': 'invalidation_java',
197           'type': 'none',
198           'dependencies': [
199             'invalidation_proto_java',
200             '../base/base.gyp:base',
201             '../sync/sync.gyp:sync_java',
202             '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_javalib',
203           ],
204           'variables': {
205             'java_in_dir': 'invalidation/impl/android/java',
206           },
207           'includes': [ '../build/java.gypi' ],
208         },
209         {
210           'target_name': 'invalidation_proto_java',
211           'type': 'none',
212           'sources': [
213             'invalidation/impl/android/proto/serialized_invalidation.proto',
214           ],
215           'includes': [ '../build/protoc_java.gypi' ],
216         },
217         {
218           'target_name': 'invalidation_javatests',
219           'type': 'none',
220           'dependencies': [
221             'invalidation_java',
222             '../base/base.gyp:base_java_test_support',
223           ],
224           'variables': {
225             'java_in_dir': 'invalidation/impl/android/javatests',
226           },
227           'includes': [ '../build/java.gypi' ],
228         },
229         {
230           'target_name': 'invalidation_junit_tests',
231           'type': 'none',
232           'dependencies': [
233             'invalidation_java',
234             '../base/base.gyp:base_java',
235             '../base/base.gyp:base_java_test_support',
236             '../testing/android/junit/junit_test.gyp:junit_test_support',
237           ],
238           'variables': {
239             'main_class': 'org.chromium.testing.local.JunitTestMain',
240             'src_paths': [
241               'invalidation/impl/android/junit/'
242             ],
243           },
244           'includes': [ '../build/host_jar.gypi' ],
245         },
246         {
247           'target_name': 'invalidation_jni_headers',
248           'type': 'none',
249           'sources': [
250             'invalidation/impl/android/java/src/org/chromium/components/invalidation/InvalidationService.java',
251           ],
252           'variables': {
253             'jni_gen_package': 'components/invalidation',
254           },
255           'includes': [ '../build/jni_generator.gypi' ],
256         },
257       ],
258      },
259     ],
260   ],