Use RunLoop to wait for readback on compositor unittest
[chromium-blink-merge.git] / extensions / shell / app_shell.gyp
blobe11ea0c6bd03cfdfa60e468e298776d02543080e
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   'variables': {
7     'chromium_code': 1,
8   },
9   'targets': [
10     {
11       'target_name': 'app_shell_lib',
12       'type': 'static_library',
13       'defines!': ['CONTENT_IMPLEMENTATION'],
14       'dependencies': [
15         'app_shell_version_header',
16         '<(DEPTH)/base/base.gyp:base',
17         '<(DEPTH)/base/base.gyp:base_prefs_test_support',
18         '<(DEPTH)/components/components.gyp:omaha_query_params',
19         '<(DEPTH)/components/components.gyp:pref_registry',
20         '<(DEPTH)/components/components.gyp:user_prefs',
21         '<(DEPTH)/components/components.gyp:web_cache_renderer',
22         '<(DEPTH)/content/content.gyp:content',
23         '<(DEPTH)/content/content.gyp:content_gpu',
24         '<(DEPTH)/content/content.gyp:content_ppapi_plugin',
25         '<(DEPTH)/content/content_shell_and_tests.gyp:content_shell_lib',
26         '<(DEPTH)/device/core/core.gyp:device_core',
27         '<(DEPTH)/device/hid/hid.gyp:device_hid',
28         '<(DEPTH)/extensions/browser/api/api_registration.gyp:extensions_api_registration',
29         '<(DEPTH)/extensions/common/api/api.gyp:extensions_api',
30         '<(DEPTH)/extensions/extensions.gyp:extensions_browser',
31         '<(DEPTH)/extensions/extensions.gyp:extensions_common',
32         '<(DEPTH)/extensions/extensions.gyp:extensions_renderer',
33         '<(DEPTH)/extensions/extensions.gyp:extensions_shell_and_test_pak',
34         '<(DEPTH)/extensions/extensions_resources.gyp:extensions_resources',
35         '<(DEPTH)/mojo/mojo_base.gyp:mojo_environment_chromium',
36         '<(DEPTH)/mojo/mojo_base.gyp:mojo_system_impl',
37         '<(DEPTH)/skia/skia.gyp:skia',
38         '<(DEPTH)/third_party/WebKit/public/blink.gyp:blink',
39         '<(DEPTH)/ui/wm/wm.gyp:wm',
40         '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
41       ],
42       'include_dirs': [
43         '../..',
44         '<(SHARED_INTERMEDIATE_DIR)',
45         '<(SHARED_INTERMEDIATE_DIR)/extensions/shell',
46       ],
47       'sources': [
48         'app/shell_main_delegate.cc',
49         'app/shell_main_delegate.h',
50         'browser/default_shell_browser_main_delegate.cc',
51         'browser/default_shell_browser_main_delegate.h',
52         'browser/desktop_controller.cc',
53         'browser/desktop_controller.h',
54         'browser/media_capture_util.cc',
55         'browser/media_capture_util.h',
56         'browser/shell_app_delegate.cc',
57         'browser/shell_app_delegate.h',
58         'browser/shell_app_window_client.cc',
59         'browser/shell_app_window_client.h',
60         'browser/shell_audio_controller_chromeos.cc',
61         'browser/shell_audio_controller_chromeos.h',
62         'browser/shell_browser_context.cc',
63         'browser/shell_browser_context.h',
64         'browser/shell_browser_main_delegate.h',
65         'browser/shell_browser_main_parts.cc',
66         'browser/shell_browser_main_parts.h',
67         'browser/shell_content_browser_client.cc',
68         'browser/shell_content_browser_client.h',
69         'browser/shell_desktop_controller.cc',
70         'browser/shell_desktop_controller.h',
71         'browser/shell_device_client.cc',
72         'browser/shell_device_client.h',
73         'browser/shell_display_info_provider.cc',
74         'browser/shell_display_info_provider.h',
75         'browser/shell_extension_host_delegate.cc',
76         'browser/shell_extension_host_delegate.h',
77         'browser/shell_extension_system.cc',
78         'browser/shell_extension_system.h',
79         'browser/shell_extension_system_factory.cc',
80         'browser/shell_extension_system_factory.h',
81         'browser/shell_extension_web_contents_observer.cc',
82         'browser/shell_extension_web_contents_observer.h',
83         'browser/shell_extensions_browser_client.cc',
84         'browser/shell_extensions_browser_client.h',
85         'browser/shell_native_app_window.cc',
86         'browser/shell_native_app_window.h',
87         'browser/shell_network_controller_chromeos.cc',
88         'browser/shell_network_controller_chromeos.h',
89         'browser/shell_omaha_query_params_delegate.cc',
90         'browser/shell_omaha_query_params_delegate.h',
91         'browser/shell_runtime_api_delegate.cc',
92         'browser/shell_runtime_api_delegate.h',
93         'browser/shell_special_storage_policy.cc',
94         'browser/shell_special_storage_policy.h',
95         'browser/shell_web_contents_modal_dialog_manager.cc',
96         'common/shell_content_client.cc',
97         'common/shell_content_client.h',
98         'common/shell_extensions_client.cc',
99         'common/shell_extensions_client.h',
100         'common/switches.h',
101         'common/switches.cc',
102         'renderer/shell_content_renderer_client.cc',
103         'renderer/shell_content_renderer_client.h',
104         'renderer/shell_extensions_renderer_client.cc',
105         'renderer/shell_extensions_renderer_client.h',
106       ],
107       'conditions': [
108         ['chromeos==1', {
109           'dependencies': [
110             '<(DEPTH)/chromeos/chromeos.gyp:chromeos',
111             '<(DEPTH)/ui/chromeos/ui_chromeos.gyp:ui_chromeos',
112             '<(DEPTH)/ui/display/display.gyp:display',
113           ],
114         }],
115         ['disable_nacl==0', {
116           'dependencies': [
117             '<(DEPTH)/components/nacl.gyp:nacl',
118             '<(DEPTH)/components/nacl.gyp:nacl_browser',
119             '<(DEPTH)/components/nacl.gyp:nacl_common',
120             '<(DEPTH)/components/nacl.gyp:nacl_helper',
121             '<(DEPTH)/components/nacl.gyp:nacl_renderer',
122             '<(DEPTH)/components/nacl.gyp:nacl_switches',
123           ],
124           'sources': [
125             'browser/shell_nacl_browser_delegate.cc',
126             'browser/shell_nacl_browser_delegate.h',
127           ],
128         }],
129       ],
130     },
131     {
132       'target_name': 'app_shell',
133       'type': 'executable',
134       'defines!': ['CONTENT_IMPLEMENTATION'],
135       'dependencies': [
136         'app_shell_lib',
137         '<(DEPTH)/extensions/extensions.gyp:extensions_shell_and_test_pak',
138       ],
139       'include_dirs': [
140         '../..',
141       ],
142       'sources': [
143         'app/shell_main.cc',
144       ],
145       'conditions': [
146         ['OS=="win"', {
147           'msvs_settings': {
148             'VCLinkerTool': {
149               'SubSystem': '2',  # Set /SUBSYSTEM:WINDOWS
150             },
151           },
152           'dependencies': [
153             '<(DEPTH)/sandbox/sandbox.gyp:sandbox',
154           ],
155         }],
156       ],
157     },
158     {
159       'target_name': 'app_shell_browsertests',
160       'type': '<(gtest_target_type)',
161       'dependencies': [
162         'app_shell_lib',
163         # TODO(yoz): find the right deps
164         '<(DEPTH)/base/base.gyp:test_support_base',
165         '<(DEPTH)/content/content.gyp:content_app_both',
166         '<(DEPTH)/content/content_shell_and_tests.gyp:content_browser_test_support',
167         '<(DEPTH)/content/content_shell_and_tests.gyp:test_support_content',
168         '<(DEPTH)/extensions/extensions.gyp:extensions_test_support',
169         '<(DEPTH)/testing/gtest.gyp:gtest',
170       ],
171       'defines': [
172         'HAS_OUT_OF_PROC_TEST_RUNNER',
173       ],
174       'sources': [
175         # TODO(yoz): Refactor once we have a second test target.
176         # TODO(yoz): Something is off here; should this .gyp file be
177         # in the parent directory? Test target extensions_browsertests?
178         '../browser/api/dns/dns_apitest.cc',
179         '../browser/api/socket/socket_apitest.cc',
180         '../browser/api/sockets_tcp/sockets_tcp_apitest.cc',
181         '../browser/api/sockets_udp/sockets_udp_apitest.cc',
182         'browser/shell_browsertest.cc',
183         'test/shell_apitest.cc',
184         'test/shell_apitest.h',
185         'test/shell_test.cc',
186         'test/shell_test.h',
187         'test/shell_test_launcher_delegate.cc',
188         'test/shell_test_launcher_delegate.h',
189         'test/shell_tests_main.cc',
190       ],
191     },
192     {
193       'target_name': 'app_shell_unittests',
194       'type': 'executable',
195       'dependencies': [
196         'app_shell_lib',
197         '<(DEPTH)/base/base.gyp:base',
198         '<(DEPTH)/base/base.gyp:test_support_base',
199         '<(DEPTH)/content/content.gyp:content_app_both',
200         '<(DEPTH)/content/content_shell_and_tests.gyp:test_support_content',
201         '<(DEPTH)/extensions/extensions.gyp:extensions_shell_and_test_pak',
202         '<(DEPTH)/extensions/extensions.gyp:extensions_test_support',
203         '<(DEPTH)/testing/gtest.gyp:gtest',
204         '<(DEPTH)/ui/aura/aura.gyp:aura_test_support',
205       ],
206       'sources': [
207         '../test/extensions_unittests_main.cc',
208         'browser/shell_audio_controller_chromeos_unittest.cc',
209         'browser/shell_desktop_controller_unittest.cc',
210         'browser/shell_nacl_browser_delegate_unittest.cc',
211         'common/shell_content_client_unittest.cc'
212       ],
213       'conditions': [
214         ['disable_nacl==1', {
215           'sources!': [
216             'browser/shell_nacl_browser_delegate_unittest.cc',
217           ],
218         }],
219         ['chromeos==1', {
220           'dependencies': [
221             '<(DEPTH)/chromeos/chromeos.gyp:chromeos_test_support_without_gmock',
222           ],
223         }],
224       ],
225     },
226     {
227       'target_name': 'app_shell_version_header',
228       'type': 'none',
229       'direct_dependent_settings': {
230         'include_dirs': [
231           '<(SHARED_INTERMEDIATE_DIR)',
232         ],
233       },
234       'actions': [
235         {
236           'action_name': 'version_header',
237           'message': 'Generating version header file: <@(_outputs)',
238           'variables': {
239             'lastchange_path': '<(DEPTH)/build/util/LASTCHANGE',
240           },
241           'inputs': [
242             '<(version_path)',
243             '<(lastchange_path)',
244             'common/version.h.in',
245           ],
246           'outputs': [
247             '<(SHARED_INTERMEDIATE_DIR)/extensions/shell/common/version.h',
248           ],
249           'action': [
250             'python',
251             '<(version_py_path)',
252             '-e', 'VERSION_FULL="<(version_full)"',
253             '-f', '<(lastchange_path)',
254             'common/version.h.in',
255             '<@(_outputs)',
256           ],
257           'includes': [
258             '../../build/util/version.gypi',
259           ],
260         },
261       ],
262     },
263   ],  # targets