Re-land: C++ readability review
[chromium-blink-merge.git] / google_apis / gcm / gcm.gyp
blob20a63b9c048cb14d9e521e108ad12198f1cb48ab
1 # Copyright 2013 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     'chromium_code': 1,
8   },
10   'targets': [
11     # The public GCM target.
12     {
13       # GN version: //google_apis/gcm
14       'target_name': 'gcm',
15       'type': '<(component)',
16       'variables': {
17         'enable_wexit_time_destructors': 1,
18         'proto_in_dir': './protocol',
19         'proto_out_dir': 'google_apis/gcm/protocol',
20         'cc_generator_options': 'dllexport_decl=GCM_EXPORT:',
21         'cc_include': 'google_apis/gcm/base/gcm_export.h',
22       },
23       'include_dirs': [
24         '../..',
25       ],
26       'defines': [
27         'GCM_IMPLEMENTATION',
28       ],
29       'export_dependent_settings': [
30         '../../third_party/protobuf/protobuf.gyp:protobuf_lite'
31       ],
32       'dependencies': [
33         '../../base/base.gyp:base',
34         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
35         '../../net/net.gyp:net',
36         '../../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
37         '../../third_party/protobuf/protobuf.gyp:protobuf_lite',
38         '../../url/url.gyp:url_lib',
39       ],
40       'sources': [
41         # Note: sources list duplicated in GN build.
42         'base/mcs_message.cc',
43         'base/mcs_message.h',
44         'base/mcs_util.cc',
45         'base/mcs_util.h',
46         'base/socket_stream.cc',
47         'base/socket_stream.h',
48         'engine/account_mapping.cc',
49         'engine/account_mapping.h',
50         'engine/checkin_request.cc',
51         'engine/checkin_request.h',
52         'engine/connection_factory.cc',
53         'engine/connection_factory.h',
54         'engine/connection_factory_impl.cc',
55         'engine/connection_factory_impl.h',
56         'engine/connection_handler.cc',
57         'engine/connection_handler.h',
58         'engine/connection_handler_impl.cc',
59         'engine/connection_handler_impl.h',
60         'engine/gcm_store.cc',
61         'engine/gcm_store.h',
62         'engine/gcm_store_impl.cc',
63         'engine/gcm_store_impl.h',
64         'engine/gservices_settings.cc',
65         'engine/gservices_settings.h',
66         'engine/heartbeat_manager.cc',
67         'engine/heartbeat_manager.h',
68         'engine/mcs_client.cc',
69         'engine/mcs_client.h',
70         'engine/registration_info.cc',
71         'engine/registration_info.h',
72         'engine/registration_request.cc',
73         'engine/registration_request.h',
74         'engine/unregistration_request.cc',
75         'engine/unregistration_request.h',
76         'monitoring/gcm_stats_recorder.h',
77         'protocol/android_checkin.proto',
78         'protocol/checkin.proto',
79         'protocol/mcs.proto',
80       ],
81       'includes': [
82         '../../build/protoc.gypi'
83       ],
84     },
86     # The test support library that is needed to test gcm.
87     {
88       # GN version: //google_apis/gcm:test_support
89       'target_name': 'gcm_test_support',
90       'type': 'static_library',
91       'include_dirs': [
92         '..',
93       ],
94       'export_dependent_settings': [
95         '../../third_party/protobuf/protobuf.gyp:protobuf_lite'
96       ],
97       'dependencies': [
98         '../../base/base.gyp:base',
99         '../../testing/gtest.gyp:gtest',
100         '../../third_party/protobuf/protobuf.gyp:protobuf_lite',
101         'gcm',
102       ],
103       'sources': [
104         # Note: sources list duplicated in GN build.
105         'base/fake_encryptor.cc',
106         'base/fake_encryptor.h',
107         'engine/fake_connection_factory.cc',
108         'engine/fake_connection_factory.h',
109         'engine/fake_connection_handler.cc',
110         'engine/fake_connection_handler.h',
111         'monitoring/fake_gcm_stats_recorder.cc',
112         'monitoring/fake_gcm_stats_recorder.h',
113       ],
114     },
116     # A standalone MCS (mobile connection server) client.
117     {
118       # GN version: //google_apis/gcm:mcs_probe
119       'target_name': 'mcs_probe',
120       'type': 'executable',
121       'variables': { 'enable_wexit_time_destructors': 1, },
122       'include_dirs': [
123         '../..',
124       ],
125       'dependencies': [
126         '../../base/base.gyp:base',
127         '../../net/net.gyp:net',
128         '../../net/net.gyp:net_test_support',
129         '../../third_party/protobuf/protobuf.gyp:protobuf_lite',
130         'gcm',
131         'gcm_test_support'
132       ],
133       'sources': [
134         # Note: file list duplicated in GN build.
135         'tools/mcs_probe.cc',
136       ],
137     },
139     # The main GCM unit tests.
140     {
141       'target_name': 'gcm_unit_tests',
142       'type': '<(gtest_target_type)',
143       'variables': { 'enable_wexit_time_destructors': 1, },
144       'include_dirs': [
145         '../..',
146       ],
147       'export_dependent_settings': [
148         '../../third_party/protobuf/protobuf.gyp:protobuf_lite'
149       ],
150       'dependencies': [
151         '../../base/base.gyp:run_all_unittests',
152         '../../base/base.gyp:base',
153         '../../net/net.gyp:net',
154         '../../net/net.gyp:net_test_support',
155         '../../testing/gtest.gyp:gtest',
156         '../../third_party/protobuf/protobuf.gyp:protobuf_lite',
157         'gcm',
158         'gcm_test_support'
159       ],
160       'sources': [
161         'base/mcs_message_unittest.cc',
162         'base/mcs_util_unittest.cc',
163         'base/socket_stream_unittest.cc',
164         'engine/account_mapping_unittest.cc',
165         'engine/checkin_request_unittest.cc',
166         'engine/connection_factory_impl_unittest.cc',
167         'engine/connection_handler_impl_unittest.cc',
168         'engine/gcm_store_impl_unittest.cc',
169         'engine/gservices_settings_unittest.cc',
170         'engine/heartbeat_manager_unittest.cc',
171         'engine/mcs_client_unittest.cc',
172         'engine/registration_request_unittest.cc',
173         'engine/unregistration_request_unittest.cc',
174       ]
175     },
176   ],