Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / google_apis / google_apis.gyp
blob659d98352485f0d613ca077cb9b791733eb1a21a
1 # Copyright (c) 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     'chromium_code': 1,  # Use higher warning level.
8   },
9   'includes': [
10     '../build/win_precompile.gypi',
11   ],
12   'targets': [
13     {
14       # GN version: //google_apis
15       'target_name': 'google_apis',
16       'type': 'static_library',
17       'includes': [
18         'determine_use_official_keys.gypi',
19       ],
20       'dependencies': [
21         '../base/base.gyp:base',
22         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
23         '../crypto/crypto.gyp:crypto',
24         '../net/net.gyp:net',
25         '../third_party/libxml/libxml.gyp:libxml',
26         '../url/url.gyp:url_lib',
27       ],
28       'conditions': [
29         ['google_api_key!=""', {
30           'defines': ['GOOGLE_API_KEY="<(google_api_key)"'],
31         }],
32         ['google_default_client_id!=""', {
33           'defines': [
34             'GOOGLE_DEFAULT_CLIENT_ID="<(google_default_client_id)"',
35           ]
36         }],
37         ['google_default_client_secret!=""', {
38           'defines': [
39             'GOOGLE_DEFAULT_CLIENT_SECRET="<(google_default_client_secret)"',
40           ]
41         }],
42         ['enable_extensions==1', {
43           'sources': [
44             # Note: sources list duplicated in GN build.
45             'drive/auth_service.cc',
46             'drive/auth_service.h',
47             'drive/auth_service_interface.h',
48             'drive/auth_service_observer.h',
49             'drive/base_requests.cc',
50             'drive/base_requests.h',
51             'drive/drive_api_error_codes.cc',
52             'drive/drive_api_error_codes.h',
53             'drive/drive_api_parser.cc',
54             'drive/drive_api_parser.h',
55             'drive/drive_api_requests.cc',
56             'drive/drive_api_requests.h',
57             'drive/drive_api_url_generator.cc',
58             'drive/drive_api_url_generator.h',
59             'drive/drive_common_callbacks.h',
60             'drive/files_list_request_runner.cc',
61             'drive/files_list_request_runner.h',
62             'drive/request_sender.cc',
63             'drive/request_sender.h',
64             'drive/request_util.cc',
65             'drive/request_util.h',
66             'drive/task_util.cc',
67             'drive/task_util.h',
68             'drive/time_util.cc',
69             'drive/time_util.h',
70           ],
71         }],
72       ],
73       'sources': [
74         # Note: sources list duplicated in GN build.
75         'gaia/account_tracker.cc',
76         'gaia/account_tracker.h',
77         'gaia/gaia_auth_consumer.cc',
78         'gaia/gaia_auth_consumer.h',
79         'gaia/gaia_auth_fetcher.cc',
80         'gaia/gaia_auth_fetcher.h',
81         'gaia/gaia_auth_util.cc',
82         'gaia/gaia_auth_util.h',
83         'gaia/gaia_constants.cc',
84         'gaia/gaia_constants.h',
85         'gaia/gaia_oauth_client.cc',
86         'gaia/gaia_oauth_client.h',
87         'gaia/gaia_switches.cc',
88         'gaia/gaia_switches.h',
89         'gaia/gaia_urls.cc',
90         'gaia/gaia_urls.h',
91         'gaia/google_service_auth_error.cc',
92         'gaia/google_service_auth_error.h',
93         'gaia/identity_provider.cc',
94         'gaia/identity_provider.h',
95         'gaia/oauth2_access_token_consumer.h',
96         'gaia/oauth2_access_token_fetcher.cc',
97         'gaia/oauth2_access_token_fetcher.h',
98         'gaia/oauth2_access_token_fetcher_impl.cc',
99         'gaia/oauth2_access_token_fetcher_impl.h',
100         'gaia/oauth2_access_token_fetcher_immediate_error.cc',
101         'gaia/oauth2_access_token_fetcher_immediate_error.h',
102         'gaia/oauth2_api_call_flow.cc',
103         'gaia/oauth2_api_call_flow.h',
104         'gaia/oauth2_mint_token_flow.cc',
105         'gaia/oauth2_mint_token_flow.h',
106         'gaia/oauth2_token_service.cc',
107         'gaia/oauth2_token_service.h',
108         'gaia/oauth2_token_service_delegate.cc',
109         'gaia/oauth2_token_service_delegate.h',
110         'gaia/oauth2_token_service_request.cc',
111         'gaia/oauth2_token_service_request.h',
112         'gaia/oauth_request_signer.cc',
113         'gaia/oauth_request_signer.h',
114         'gaia/ubertoken_fetcher.cc',
115         'gaia/ubertoken_fetcher.h',
116         'google_api_keys.cc',
117         'google_api_keys.h',
118       ],
119       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
120       'msvs_disabled_warnings': [4267, ],
121     },
122     {
123       'target_name': 'google_apis_unittests',
124       'type': 'executable',
125       'dependencies': [
126         '../base/base.gyp:run_all_unittests',
127         '../testing/gmock.gyp:gmock',
128         '../testing/gtest.gyp:gtest',
129         'google_apis',
130         'google_apis_test_support',
131       ],
132       'includes': [
133         'determine_use_official_keys.gypi',
134       ],
135       'include_dirs': [
136         '..',
137       ],
138       'sources': [
139         'gaia/account_tracker_unittest.cc',
140         'gaia/gaia_auth_fetcher_unittest.cc',
141         'gaia/gaia_auth_util_unittest.cc',
142         'gaia/gaia_oauth_client_unittest.cc',
143         'gaia/google_service_auth_error_unittest.cc',
144         'gaia/oauth2_access_token_fetcher_impl_unittest.cc',
145         'gaia/oauth2_api_call_flow_unittest.cc',
146         'gaia/oauth2_mint_token_flow_unittest.cc',
147         'gaia/oauth2_token_service_request_unittest.cc',
148         'gaia/oauth2_token_service_unittest.cc',
149         'gaia/oauth_request_signer_unittest.cc',
150         'gaia/ubertoken_fetcher_unittest.cc',
151         'google_api_keys_unittest.cc',
152       ],
153       'conditions': [
154         ['enable_extensions==1', {
155           'sources': [
156             'drive/base_requests_server_unittest.cc',
157             'drive/base_requests_unittest.cc',
158             'drive/drive_api_parser_unittest.cc',
159             'drive/drive_api_requests_unittest.cc',
160             'drive/drive_api_url_generator_unittest.cc',
161             'drive/files_list_request_runner_unittest.cc',
162             'drive/request_sender_unittest.cc',
163             'drive/request_util_unittest.cc',
164             'drive/time_util_unittest.cc',
165           ],
166         }],
167       ],
168     },
169     {
170       # GN version: //google_apis:test_support
171       'target_name': 'google_apis_test_support',
172       'type': 'static_library',
173       'dependencies': [
174         '../base/base.gyp:base',
175         '../base/base.gyp:test_support_base',
176         '../net/net.gyp:net',
177         '../net/net.gyp:net_test_support',
178       ],
179       'export_dependent_settings': [
180         '../base/base.gyp:base',
181         '../base/base.gyp:test_support_base',
182         '../net/net.gyp:net',
183         '../net/net.gyp:net_test_support',
184       ],
185       'sources': [
186         'gaia/fake_gaia.cc',
187         'gaia/fake_gaia.h',
188         'gaia/fake_identity_provider.cc',
189         'gaia/fake_identity_provider.h',
190         'gaia/fake_oauth2_token_service_delegate.cc',
191         'gaia/fake_oauth2_token_service_delegate.h',
192         'gaia/fake_oauth2_token_service.cc',
193         'gaia/fake_oauth2_token_service.h',
194         'gaia/mock_url_fetcher_factory.h',
195         'gaia/oauth2_token_service_test_util.cc',
196         'gaia/oauth2_token_service_test_util.h',
197       ],
198       'conditions': [
199         ['enable_extensions==1', {
200           'sources': [
201             'drive/dummy_auth_service.cc',
202             'drive/dummy_auth_service.h',
203             'drive/test_util.cc',
204             'drive/test_util.h',
205           ],
206         }],
207       ],
208     },
209   ],
210   'conditions': [
211     ['test_isolation_mode != "noop"', {
212       'targets': [
213         {
214           'target_name': 'google_apis_unittests_run',
215           'type': 'none',
216           'dependencies': [
217             'google_apis_unittests',
218           ],
219           'includes': [
220             '../build/isolate.gypi',
221           ],
222           'sources': [
223             'google_apis_unittests.isolate',
224           ],
225         },
226       ],
227     }],
228   ],