cc: Added inline to Tile::IsReadyToDraw
[chromium-blink-merge.git] / third_party / cacheinvalidation / cacheinvalidation.gyp
blob166dbefd6802001f8eb8d815ef56cbcbfbb1b527
1 # Copyright 2012 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   'variables': {
7     # This library should build cleanly with the extra warnings turned on
8     # for Chromium.
9     'chromium_code': 1,
10     'emma_never_instrument': 1,
11   },
12   'targets': [
13     # The C++ files generated from the cache invalidation protocol buffers.
14     {
15       'target_name': 'cacheinvalidation_proto_cpp',
16       'type': 'static_library',
17       'variables': {
18         # The relative path of the cacheinvalidation proto files from this
19         # gyp-file.
20         # TODO(akalin): Add a RULE_INPUT_DIR predefined variable to gyp so
21         # we don't need this variable.
22         'proto_dir_relpath': 'google/cacheinvalidation',
23         # Where files generated from proto files are put.
24         'proto_in_dir': 'src/<(proto_dir_relpath)',
25         'proto_out_dir': '<(proto_dir_relpath)',
26       },
27       'sources': [
28         '<(proto_in_dir)/client.proto',
29         '<(proto_in_dir)/client_gateway.proto',
30         '<(proto_in_dir)/client_protocol.proto',
31         '<(proto_in_dir)/client_test_internal.proto',
32         '<(proto_in_dir)/types.proto',
33       ],
34       'includes': [ '../../build/protoc.gypi' ],
35       'direct_dependent_settings': {
36         'include_dirs': [
37           '<(proto_out_dir)',
38         ],
39       },
40       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
41       'msvs_disabled_warnings': [4267, ],
42     },
43     # The main cache invalidation library.  External clients should depend
44     # only on this.
45     {
46       'target_name': 'cacheinvalidation',
47       'type': 'static_library',
48       'sources': [
49         'overrides/google/cacheinvalidation/deps/callback.h',
50         'overrides/google/cacheinvalidation/deps/gmock.h',
51         'overrides/google/cacheinvalidation/deps/googletest.h',
52         'overrides/google/cacheinvalidation/deps/logging.h',
53         'overrides/google/cacheinvalidation/deps/mutex.h',
54         'overrides/google/cacheinvalidation/deps/random.h',
55         'overrides/google/cacheinvalidation/deps/random.cc',
56         'overrides/google/cacheinvalidation/deps/sha1-digest-function.h',
57         'overrides/google/cacheinvalidation/deps/scoped_ptr.h',
58         'overrides/google/cacheinvalidation/deps/stl-namespace.h',
59         'overrides/google/cacheinvalidation/deps/string_util.h',
60         'overrides/google/cacheinvalidation/deps/time.h',
61         'src/google/cacheinvalidation/deps/digest-function.h',
62         'src/google/cacheinvalidation/impl/basic-system-resources.cc',
63         'src/google/cacheinvalidation/impl/basic-system-resources.h',
64         'src/google/cacheinvalidation/impl/checking-invalidation-listener.cc',
65         'src/google/cacheinvalidation/impl/checking-invalidation-listener.h',
66         'src/google/cacheinvalidation/impl/client-protocol-namespace-fix.h',
67         'src/google/cacheinvalidation/impl/constants.cc',
68         'src/google/cacheinvalidation/impl/constants.h',
69         'src/google/cacheinvalidation/impl/digest-store.h',
70         'src/google/cacheinvalidation/impl/exponential-backoff-delay-generator.cc',
71         'src/google/cacheinvalidation/impl/exponential-backoff-delay-generator.h',
72         'src/google/cacheinvalidation/impl/invalidation-client-core.cc',
73         'src/google/cacheinvalidation/impl/invalidation-client-core.h',
74         'src/google/cacheinvalidation/impl/invalidation-client-factory.cc',
75         'src/google/cacheinvalidation/impl/invalidation-client-impl.cc',
76         'src/google/cacheinvalidation/impl/invalidation-client-impl.h',
77         'src/google/cacheinvalidation/impl/invalidation-client-util.h',
78         'src/google/cacheinvalidation/impl/log-macro.h',
79         'src/google/cacheinvalidation/impl/object-id-digest-utils.cc',
80         'src/google/cacheinvalidation/impl/object-id-digest-utils.h',
81         'src/google/cacheinvalidation/impl/persistence-utils.cc',
82         'src/google/cacheinvalidation/impl/persistence-utils.h',
83         'src/google/cacheinvalidation/impl/proto-converter.cc',
84         'src/google/cacheinvalidation/impl/proto-converter.h',
85         'src/google/cacheinvalidation/impl/proto-helpers.h',
86         'src/google/cacheinvalidation/impl/proto-helpers.cc',
87         'src/google/cacheinvalidation/impl/protocol-handler.cc',
88         'src/google/cacheinvalidation/impl/protocol-handler.h',
89         'src/google/cacheinvalidation/impl/recurring-task.cc',
90         'src/google/cacheinvalidation/impl/recurring-task.h',
91         'src/google/cacheinvalidation/impl/registration-manager.cc',
92         'src/google/cacheinvalidation/impl/registration-manager.h',
93         'src/google/cacheinvalidation/impl/repeated-field-namespace-fix.h',
94         'src/google/cacheinvalidation/impl/run-state.h',
95         'src/google/cacheinvalidation/impl/safe-storage.cc',
96         'src/google/cacheinvalidation/impl/safe-storage.h',
97         'src/google/cacheinvalidation/impl/simple-registration-store.cc',
98         'src/google/cacheinvalidation/impl/simple-registration-store.h',
99         'src/google/cacheinvalidation/impl/smearer.h',
100         'src/google/cacheinvalidation/impl/statistics.cc',
101         'src/google/cacheinvalidation/impl/statistics.h',
102         'src/google/cacheinvalidation/impl/throttle.cc',
103         'src/google/cacheinvalidation/impl/throttle.h',
104         'src/google/cacheinvalidation/impl/ticl-message-validator.cc',
105         'src/google/cacheinvalidation/impl/ticl-message-validator.h',
106         'src/google/cacheinvalidation/include/invalidation-client.h',
107         'src/google/cacheinvalidation/include/invalidation-client-factory.h',
108         'src/google/cacheinvalidation/include/invalidation-listener.h',
109         'src/google/cacheinvalidation/include/system-resources.h',
110         'src/google/cacheinvalidation/include/types.h',
111       ],
112       'include_dirs': [
113         './overrides',
114         './src',
115       ],
116       'dependencies': [
117         '../../base/base.gyp:base',
118         'cacheinvalidation_proto_cpp',
119       ],
120       'direct_dependent_settings': {
121         'include_dirs': [
122           './overrides',
123           './src',
124         ],
125       },
126       # We avoid including header files from
127       # cacheinvalidation_proto_cpp in our public header files so we
128       # don't need to export its settings.
129       'export_dependent_settings': [
130         '../../base/base.gyp:base',
131       ],
132       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
133       'msvs_disabled_warnings': [4267, ],
134     },
135     # Unittests for the cache invalidation library.
136     # TODO(ghc): Write native tests and include them here.
137     {
138       'target_name': 'cacheinvalidation_unittests',
139       'type': 'executable',
140       'sources': [
141         'src/google/cacheinvalidation/test/deterministic-scheduler.cc',
142         'src/google/cacheinvalidation/test/deterministic-scheduler.h',
143         'src/google/cacheinvalidation/test/test-logger.cc',
144         'src/google/cacheinvalidation/test/test-logger.h',
145         'src/google/cacheinvalidation/test/test-utils.cc',
146         'src/google/cacheinvalidation/test/test-utils.h',
147         'src/google/cacheinvalidation/impl/invalidation-client-impl_test.cc',
148         'src/google/cacheinvalidation/impl/protocol-handler_test.cc',
149         'src/google/cacheinvalidation/impl/recurring-task_test.cc',
150         'src/google/cacheinvalidation/impl/throttle_test.cc',
151       ],
152       'dependencies': [
153         '../../base/base.gyp:base',
154         '../../base/base.gyp:run_all_unittests',
155         '../../testing/gmock.gyp:gmock',
156         '../../testing/gtest.gyp:gtest',
157         'cacheinvalidation',
158         'cacheinvalidation_proto_cpp',
159       ],
160     },
161   ],
162   'conditions': [
163     ['test_isolation_mode != "noop"', {
164       'targets': [
165         {
166           'target_name': 'cacheinvalidation_unittests_run',
167           'type': 'none',
168           'dependencies': [
169             'cacheinvalidation_unittests',
170           ],
171           'includes': [
172             '../../build/isolate.gypi',
173             'cacheinvalidation_unittests.isolate',
174           ],
175           'sources': [
176             'cacheinvalidation_unittests.isolate',
177           ],
178         },
179       ],
180     }],
181     ['OS == "android"', {
182       'targets': [
183         {
184           'target_name': 'cacheinvalidation_proto_java',
185           'type': 'none',
186           'variables': {
187             'proto_in_dir': '../../third_party/cacheinvalidation/src/proto',
188           },
189           'sources': [
190             '<(proto_in_dir)/android_channel.proto',
191             '<(proto_in_dir)/android_listener.proto',
192             '<(proto_in_dir)/android_service.proto',
193             '<(proto_in_dir)/android_state.proto',
194             '<(proto_in_dir)/channel.proto',
195             '<(proto_in_dir)/channel_common.proto',
196             '<(proto_in_dir)/client.proto',
197             '<(proto_in_dir)/client_protocol.proto',
198             '<(proto_in_dir)/java_client.proto',
199             '<(proto_in_dir)/types.proto',
200           ],
201           'includes': [ '../../build/protoc_java.gypi' ],
202         },
203         {
204           'target_name': 'cacheinvalidation_javalib',
205           'type': 'none',
206           'dependencies': [
207             '../../third_party/android_tools/android_tools.gyp:android_gcm',
208             '../../third_party/guava/guava.gyp:guava_javalib',
209             'cacheinvalidation_aidl_javalib',
210             'cacheinvalidation_proto_java',
211           ],
212           'variables': {
213             'java_in_dir': '../../build/android/empty',
214             'additional_src_dirs': [ 'src/java/' ],
215           },
216           'includes': [ '../../build/java.gypi' ],
217         },
218         {
219           'target_name': 'cacheinvalidation_aidl_javalib',
220           'type': 'none',
221           'variables': {
222             # TODO(shashishekhar): aidl_interface_file should be made optional.
223             'aidl_interface_file':'<(android_sdk)/framework.aidl'
224           },
225           'sources': [
226             'src/java/com/google/ipc/invalidation/external/client/android/service/InvalidationService.aidl',
227             'src/java/com/google/ipc/invalidation/external/client/android/service/ListenerService.aidl',
228             'src/java/com/google/ipc/invalidation/testing/android/InvalidationTest.aidl',
229           ],
230           'includes': [ '../../build/java_aidl.gypi' ],
231         },
232       ],
233     }],
234   ],