- add sources.
[platform/framework/web/crosswalk.git] / src / content / content_tests.gypi
1 # Copyright (c) 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.
4
5 {
6   'targets': [
7     {
8       'target_name': 'test_support_content',
9       'type': 'static_library',
10       'dependencies': [
11         '../net/net.gyp:net_test_support',
12         '../skia/skia.gyp:skia',
13         '../testing/gmock.gyp:gmock',
14         '../testing/gtest.gyp:gtest',
15         '../ui/events/events.gyp:events',
16         '../ui/gfx/gfx.gyp:gfx',
17         '../ui/ui.gyp:keycode_converter',
18         '../ui/ui.gyp:ui',
19         '../ui/ui.gyp:ui_resources',
20         '../ui/ui_unittests.gyp:ui_test_support',
21         '../url/url.gyp:url_lib',
22         'browser/speech/proto/speech_proto.gyp:speech_proto',
23         'content.gyp:content_app_both',
24         'content.gyp:content_browser',
25         'content.gyp:content_common',
26       ],
27       'include_dirs': [
28         '..',
29       ],
30       'sources': [
31         'public/test/browser_test_base.cc',
32         'public/test/browser_test_base.h',
33         'public/test/browser_test.h',
34         'public/test/browser_test_utils.cc',
35         'public/test/browser_test_utils.h',
36         'public/test/content_test_suite_base.cc',
37         'public/test/content_test_suite_base.h',
38         'public/test/download_test_observer.cc',
39         'public/test/download_test_observer.h',
40         'public/test/fake_speech_recognition_manager.cc',
41         'public/test/fake_speech_recognition_manager.h',
42         'public/test/layouttest_support.h',
43         'public/test/mock_download_item.cc',
44         'public/test/mock_download_item.h',
45         'public/test/mock_download_manager.cc',
46         'public/test/mock_download_manager.h',
47         'public/test/mock_notification_observer.cc',
48         'public/test/mock_notification_observer.h',
49         'public/test/mock_render_process_host.cc',
50         'public/test/mock_render_process_host.h',
51         'public/test/mock_render_thread.cc',
52         'public/test/mock_render_thread.h',
53         'public/test/mock_resource_context.cc',
54         'public/test/mock_resource_context.h',
55         'public/test/nested_message_pump_android.cc',
56         'public/test/nested_message_pump_android.h',
57         'public/test/render_view_fake_resources_test.cc',
58         'public/test/render_view_fake_resources_test.h',
59         'public/test/render_view_test.cc',
60         'public/test/render_view_test.h',
61         'public/test/render_widget_test.cc',
62         'public/test/render_widget_test.h',
63         'public/test/sandbox_file_system_test_helper.cc',
64         'public/test/sandbox_file_system_test_helper.h',
65         'public/test/test_browser_context.cc',
66         'public/test/test_browser_context.h',
67         'public/test/test_browser_thread.cc',
68         'public/test/test_browser_thread.h',
69         'public/test/test_browser_thread_bundle.cc',
70         'public/test/test_browser_thread_bundle.h',
71         'public/test/test_content_client_initializer.cc',
72         'public/test/test_content_client_initializer.h',
73         'public/test/test_file_error_injector.cc',
74         'public/test/test_file_error_injector.h',
75         'public/test/test_file_system_backend.cc',
76         'public/test/test_file_system_backend.h',
77         'public/test/test_file_system_context.cc',
78         'public/test/test_file_system_context.h',
79         'public/test/test_file_system_options.cc',
80         'public/test/test_file_system_options.h',
81         'public/test/test_launcher.cc',
82         'public/test/test_launcher.h',
83         'public/test/test_navigation_observer.cc',
84         'public/test/test_navigation_observer.h',
85         'public/test/test_notification_tracker.cc',
86         'public/test/test_notification_tracker.h',
87         'public/test/test_renderer_host.cc',
88         'public/test/test_renderer_host.h',
89         'public/test/test_utils.cc',
90         'public/test/test_utils.h',
91         'public/test/unittest_test_suite.cc',
92         'public/test/unittest_test_suite.h',
93         'public/test/web_contents_tester.cc',
94         'public/test/web_contents_tester.h',
95         'app/startup_helper_win.cc',
96         # TODO(phajdan.jr): All of those files should live in content/test (if
97         # they're only used by content) or content/public/test (if they're used
98         # by other embedders).
99         'browser/download/mock_download_file.cc',
100         'browser/download/mock_download_file.h',
101         'browser/geolocation/fake_access_token_store.cc',
102         'browser/geolocation/fake_access_token_store.h',
103         'browser/geolocation/mock_location_arbitrator.cc',
104         'browser/geolocation/mock_location_arbitrator.h',
105         'browser/geolocation/mock_location_provider.cc',
106         'browser/geolocation/mock_location_provider.h',
107         'browser/renderer_host/compositing_iosurface_shader_programs_mac.cc',
108         'browser/renderer_host/compositing_iosurface_shader_programs_mac.h',
109         'browser/renderer_host/compositing_iosurface_transformer_mac.cc',
110         'browser/renderer_host/compositing_iosurface_transformer_mac.h',
111         'browser/renderer_host/media/mock_media_observer.cc',
112         'browser/renderer_host/media/mock_media_observer.h',
113         'browser/renderer_host/test_backing_store.cc',
114         'browser/renderer_host/test_backing_store.h',
115         'browser/renderer_host/test_render_view_host.cc',
116         'browser/renderer_host/test_render_view_host.h',
117         'gpu/gpu_idirect3d9_mock_win.cc',
118         'gpu/gpu_idirect3d9_mock_win.h',
119         'test/content_test_suite.cc',
120         'test/content_test_suite.h',
121         'test/layouttest_support.cc',
122         'test/mock_google_streaming_server.cc',
123         'test/mock_google_streaming_server.h',
124         'test/mock_keyboard.cc',
125         'test/mock_keyboard.h',
126         'test/mock_keyboard_driver_win.cc',
127         'test/mock_keyboard_driver_win.h',
128         'test/mock_render_process.cc',
129         'test/mock_render_process.h',
130         'test/mock_webclipboard_impl.cc',
131         'test/mock_webclipboard_impl.h',
132         'test/mock_webframeclient.h',
133         'test/mock_weburlloader.cc',
134         'test/mock_weburlloader.h',
135         'test/net/url_request_abort_on_end_job.cc',
136         'test/net/url_request_abort_on_end_job.h',
137         'test/net/url_request_failed_job.cc',
138         'test/net/url_request_failed_job.h',
139         'test/net/url_request_mock_http_job.cc',
140         'test/net/url_request_mock_http_job.h',
141         'test/net/url_request_prepackaged_interceptor.cc',
142         'test/net/url_request_prepackaged_interceptor.h',
143         'test/net/url_request_slow_download_job.cc',
144         'test/net/url_request_slow_download_job.h',
145         'test/ppapi_unittest.cc',
146         'test/ppapi_unittest.h',
147         'test/test_content_browser_client.cc',
148         'test/test_content_browser_client.h',
149         'test/test_content_client.cc',
150         'test/test_content_client.h',
151         'test/test_media_stream_client.cc',
152         'test/test_media_stream_client.h',
153         'test/test_render_view_host_factory.cc',
154         'test/test_render_view_host_factory.h',
155         'test/test_video_frame_provider.cc',
156         'test/test_video_frame_provider.h',
157         'test/test_web_contents.cc',
158         'test/test_web_contents.h',
159         'test/test_web_contents_view.cc',
160         'test/test_web_contents_view.h',
161         'test/test_webkit_platform_support.cc',
162         'test/test_webkit_platform_support.h',
163         'test/web_gesture_curve_mock.cc',
164         'test/web_gesture_curve_mock.h',
165         'test/web_layer_tree_view_impl_for_testing.cc',
166         'test/web_layer_tree_view_impl_for_testing.h',
167         'test/webkit_support.cc',
168         'test/webkit_support.h',
169         'test/webkit_support_glue.cc',
170         'test/weburl_loader_mock.cc',
171         'test/weburl_loader_mock.h',
172         'test/weburl_loader_mock_factory.cc',
173         'test/weburl_loader_mock_factory.h',
174
175         # TODO(kinuko): Those files should be moved to content/public/test.
176         '../webkit/browser/appcache/appcache_test_helper.cc',
177         '../webkit/browser/appcache/appcache_test_helper.h',
178         '../webkit/browser/fileapi/async_file_test_helper.cc',
179         '../webkit/browser/fileapi/async_file_test_helper.h',
180       ],
181       'conditions': [
182         ['OS == "ios"', {
183           'sources/': [
184             # iOS only needs a small portion of content; exclude all the
185             # implementation, and re-include what is used.
186             ['exclude', '\\.(cc|mm)$'],
187             ['include', '_ios\\.(cc|mm)$'],
188             ['include', '^public/test/content_test_suite_base\\.cc$'],
189             ['include', '^public/test/mock_notification_observer\\.cc$'],
190             ['include', '^public/test/mock_resource_context\\.cc$'],
191             ['include', '^public/test/test_browser_thread\\.cc$'],
192             ['include', '^public/test/test_content_client_initializer\\.cc$'],
193             ['include', '^public/test/test_notification_tracker\\.cc$'],
194             ['include', '^public/test/test_utils\\.cc$'],
195             ['include', '^public/test/unittest_test_suite\\.cc$'],
196             ['include', '^test/content_test_suite\\.cc$'],
197             ['include', '^test/test_content_browser_client\\.cc$'],
198             ['include', '^test/test_content_client\\.cc$'],
199           ],
200         }, {  # OS != "ios"
201           'conditions': [
202             ['OS=="mac"', {
203               'copies': [{
204                 'destination': '<(SHARED_INTERMEDIATE_DIR)/webkit',
205                 'files': [
206                   'shell/resources/missingImage.png',
207                   'shell/resources/textAreaResizeCorner.png',
208                 ],
209               }],
210             }],
211           ],
212           'dependencies': [
213             'content.gyp:content_child',
214             'content.gyp:content_gpu',
215             'content.gyp:content_ppapi_plugin',
216             'content.gyp:content_renderer',
217             'content.gyp:content_utility',
218             'content.gyp:content_worker',
219             '../cc/cc_tests.gyp:cc_test_support',
220             '../media/media.gyp:media',
221             '../ppapi/ppapi_internal.gyp:ppapi_host',
222             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
223             '../ppapi/ppapi_internal.gyp:ppapi_shared',
224             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
225             '../third_party/WebKit/public/blink.gyp:blink',
226             '../third_party/WebKit/public/blink_test_runner.gyp:blink_test_runner',
227             '../ui/surface/surface.gyp:surface',
228             '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
229             '../webkit/common/user_agent/webkit_user_agent.gyp:user_agent',
230             '../webkit/glue/webkit_glue.gyp:glue',
231             '../webkit/glue/webkit_glue.gyp:glue_child',
232             '../webkit/renderer/compositor_bindings/compositor_bindings.gyp:webkit_compositor_support',
233             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
234             '../webkit/storage_browser.gyp:webkit_storage_browser',
235             '../webkit/storage_common.gyp:webkit_storage_common',
236           ],
237         }],
238         ['OS == "win" or toolkit_uses_gtk == 1', {
239           'dependencies': [
240             '../sandbox/sandbox.gyp:sandbox',
241           ],
242         }],
243         ['enable_webrtc==1', {
244           'sources': [
245             'renderer/media/mock_media_stream_dependency_factory.cc',
246             'renderer/media/mock_media_stream_dependency_factory.h',
247             'renderer/media/mock_media_stream_dispatcher.cc',
248             'renderer/media/mock_media_stream_dispatcher.h',
249             'renderer/media/mock_media_stream_registry.cc',
250             'renderer/media/mock_media_stream_registry.h',
251             'renderer/media/mock_peer_connection_impl.cc',
252             'renderer/media/mock_peer_connection_impl.h',
253             'renderer/media/mock_web_rtc_peer_connection_handler_client.cc',
254             'renderer/media/mock_web_rtc_peer_connection_handler_client.h',
255             'test/webrtc_audio_device_test.cc',
256             'test/webrtc_audio_device_test.h',
257           ],
258           'dependencies': [
259             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
260             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
261             '../third_party/webrtc/modules/modules.gyp:audio_device',
262             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
263           ],
264         }],
265         ['toolkit_uses_gtk == 1', {
266           'dependencies': [
267             '../build/linux/system.gyp:gtk',
268           ],
269         }],
270         ['use_glib == 1', {
271           'dependencies': [
272             '../build/linux/system.gyp:glib',
273           ],
274         }],
275         ['use_aura==1', {
276           'dependencies': [
277             '../ui/aura/aura.gyp:aura_test_support',
278             '../ui/compositor/compositor.gyp:compositor',
279           ],
280         }],
281         ['OS=="win"', {
282           'dependencies': [
283             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
284           ],
285         }],
286         ['OS!="android" and OS!="ios"', {
287           'dependencies': [
288             '../third_party/libvpx/libvpx.gyp:libvpx',
289           ],
290         }],
291         ['OS=="android"', {
292           'dependencies': [
293             '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
294             'test_support_content_jni_headers',
295           ],
296         }],
297       ],
298     },
299     {
300       'target_name': 'content_unittests',
301       'type': '<(gtest_target_type)',
302       'dependencies': [
303         'content.gyp:content_browser',
304         'content.gyp:content_common',
305         'test_support_content',
306         'browser/speech/proto/speech_proto.gyp:speech_proto',
307         '../base/base.gyp:test_support_base',
308         '../crypto/crypto.gyp:crypto',
309         '../net/net.gyp:net_test_support',
310         '../skia/skia.gyp:skia',
311         '../sql/sql.gyp:sql',
312         '../sql/sql.gyp:test_support_sql',
313         '../testing/gmock.gyp:gmock',
314         '../testing/gtest.gyp:gtest',
315         '../ui/gfx/gfx.gyp:gfx',
316         '../ui/ui.gyp:ui',
317         '../webkit/common/user_agent/webkit_user_agent.gyp:user_agent',
318       ],
319       'include_dirs': [
320         '..',
321         '<(SHARED_INTERMEDIATE_DIR)',  # Needed by key_systems_unittest.cc.
322       ],
323       'sources': [
324         'browser/accessibility/browser_accessibility_mac_unittest.mm',
325         'browser/accessibility/browser_accessibility_manager_unittest.cc',
326         'browser/accessibility/browser_accessibility_win_unittest.cc',
327         'browser/appcache/chrome_appcache_service_unittest.cc',
328         'browser/aura/software_output_device_ozone_unittest.cc',
329         'browser/browser_thread_unittest.cc',
330         'browser/browser_url_handler_impl_unittest.cc',
331         'browser/byte_stream_unittest.cc',
332         'browser/child_process_security_policy_unittest.cc',
333         'browser/device_orientation/data_fetcher_impl_android_unittest.cc',
334         'browser/device_orientation/data_fetcher_shared_memory_base_unittest.cc',
335         'browser/devtools/devtools_http_handler_unittest.cc',
336         'browser/devtools/devtools_manager_unittest.cc',
337         'browser/dom_storage/dom_storage_area_unittest.cc',
338         'browser/dom_storage/dom_storage_context_impl_unittest.cc',
339         'browser/dom_storage/dom_storage_database_unittest.cc',
340         'browser/dom_storage/session_storage_database_unittest.cc',
341         'browser/download/base_file_unittest.cc',
342         'browser/download/download_file_unittest.cc',
343         'browser/download/download_item_impl_unittest.cc',
344         'browser/download/download_manager_impl_unittest.cc',
345         'browser/download/file_metadata_unittest_linux.cc',
346         'browser/download/rate_estimator_unittest.cc',
347         'browser/download/save_package_unittest.cc',
348         'browser/fileapi/blob_url_request_job_unittest.cc',
349         'browser/fileapi/copy_or_move_file_validator_unittest.cc',
350         'browser/fileapi/copy_or_move_operation_delegate_unittest.cc',
351         'browser/fileapi/dragged_file_util_unittest.cc',
352         'browser/fileapi/file_system_context_unittest.cc',
353         'browser/fileapi/file_system_dir_url_request_job_unittest.cc',
354         'browser/fileapi/file_system_file_stream_reader_unittest.cc',
355         'browser/fileapi/file_system_operation_impl_unittest.cc',
356         'browser/fileapi/file_system_operation_impl_write_unittest.cc',
357         'browser/fileapi/file_system_operation_runner_unittest.cc',
358         'browser/fileapi/file_system_quota_client_unittest.cc',
359         'browser/fileapi/file_system_url_request_job_unittest.cc',
360         'browser/fileapi/file_writer_delegate_unittest.cc',
361         'browser/fileapi/fileapi_message_filter_unittest.cc',
362         'browser/fileapi/local_file_util_unittest.cc',
363         'browser/fileapi/obfuscated_file_util_unittest.cc',
364         'browser/fileapi/plugin_private_file_system_backend_unittest.cc',
365         'browser/fileapi/recursive_operation_delegate_unittest.cc',
366         'browser/fileapi/sandbox_file_system_backend_delegate_unittest.cc',
367         'browser/fileapi/sandbox_file_system_backend_unittest.cc',
368         'browser/fileapi/transient_file_util_unittest.cc',
369         'browser/fileapi/upload_file_system_file_element_reader_unittest.cc',
370         'browser/frame_host/frame_tree_unittest.cc',
371         'browser/frame_host/navigation_controller_impl_unittest.cc',
372         'browser/frame_host/navigation_entry_impl_unittest.cc',
373         'browser/frame_host/render_view_host_manager_unittest.cc',
374         'browser/gamepad/gamepad_provider_unittest.cc',
375         'browser/gamepad/gamepad_test_helpers.cc',
376         'browser/gamepad/gamepad_test_helpers.h',
377         'browser/geolocation/geolocation_provider_unittest.cc',
378         'browser/geolocation/location_arbitrator_impl_unittest.cc',
379         'browser/geolocation/network_location_provider_unittest.cc',
380         'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
381         'browser/geolocation/wifi_data_provider_common_unittest.cc',
382         'browser/geolocation/wifi_data_provider_linux_unittest.cc',
383         'browser/geolocation/wifi_data_provider_unittest_win.cc',
384         'browser/gpu/shader_disk_cache_unittest.cc',
385         'browser/host_zoom_map_impl_unittest.cc',
386         'browser/indexed_db/indexed_db_backing_store_unittest.cc',
387         'browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc',
388         'browser/indexed_db/indexed_db_database_unittest.cc',
389         'browser/indexed_db/indexed_db_factory_unittest.cc',
390         'browser/indexed_db/indexed_db_fake_backing_store.cc',
391         'browser/indexed_db/indexed_db_fake_backing_store.h',
392         'browser/indexed_db/indexed_db_leveldb_coding_unittest.cc',
393         'browser/indexed_db/indexed_db_quota_client_unittest.cc',
394         'browser/indexed_db/indexed_db_unittest.cc',
395         'browser/indexed_db/mock_indexed_db_callbacks.cc',
396         'browser/indexed_db/mock_indexed_db_callbacks.h',
397         'browser/indexed_db/mock_indexed_db_database_callbacks.cc',
398         'browser/indexed_db/mock_indexed_db_database_callbacks.h',
399         'browser/indexed_db/leveldb/leveldb_unittest.cc',
400         'browser/indexed_db/list_set_unittest.cc',
401         'browser/loader/offline_policy_unittest.cc',
402         'browser/loader/resource_buffer_unittest.cc',
403         'browser/loader/resource_dispatcher_host_unittest.cc',
404         'browser/loader/resource_loader_unittest.cc',
405         'browser/loader/resource_scheduler_unittest.cc',
406         'browser/loader/upload_data_stream_builder_unittest.cc',
407         'browser/mach_broker_mac_unittest.cc',
408         'browser/media/media_internals_unittest.cc',
409         'browser/media/webrtc_identity_store_unittest.cc',
410         'browser/net/sqlite_persistent_cookie_store_unittest.cc',
411         'browser/notification_service_impl_unittest.cc',
412         'browser/plugin_loader_posix_unittest.cc',
413         'browser/power_monitor_message_broadcaster_unittest.cc',
414         'browser/renderer_host/compositing_iosurface_transformer_mac_unittest.cc',
415         'browser/renderer_host/gtk_key_bindings_handler_unittest.cc',
416         'browser/renderer_host/input/gesture_event_filter_unittest.cc',
417         'browser/renderer_host/input/immediate_input_router_unittest.cc',
418         'browser/renderer_host/input/input_router_unittest.h',
419         'browser/renderer_host/input/input_router_unittest.cc',
420         'browser/renderer_host/input/mock_input_ack_handler.cc',
421         'browser/renderer_host/input/mock_input_ack_handler.h',
422         'browser/renderer_host/input/mock_input_router_client.cc',
423         'browser/renderer_host/input/mock_input_router_client.h',
424         'browser/renderer_host/input/synthetic_gesture_controller_new_unittest.cc',
425         'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
426         'browser/renderer_host/input/touch_event_queue_unittest.cc',
427         'browser/renderer_host/media/audio_input_device_manager_unittest.cc',
428         'browser/renderer_host/media/audio_mirroring_manager_unittest.cc',
429         'browser/renderer_host/media/audio_renderer_host_unittest.cc',
430         'browser/renderer_host/media/device_request_message_filter_unittest.cc',
431         'browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc',
432         'browser/renderer_host/media/media_stream_manager_unittest.cc',
433         'browser/renderer_host/media/media_stream_ui_proxy_unittest.cc',
434         'browser/renderer_host/media/video_capture_buffer_pool_unittest.cc',
435         'browser/renderer_host/media/video_capture_controller_unittest.cc',
436         'browser/renderer_host/media/video_capture_host_unittest.cc',
437         'browser/renderer_host/media/video_capture_manager_unittest.cc',
438         'browser/renderer_host/media/video_capture_oracle_unittest.cc',
439         'browser/renderer_host/media/web_contents_audio_input_stream_unittest.cc',
440         'browser/renderer_host/media/web_contents_video_capture_device_unittest.cc',
441         'browser/renderer_host/pepper/browser_ppapi_host_test.cc',
442         'browser/renderer_host/pepper/browser_ppapi_host_test.h',
443         'browser/renderer_host/pepper/pepper_gamepad_host_unittest.cc',
444         'browser/renderer_host/pepper/pepper_printing_host_unittest.cc',
445         'browser/renderer_host/render_view_host_unittest.cc',
446         'browser/renderer_host/render_widget_host_unittest.cc',
447         'browser/renderer_host/render_widget_host_view_aura_unittest.cc',
448         'browser/renderer_host/render_widget_host_view_guest_unittest.cc',
449         'browser/renderer_host/render_widget_host_view_mac_editcommand_helper_unittest.mm',
450         'browser/renderer_host/render_widget_host_view_mac_unittest.mm',
451         'browser/renderer_host/software_frame_manager_unittest.cc',
452         'browser/renderer_host/synthetic_gesture_controller_unittest.cc',
453         'browser/renderer_host/text_input_client_mac_unittest.mm',
454         'browser/renderer_host/web_input_event_aura_unittest.cc',
455         'browser/renderer_host/websocket_dispatcher_host_unittest.cc',
456         'browser/renderer_host/input/web_input_event_builders_gtk_unittest.cc',
457         'browser/resolve_proxy_msg_helper_unittest.cc',
458         'browser/site_instance_impl_unittest.cc',
459         'browser/speech/chunked_byte_buffer_unittest.cc',
460         'browser/speech/endpointer/endpointer_unittest.cc',
461         'browser/speech/google_one_shot_remote_engine_unittest.cc',
462         'browser/speech/google_streaming_remote_engine_unittest.cc',
463         'browser/speech/speech_recognizer_impl_unittest.cc',
464         'browser/ssl/ssl_host_state_unittest.cc',
465         'browser/startup_task_runner_unittest.cc',
466         'browser/storage_partition_impl_unittest.cc',
467         'browser/storage_partition_impl_map_unittest.cc',
468         'browser/streams/stream_unittest.cc',
469         'browser/streams/stream_url_request_job_unittest.cc',
470         'browser/system_message_window_win_unittest.cc',
471         'browser/tracing/trace_subscriber_stdio_unittest.cc',
472         'browser/web_contents/aura/window_slider_unittest.cc',
473         'browser/web_contents/web_contents_delegate_unittest.cc',
474         'browser/web_contents/web_contents_impl_unittest.cc',
475         'browser/web_contents/web_contents_user_data_unittest.cc',
476         'browser/web_contents/web_contents_view_mac_unittest.mm',
477         'browser/web_contents/web_drag_dest_mac_unittest.mm',
478         'browser/web_contents/web_drag_source_mac_unittest.mm',
479         'browser/webui/web_ui_data_source_unittest.cc',
480         'browser/webui/web_ui_message_handler_unittest.cc',
481         'child/fileapi/webfilewriter_base_unittest.cc',
482         'child/indexed_db/indexed_db_dispatcher_unittest.cc',
483         'child/indexed_db/proxy_webidbcursor_impl_unittest.cc',
484         'child/npapi/plugin_lib_unittest.cc',
485         'child/power_monitor_broadcast_source_unittest.cc',
486         'child/resource_dispatcher_unittest.cc',
487         'child/site_isolation_policy_unittest.cc',
488         'common/android/address_parser_unittest.cc',
489         'common/cc_messages_unittest.cc',
490         'common/common_param_traits_unittest.cc',
491         'common/dom_storage/dom_storage_map_unittest.cc',
492         'common/gpu/gpu_memory_manager_unittest.cc',
493         'common/indexed_db/indexed_db_key_unittest.cc',
494         'common/input/input_param_traits_unittest.cc',
495         'common/inter_process_time_ticks_converter_unittest.cc',
496         'common/mac/attributed_string_coder_unittest.mm',
497         'common/mac/font_descriptor_unittest.mm',
498         'common/page_state_serialization_unittest.cc',
499         'common/page_zoom_unittest.cc',
500         'common/plugin_list_unittest.cc',
501         'common/sandbox_mac_diraccess_unittest.mm',
502         'common/sandbox_mac_fontloading_unittest.mm',
503         'common/sandbox_mac_system_access_unittest.mm',
504         'common/sandbox_mac_unittest_helper.h',
505         'common/sandbox_mac_unittest_helper.mm',
506         'common/webplugininfo_unittest.cc',
507         'renderer/active_notification_tracker_unittest.cc',
508         'renderer/android/email_detector_unittest.cc',
509         'renderer/android/phone_number_detector_unittest.cc',
510         'renderer/bmp_image_decoder_unittest.cc',
511         'renderer/date_time_formatter_unittest.cc',
512         'renderer/device_orientation/device_motion_event_pump_unittest.cc',
513         'renderer/device_orientation/device_orientation_event_pump_unittest.cc',
514         'renderer/disambiguation_popup_helper_unittest.cc',
515         'renderer/dom_storage/dom_storage_cached_area_unittest.cc',
516         'renderer/gpu/input_event_filter_unittest.cc',
517         'renderer/gpu/input_handler_proxy_unittest.cc',
518         'renderer/ico_image_decoder_unittest.cc',
519         'renderer/media/android/media_info_loader_unittest.cc',
520         'renderer/media/audio_message_filter_unittest.cc',
521         'renderer/media/audio_renderer_mixer_manager_unittest.cc',
522         'renderer/media/buffered_data_source_unittest.cc',
523         'renderer/media/buffered_resource_loader_unittest.cc',
524         'renderer/media/cache_util_unittest.cc',
525         'renderer/media/crypto/key_systems_unittest.cc',
526         'renderer/media/test_response_generator.cc',
527         'renderer/media/test_response_generator.h',
528         'renderer/media/video_capture_impl_unittest.cc',
529         'renderer/media/video_capture_message_filter_unittest.cc',
530         'renderer/media/video_destination_handler_unittest.cc',
531         'renderer/media/webaudiosourceprovider_impl_unittest.cc',
532         'renderer/npapi/webplugin_impl_unittest.cc',
533         'renderer/paint_aggregator_unittest.cc',
534         'renderer/pepper/host_var_tracker_unittest.cc',
535         'renderer/pepper/mock_resource.h',
536         'renderer/pepper/pepper_broker_unittest.cc',
537         'renderer/pepper/quota_file_io_unittest.cc',
538         'renderer/pepper/v8_var_converter_unittest.cc',
539         'renderer/render_thread_impl_unittest.cc',
540         'renderer/render_view_impl_unittest.cc',
541         'renderer/skia_benchmarking_extension_unittest.cc',
542         'renderer/v8_value_converter_impl_unittest.cc',
543         'renderer/webcrypto/webcrypto_impl_unittest.cc',
544         'test/image_decoder_test.cc',
545         'test/image_decoder_test.h',
546         'test/run_all_unittests.cc',
547         '../webkit/browser/appcache/appcache_database_unittest.cc',
548         '../webkit/browser/appcache/appcache_group_unittest.cc',
549         '../webkit/browser/appcache/appcache_host_unittest.cc',
550         '../webkit/browser/appcache/appcache_quota_client_unittest.cc',
551         '../webkit/browser/appcache/appcache_request_handler_unittest.cc',
552         '../webkit/browser/appcache/appcache_response_unittest.cc',
553         '../webkit/browser/appcache/appcache_service_unittest.cc',
554         '../webkit/browser/appcache/appcache_storage_impl_unittest.cc',
555         '../webkit/browser/appcache/appcache_storage_unittest.cc',
556         '../webkit/browser/appcache/appcache_unittest.cc',
557         '../webkit/browser/appcache/appcache_update_job_unittest.cc',
558         '../webkit/browser/appcache/appcache_url_request_job_unittest.cc',
559         '../webkit/browser/appcache/manifest_parser_unittest.cc',
560         '../webkit/browser/appcache/mock_appcache_policy.cc',
561         '../webkit/browser/appcache/mock_appcache_policy.h',
562         '../webkit/browser/appcache/mock_appcache_service.cc',
563         '../webkit/browser/appcache/mock_appcache_service.h',
564         '../webkit/browser/appcache/mock_appcache_storage.cc',
565         '../webkit/browser/appcache/mock_appcache_storage.h',
566         '../webkit/browser/appcache/mock_appcache_storage_unittest.cc',
567         '../webkit/browser/blob/blob_storage_context_unittest.cc',
568         '../webkit/browser/blob/local_file_stream_reader_unittest.cc',
569         '../webkit/browser/blob/mock_blob_url_request_context.cc',
570         '../webkit/browser/blob/mock_blob_url_request_context.h',
571         '../webkit/browser/database/database_quota_client_unittest.cc',
572         '../webkit/browser/database/database_tracker_unittest.cc',
573         '../webkit/browser/database/database_util_unittest.cc',
574         '../webkit/browser/database/databases_table_unittest.cc',
575         '../webkit/browser/fileapi/external_mount_points_unittest.cc',
576         '../webkit/browser/fileapi/file_system_url_unittest.cc',
577         '../webkit/browser/fileapi/file_system_usage_cache_unittest.cc',
578         '../webkit/browser/fileapi/isolated_context_unittest.cc',
579         '../webkit/browser/fileapi/local_file_stream_writer_unittest.cc',
580         '../webkit/browser/fileapi/mock_file_change_observer.cc',
581         '../webkit/browser/fileapi/mock_file_change_observer.h',
582         '../webkit/browser/fileapi/native_file_util_unittest.cc',
583         '../webkit/browser/fileapi/sandbox_database_test_helper.cc',
584         '../webkit/browser/fileapi/sandbox_database_test_helper.h',
585         '../webkit/browser/fileapi/sandbox_directory_database_unittest.cc',
586         '../webkit/browser/fileapi/sandbox_isolated_origin_database_unittest.cc',
587         '../webkit/browser/fileapi/sandbox_origin_database_unittest.cc',
588         '../webkit/browser/fileapi/sandbox_prioritized_origin_database_unittest.cc',
589         '../webkit/browser/fileapi/test_file_set.cc',
590         '../webkit/browser/fileapi/test_file_set.h',
591         '../webkit/browser/fileapi/timed_task_helper_unittest.cc',
592         '../webkit/child/multipart_response_delegate_unittest.cc',
593         '../webkit/child/touch_fling_gesture_curve_unittest.cc',
594         '../webkit/child/worker_task_runner_unittest.cc',
595         '../webkit/common/blob/shareable_file_reference_unittest.cc',
596         '../webkit/common/cursors/webcursor_unittest.cc',
597         '../webkit/common/database/database_connections_unittest.cc',
598         '../webkit/common/database/database_identifier_unittest.cc',
599         '../webkit/common/fileapi/file_system_util_unittest.cc',
600         '../webkit/glue/webkit_glue_unittest.cc',
601         '../webkit/common/user_agent/user_agent_unittest.cc',
602         '../webkit/browser/quota/mock_quota_manager.cc',
603         '../webkit/browser/quota/mock_quota_manager.h',
604         '../webkit/browser/quota/mock_quota_manager_unittest.cc',
605         '../webkit/browser/quota/mock_special_storage_policy.cc',
606         '../webkit/browser/quota/mock_special_storage_policy.h',
607         '../webkit/browser/quota/mock_storage_client.cc',
608         '../webkit/browser/quota/mock_storage_client.h',
609         '../webkit/browser/quota/quota_database_unittest.cc',
610         '../webkit/browser/quota/quota_manager_unittest.cc',
611         '../webkit/browser/quota/quota_temporary_storage_evictor_unittest.cc',
612         '../webkit/browser/quota/usage_tracker_unittest.cc',
613         '../webkit/renderer/cpp_variant_unittest.cc',
614       ],
615       'conditions': [
616         ['OS == "ios"', {
617           'sources/': [
618             # iOS only needs a small portion of content; exclude all the
619             # implementation, and re-include what is used.
620             ['exclude', '\\.(cc|mm)$'],
621             ['include', '_ios\\.(cc|mm)$'],
622             ['include', '^browser/notification_service_impl_unittest\\.cc$'],
623             ['include', '^browser/web_contents/navigation_entry_impl_unittest\\.cc$'],
624             ['include', '^test/run_all_unittests\\.cc$'],
625           ],
626         }, {  # OS != "ios"
627           'dependencies': [
628             'content.gyp:content_browser',
629             'content.gyp:content_child',
630             'content.gyp:content_gpu',
631             'content.gyp:content_plugin',
632             'content.gyp:content_renderer',
633             'content_resources.gyp:content_resources',
634             '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
635             '../gpu/gpu.gyp:gpu',
636             '../gpu/gpu.gyp:gpu_unittest_utils',
637             '../ipc/ipc.gyp:test_support_ipc',
638             '../jingle/jingle.gyp:jingle_glue_test_util',
639             '../media/media.gyp:media_test_support',
640             '../media/media.gyp:shared_memory_support',
641             '../third_party/WebKit/public/blink.gyp:blink',
642             '../third_party/icu/icu.gyp:icui18n',
643             '../third_party/icu/icu.gyp:icuuc',
644             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
645             '../third_party/libjingle/libjingle.gyp:libjingle',
646             '../ui/compositor/compositor.gyp:compositor_test_support',
647             '../ui/gl/gl.gyp:gl',
648             '../v8/tools/gyp/v8.gyp:v8',
649             '../webkit/common/webkit_common.gyp:webkit_common',
650             '../webkit/glue/webkit_glue.gyp:glue',
651             '../webkit/glue/webkit_glue.gyp:glue_child',
652             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
653             '../webkit/storage_browser.gyp:webkit_storage_browser',
654             '../webkit/storage_common.gyp:webkit_storage_common',
655           ],
656         }],
657         ['enable_plugins==0', {
658           'sources/': [
659             ['exclude', '^browser/renderer_host/pepper/'],
660             ['exclude', '^child/npapi/'],
661             ['exclude', '^renderer/npapi/'],
662             ['exclude', '^renderer/pepper/'],
663           ],
664           'sources!': [
665             'browser/plugin_loader_posix_unittest.cc',
666             'renderer/media/video_destination_handler_unittest.cc',
667           ],
668         }],
669         ['enable_webrtc==1', {
670           'sources': [
671             'browser/media/webrtc_internals_unittest.cc',
672             'browser/renderer_host/media/webrtc_identity_service_host_unittest.cc',
673             'browser/renderer_host/p2p/socket_host_test_utils.h',
674             'browser/renderer_host/p2p/socket_host_tcp_unittest.cc',
675             'browser/renderer_host/p2p/socket_host_tcp_server_unittest.cc',
676             'browser/renderer_host/p2p/socket_host_udp_unittest.cc',
677             'renderer/media/media_stream_dependency_factory_unittest.cc',
678             'renderer/media/media_stream_dispatcher_unittest.cc',
679             'renderer/media/media_stream_impl_unittest.cc',
680             'renderer/media/rtc_peer_connection_handler_unittest.cc',
681             'renderer/media/rtc_video_decoder_unittest.cc',
682             'renderer/media/video_source_handler_unittest.cc',
683             'renderer/media/webrtc_audio_device_unittest.cc',
684             'renderer/media/webrtc_identity_service_unittest.cc',
685             'renderer/media/webrtc_local_audio_source_provider_unittest.cc',
686             'renderer/media/webrtc_local_audio_track_unittest.cc',
687           ],
688           'dependencies': [
689             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
690             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
691             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
692             '../third_party/webrtc/voice_engine/voice_engine.gyp:voice_engine',
693           ]
694         }, {
695           'sources!': [
696             'renderer/media/video_destination_handler_unittest.cc',
697           ],
698         }],
699         ['enable_webrtc==1 and (OS=="linux" or OS=="mac" or OS=="win")', {
700           'sources': [
701             'browser/renderer_host/media/desktop_capture_device_unittest.cc',
702           ],
703           'dependencies': [
704             '../third_party/webrtc/modules/modules.gyp:desktop_capture',
705           ],
706         }],
707         # TODO(jrg): remove the OS=="android" section?
708         # http://crbug.com/113172
709         # Understand better how media_stream_ is tied into Chromium.
710         ['enable_webrtc==0 and OS=="android"', {
711           'sources/': [
712             ['exclude', '^renderer/media/media_stream_'],
713           ],
714         }],
715         ['input_speech==0', {
716           'sources/': [
717             ['exclude', '^browser/speech/'],
718           ]
719         }],
720         ['notifications==0', {
721            'sources!': [
722              'renderer/active_notification_tracker_unittest.cc',
723            ],
724         }],
725         ['OS=="linux"', {
726           'dependencies': [
727             '../build/linux/system.gyp:dbus',
728             '../dbus/dbus.gyp:dbus_test_support',
729           ],
730         }],
731         ['OS=="win" and win_use_allocator_shim==1', {
732           'dependencies': [
733             '../base/allocator/allocator.gyp:allocator',
734           ],
735         }],
736         ['OS=="win"', {
737           'dependencies': [
738             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
739           ],
740         }],
741         ['OS=="mac"', {
742           # These flags are needed to run the test on Mac.
743           # Search for comments about "xcode_settings" in chrome_tests.gypi.
744           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
745         }],
746         ['chromeos==1', {
747           'sources/': [
748             ['exclude', '^browser/renderer_host/gtk_key_bindings_handler_unittest.cc'],
749             ['exclude', '^browser/geolocation/wifi_data_provider_linux_unittest.cc'],
750           ],
751         }],
752         ['use_aura==1', {
753           'dependencies': [
754             '../ui/aura/aura.gyp:aura',
755           ],
756           'sources!': [
757             'browser/accessibility/browser_accessibility_win_unittest.cc',
758           ],
759         }],
760         ['OS == "android"', {
761           'sources': [
762             'browser/renderer_host/java/jni_helper_unittest.cc',
763           ],
764           'sources!': [
765             'browser/geolocation/network_location_provider_unittest.cc',
766             'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
767             'browser/geolocation/wifi_data_provider_common_unittest.cc',
768             'browser/geolocation/wifi_data_provider_linux_unittest.cc',
769             'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
770           ],
771         }],
772         ['OS != "android" and OS != "ios"', {
773           'dependencies': [
774             '../third_party/libvpx/libvpx.gyp:libvpx',
775           ],
776         }],
777         ['OS == "android" and gtest_target_type == "shared_library"', {
778           'dependencies': [
779             '../testing/android/native_test.gyp:native_test_native_code',
780           ],
781         }],
782         ['use_aura!=1 and OS!="win"', {
783           'sources!': [
784             'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
785           ],
786         }],
787         ['enable_webrtc==1 and google_tv==1', {
788           'sources': [
789             'renderer/media/rtc_video_decoder_factory_tv_unittest.cc',
790           ],
791         }],
792       ],
793     },
794   ],
795   'conditions': [
796     ['test_isolation_mode != "noop"', {
797       'targets': [
798         {
799           'target_name': 'content_unittests_run',
800           'type': 'none',
801           'dependencies': [
802             'content_unittests',
803           ],
804           'includes': [
805             '../build/isolate.gypi',
806             'content_unittests.isolate',
807           ],
808           'sources': [
809             'content_unittests.isolate',
810           ],
811         },
812       ],
813     }],
814     ['OS!="ios"', {
815       'targets': [
816         {
817           'target_name': 'content_perftests',
818           'type': '<(gtest_target_type)',
819           'defines!': ['CONTENT_IMPLEMENTATION'],
820           'dependencies': [
821             'content.gyp:content_common',
822             'test_support_content',
823             '../base/base.gyp:test_support_base',
824             '../cc/cc.gyp:cc',
825             '../skia/skia.gyp:skia',
826             '../testing/gtest.gyp:gtest',
827             '../testing/perf/perf_test.gyp:*',
828             '../ui/gfx/gfx.gyp:gfx',
829           ],
830           'include_dirs': [
831             '..',
832           ],
833           'sources': [
834             'common/cc_messages_perftest.cc',
835             'test/run_all_perftests.cc',
836           ],
837         },
838         {
839           'target_name': 'content_browsertests',
840           'type': '<(gtest_target_type)',
841           'dependencies': [
842             'content.gyp:content_common',
843             'content.gyp:content_gpu',
844             'content.gyp:content_plugin',
845             'content.gyp:content_renderer',
846             'content_resources.gyp:content_resources',
847             'content_shell_lib',
848             'content_shell_pak',
849             'test_support_content',
850             '../base/base.gyp:test_support_base',
851             '../gpu/gpu.gyp:gpu',
852             '../ipc/ipc.gyp:test_support_ipc',
853             '../media/media.gyp:media_test_support',
854             '../media/media.gyp:shared_memory_support',
855             '../net/net.gyp:net_test_support',
856             '../ppapi/ppapi_internal.gyp:ppapi_host',
857             '../ppapi/ppapi_internal.gyp:ppapi_ipc',
858             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
859             '../ppapi/ppapi_internal.gyp:ppapi_shared',
860             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
861             '../skia/skia.gyp:skia',
862             '../testing/gmock.gyp:gmock',
863             '../testing/gtest.gyp:gtest',
864             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
865             '../third_party/mesa/mesa.gyp:osmesa',
866             '../ui/gfx/gfx.gyp:gfx',
867             '../ui/gl/gl.gyp:gl',
868             '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
869             '../ui/snapshot/snapshot.gyp:snapshot',
870             '../ui/ui.gyp:ui',
871             '../ui/ui.gyp:ui_resources',
872             '../webkit/glue/webkit_glue.gyp:glue',
873             '../webkit/glue/webkit_glue.gyp:glue_child',
874             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
875           ],
876           'include_dirs': [
877             '..',
878             '<(SHARED_INTERMEDIATE_DIR)',  # Needed by encrypted_media_browsertest.cc
879           ],
880           'includes': [
881             'browser/gpu/test_support_gpu.gypi',
882           ],
883           'defines': [
884             'HAS_OUT_OF_PROC_TEST_RUNNER',
885           ],
886           'sources': [
887             'browser/accessibility/accessibility_win_browsertest.cc',
888             'browser/accessibility/cross_platform_accessibility_browsertest.cc',
889             'browser/accessibility/dump_accessibility_tree_browsertest.cc',
890             'browser/aura/image_transport_factory_browsertest.cc',
891             'browser/bookmarklet_browsertest.cc',
892             'browser/browser_plugin/browser_plugin_host_browsertest.cc',
893             'browser/browser_plugin/test_browser_plugin_embedder.cc',
894             'browser/browser_plugin/test_browser_plugin_embedder.h',
895             'browser/browser_plugin/test_browser_plugin_guest.cc',
896             'browser/browser_plugin/test_browser_plugin_guest.h',
897             'browser/browser_plugin/test_browser_plugin_guest_delegate.cc',
898             'browser/browser_plugin/test_browser_plugin_guest_delegate.h',
899             'browser/browser_plugin/test_browser_plugin_guest_manager.cc',
900             'browser/browser_plugin/test_browser_plugin_guest_manager.h',
901             'browser/child_process_security_policy_browsertest.cc',
902             'browser/database_browsertest.cc',
903             'browser/device_orientation/device_inertial_sensor_browsertest.cc',
904             'browser/devtools/renderer_overrides_handler_browsertest.cc',
905             'browser/dom_storage/dom_storage_browsertest.cc',
906             'browser/download/download_browsertest.cc',
907             'browser/download/drag_download_file_browsertest.cc',
908             'browser/download/mhtml_generation_browsertest.cc',
909             'browser/download/save_package_browsertest.cc',
910             'browser/fileapi/file_system_browsertest.cc',
911             'browser/gpu/compositor_util_browsertest.cc',
912             'browser/gpu/gpu_ipc_browsertests.cc',
913             'browser/indexed_db/indexed_db_browsertest.cc',
914             'browser/loader/resource_dispatcher_host_browsertest.cc',
915             'browser/media/encrypted_media_browsertest.cc',
916             'browser/media/media_browsertest.cc',
917             'browser/media/media_browsertest.h',
918             'browser/media/media_source_browsertest.cc',
919             'browser/media/webrtc_internals_browsertest.cc',
920             'browser/plugin_data_remover_impl_browsertest.cc',
921             'browser/plugin_browsertest.cc',
922             'browser/plugin_service_impl_browsertest.cc',
923             'browser/renderer_host/render_process_host_browsertest.cc',
924             'browser/renderer_host/render_view_host_browsertest.cc',
925             'browser/renderer_host/render_view_host_manager_browsertest.cc',
926             'browser/renderer_host/render_widget_host_browsertest.cc',
927             'browser/renderer_host/render_widget_host_view_browsertest.cc',
928             'browser/security_exploit_browsertest.cc',
929             'browser/session_history_browsertest.cc',
930             'browser/site_per_process_browsertest.cc',
931             'browser/speech/input_tag_speech_browsertest.cc',
932             'browser/speech/speech_recognition_browsertest.cc',
933             'browser/tracing/tracing_controller_browsertest.cc',
934             'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
935             'browser/web_contents/web_contents_impl_browsertest.cc',
936             'browser/web_contents/web_contents_view_aura_browsertest.cc',
937             'browser/webkit_browsertest.cc',
938             'browser/worker_host/test/worker_browsertest.cc',
939             'child/site_isolation_policy_browsertest.cc',
940             'common/gpu/client/context_provider_command_buffer_browsertest.cc',
941             'renderer/accessibility/renderer_accessibility_browsertest.cc',
942             'renderer/browser_plugin/browser_plugin_browsertest.cc',
943             'renderer/browser_plugin/browser_plugin_browsertest.h',
944             'renderer/browser_plugin/mock_browser_plugin.cc',
945             'renderer/browser_plugin/mock_browser_plugin.h',
946             'renderer/browser_plugin/mock_browser_plugin_manager.cc',
947             'renderer/browser_plugin/mock_browser_plugin_manager.h',
948             'renderer/cpp_bound_class_unittest.cc',
949             'renderer/dom_serializer_browsertest.cc',
950             'renderer/mouse_lock_dispatcher_browsertest.cc',
951             'renderer/pepper/mock_renderer_ppapi_host.cc',
952             'renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc',
953             'renderer/pepper/pepper_file_chooser_host_unittest.cc',
954             'renderer/pepper/pepper_graphics_2d_host_unittest.cc',
955             'renderer/pepper/pepper_url_request_unittest.cc',
956             'renderer/render_thread_impl_browsertest.cc',
957             'renderer/render_view_browsertest.cc',
958             'renderer/render_view_browsertest_mac.mm',
959             'renderer/render_widget_browsertest.cc',
960             'renderer/resource_fetcher_browsertest.cc',
961             'renderer/savable_resources_browsertest.cc',
962             'test/accessibility_browser_test_utils.cc',
963             'test/accessibility_browser_test_utils.h',
964             'test/content_browser_test.h',
965             'test/content_browser_test.cc',
966             'test/content_browser_test_utils.cc',
967             'test/content_browser_test_utils.h',
968             'test/content_browser_test_utils_mac.mm',
969             'test/content_browser_test_test.cc',
970             'test/content_test_launcher.cc',
971             'test/cpp_binding_example.cc',
972             'test/cpp_binding_example.h',
973             'test/webui_resource_browsertest.cc',
974           ],
975           'conditions': [
976             ['chromeos==0', {
977               'sources!': [
978                 'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
979               ],
980             }],
981             ['OS=="win"', {
982               'resource_include_dirs': [
983                 '<(SHARED_INTERMEDIATE_DIR)/webkit',
984               ],
985               'sources': [
986                 'shell/app/resource.h',
987                 'shell/app/shell.rc',
988                 # TODO:  It would be nice to have these pulled in
989                 # automatically from direct_dependent_settings in
990                 # their various targets (net.gyp:net_resources, etc.),
991                 # but that causes errors in other targets when
992                 # resulting .res files get referenced multiple times.
993                 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
994                 '<(SHARED_INTERMEDIATE_DIR)/webkit/blink_resources.rc',
995                 '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.rc',
996               ],
997               'dependencies': [
998                 '<(DEPTH)/net/net.gyp:net_resources',
999                 '<(DEPTH)/third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
1000                 '<(DEPTH)/third_party/isimpledom/isimpledom.gyp:isimpledom',
1001                 '<(DEPTH)/webkit/webkit_resources.gyp:webkit_strings',
1002                 '<(DEPTH)/webkit/webkit_resources.gyp:webkit_resources',
1003               ],
1004               'configurations': {
1005                 'Debug_Base': {
1006                   'msvs_settings': {
1007                     'VCLinkerTool': {
1008                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
1009                     },
1010                   },
1011                 },
1012               },
1013               # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1014               'msvs_disabled_warnings': [ 4267, ],
1015             }, {  # OS!="win"
1016               'sources!': [
1017                 'browser/accessibility/accessibility_win_browsertest.cc',
1018               ],
1019             }],
1020             ['OS=="win" and win_use_allocator_shim==1', {
1021               'dependencies': [
1022                 '../base/allocator/allocator.gyp:allocator',
1023               ],
1024             }],
1025             ['OS=="linux"', {
1026               'sources!': [
1027                 'browser/accessibility/dump_accessibility_tree_browsertest.cc',
1028               ],
1029             }],
1030             ['OS=="android"', {
1031               'sources': [
1032                 'shell/android/browsertests_apk/content_browser_tests_android.cc',
1033               ],
1034               'dependencies': [
1035                 'content_shell_jni_headers',
1036                 'content_shell_lib',
1037                 '../testing/android/native_test.gyp:native_test_util',
1038               ],
1039             }],
1040             ['OS=="mac"', {
1041               'dependencies': [
1042                 'content_shell',  # Needed for Content Shell.app's Helper.
1043               ],
1044               'sources': [
1045                 'renderer/external_popup_menu_browsertest.cc',
1046               ],
1047             }],
1048             ['use_aura==1', {
1049               'sources!': [
1050                 'browser/accessibility/accessibility_win_browsertest.cc',
1051                 'browser/plugin_browsertest.cc',
1052               ],
1053             }, {
1054               'sources/': [
1055                 ['exclude', '^browser/aura/'],
1056               ],
1057             }],
1058             ['use_aura==1 and OS!="win"', {
1059               'sources!': [
1060                 'browser/plugin_browsertest.cc',
1061               ],
1062             }],
1063             ['OS!="android" and OS!="ios"', {
1064               # npapi test plugin doesn't build on android or ios
1065               'dependencies': [
1066                 # Runtime dependencies
1067                 'copy_npapi_test_plugin',
1068               ],
1069             }],
1070             ['enable_webrtc==1', {
1071               'sources': [
1072                 'browser/media/webrtc_browsertest.cc',
1073               ],
1074             }],
1075             ['enable_plugins==0', {
1076               'sources/': [
1077                 ['exclude', '^renderer/pepper/'],
1078               ],
1079               'sources!': [
1080                 'browser/plugin_service_impl_browsertest.cc',
1081                 'browser/plugin_data_remover_impl_browsertest.cc',
1082               ],
1083             }],
1084             ['input_speech==0', {
1085               'sources/': [
1086                 ['exclude', '^browser/speech/'],
1087               ]
1088             }],
1089             ['branding=="Chrome"', {
1090               'sources!': [
1091                 # These tests depend on single process mode, which is disabled
1092                 # in official builds.
1093                 'renderer/dom_serializer_browsertest.cc',
1094                 'renderer/resource_fetcher_browsertest.cc',
1095                 'renderer/savable_resources_browsertest.cc',
1096               ],
1097             }],
1098           ],
1099         },
1100         {
1101           'target_name': 'content_gl_tests',
1102           'type': '<(gtest_target_type)',
1103           'dependencies': [
1104             'content.gyp:content_common',
1105             'test_support_content',
1106             '../base/base.gyp:test_support_base',
1107             '../gpu/gpu.gyp:command_buffer_common',
1108             '../testing/gtest.gyp:gtest',
1109             '../ui/gfx/gfx.gyp:gfx',
1110             '../ui/gl/gl.gyp:gl',
1111             '../ui/ui.gyp:ui',
1112             '../third_party/WebKit/public/blink.gyp:blink',
1113             # The following two dependencies provide the missing
1114             # symbol HeapProfilerStart in Linux component builds.
1115             '../webkit/glue/webkit_glue.gyp:glue',
1116             '../webkit/glue/webkit_glue.gyp:glue_child',
1117           ],
1118           'include_dirs': [
1119             '..',
1120           ],
1121           'sources': [
1122             'common/gpu/client/gl_helper_unittests.cc',
1123             'common/gpu/client/gpu_in_process_context_tests.cc',
1124           ],
1125           'conditions': [
1126             ['OS=="android"', {
1127               'dependencies': [
1128                 '../testing/android/native_test.gyp:native_test_native_code',
1129               ],
1130             }],
1131           ],
1132         },
1133         {
1134           'target_name': 'content_gl_benchmark',
1135           'type': '<(gtest_target_type)',
1136           'dependencies': [
1137             'content.gyp:content_common',
1138             'test_support_content',
1139             '../base/base.gyp:test_support_base',
1140             '../testing/gtest.gyp:gtest',
1141             '../ui/gfx/gfx.gyp:gfx',
1142             '../ui/gl/gl.gyp:gl',
1143             '../ui/ui.gyp:ui',
1144             '../third_party/WebKit/public/blink.gyp:blink',
1145             # The following two dependencies provide the missing
1146             # symbol HeapProfilerStart in Linux component builds.
1147             '../webkit/glue/webkit_glue.gyp:glue',
1148             '../webkit/glue/webkit_glue.gyp:glue_child',
1149           ],
1150           'include_dirs': [
1151             '..',
1152           ],
1153           'sources': [
1154             'common/gpu/client/gl_helper_benchmark.cc',
1155           ],
1156         },
1157         {
1158           'target_name': 'content_webkit_unit_test_support',
1159           'type': 'static_library',
1160           'dependencies': [
1161             'test_support_content',
1162           ],
1163           'include_dirs': [
1164             '..',
1165           ],
1166           'sources': [
1167             'test/webkit_unit_test_support.cc',
1168             'test/webkit_unit_test_support.h',
1169           ],
1170         },
1171       ],
1172     }],
1173     ['chromeos==1 or OS=="win" or OS=="android"', {
1174       'targets': [
1175           {
1176             'target_name': 'video_decode_accelerator_unittest',
1177             'type': '<(gtest_target_type)',
1178             'dependencies': [
1179               'content.gyp:content',
1180               '../base/base.gyp:base',
1181               '../testing/gtest.gyp:gtest',
1182               '../media/media.gyp:media',
1183               '../ui/gl/gl.gyp:gl',
1184               '../ui/gfx/gfx.gyp:gfx',
1185               '../ui/ui.gyp:ui',
1186             ],
1187             'include_dirs': [
1188               '<(DEPTH)/third_party/khronos',
1189             ],
1190             'sources': [
1191               'common/gpu/media/android_video_decode_accelerator_unittest.cc',
1192               'common/gpu/media/rendering_helper.h',
1193               'common/gpu/media/rendering_helper.cc',
1194               'common/gpu/media/video_accelerator_unittest_helpers.h',
1195               'common/gpu/media/video_decode_accelerator_unittest.cc',
1196             ],
1197             'conditions': [
1198               ['OS=="android"', {
1199                 'sources/': [
1200                   ['exclude', '^common/gpu/media/rendering_helper.h'],
1201                   ['exclude', '^common/gpu/media/rendering_helper.cc'],
1202                   ['exclude', '^common/gpu/media/video_decode_accelerator_unittest.cc'],
1203                 ],
1204                 'dependencies': [
1205                   '../media/media.gyp:player_android',
1206                   '../testing/gmock.gyp:gmock',
1207                   '../testing/android/native_test.gyp:native_test_native_code',
1208                   '../gpu/gpu.gyp:gpu_unittest_utils',
1209                 ],
1210               }, { # OS!="android"
1211                 'sources/': [
1212                   ['exclude', '^common/gpu/media/android_video_decode_accelerator_unittest.cc'],
1213                 ],
1214               }],
1215               ['OS=="win"', {
1216                 'dependencies': [
1217                   '../third_party/angle_dx11/src/build_angle.gyp:libEGL',
1218                   '../third_party/angle_dx11/src/build_angle.gyp:libGLESv2',
1219                 ],
1220               }],
1221               ['(OS=="win" and win_use_allocator_shim==1) or '
1222                '(os_posix == 1 and OS != "android" and '
1223                ' linux_use_tcmalloc==1)', {
1224                 'dependencies': [
1225                   '../base/allocator/allocator.gyp:allocator',
1226                 ],
1227               }],
1228               ['target_arch != "arm" and (OS=="linux" or chromeos == 1)', {
1229                 'include_dirs': [
1230                   '<(DEPTH)/third_party/libva',
1231                 ],
1232               }],
1233             ],
1234             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1235             'msvs_disabled_warnings': [ 4267, ],
1236           },
1237         ]
1238     }],
1239     ['chromeos==1 and target_arch == "arm"', {
1240       'targets': [
1241         {
1242           'target_name': 'video_encode_accelerator_unittest',
1243           'type': 'executable',
1244           'dependencies': [
1245             'content.gyp:content',
1246             '../base/base.gyp:base',
1247             '../testing/gtest.gyp:gtest',
1248             '../media/media.gyp:media',
1249               '../ui/gl/gl.gyp:gl',
1250               '../ui/gfx/gfx.gyp:gfx',
1251               '../ui/ui.gyp:ui',
1252           ],
1253           'sources': [
1254             'common/gpu/media/video_accelerator_unittest_helpers.h',
1255             'common/gpu/media/video_encode_accelerator_unittest.cc',
1256           ],
1257         },
1258       ]
1259     }],
1260     ['chromeos == 1 or OS == "linux"', {
1261       'targets': [
1262         {
1263           'target_name': 'h264_parser_unittest',
1264           'type': 'executable',
1265           'dependencies': [
1266             'content.gyp:content_common',
1267             '../base/base.gyp:base',
1268             '../testing/gtest.gyp:gtest',
1269           ],
1270           'sources': [
1271             'common/gpu/media/h264_bit_reader_unittest.cc',
1272             'common/gpu/media/h264_parser_unittest.cc',
1273           ],
1274           'conditions': [
1275             ['linux_use_tcmalloc==1', {
1276               'dependencies': [
1277                 '../base/allocator/allocator.gyp:allocator',
1278               ],
1279             }],
1280           ],
1281         }
1282       ],
1283     }],
1284     # Special target to wrap a gtest_target_type==shared_library
1285     # content_unittests into an android apk for execution.
1286     # See base.gyp for TODO(jrg)s about this strategy.
1287     ['OS == "android" and gtest_target_type == "shared_library"', {
1288       'targets': [
1289         {
1290           'target_name': 'content_gl_tests_apk',
1291           'type': 'none',
1292           'dependencies': [
1293             'content_gl_tests',
1294             'content_java_test_support',
1295           ],
1296           'variables': {
1297             'test_suite_name': 'content_gl_tests',
1298             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_gl_tests<(SHARED_LIB_SUFFIX)',
1299           },
1300           'includes': [
1301             '../build/apk_test.gypi',
1302           ],
1303         },
1304         {
1305           'target_name': 'content_unittests_apk',
1306           'type': 'none',
1307           'dependencies': [
1308             'content.gyp:content_java',
1309             'content_unittests',
1310           ],
1311           'variables': {
1312             'test_suite_name': 'content_unittests',
1313             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_unittests<(SHARED_LIB_SUFFIX)',
1314           },
1315           'includes': [ '../build/apk_test.gypi' ],
1316         },
1317         {
1318           'target_name': 'content_browsertests_apk',
1319           'type': 'none',
1320           'dependencies': [
1321             'content.gyp:content_java',
1322             'content_browsertests',
1323             'content_java_test_support',
1324             'content_shell_java',
1325           ],
1326           'variables': {
1327             'apk_name': 'content_browsertests',
1328             'java_in_dir': 'shell/android/browsertests_apk',
1329             'resource_dir': 'shell/android/browsertests_apk/res',
1330             'native_lib_target': 'libcontent_browsertests',
1331             'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'],
1332             'asset_location': '<(ant_build_out)/content_shell/assets',
1333           },
1334           'includes': [ '../build/java_apk.gypi' ],
1335         },
1336         {
1337           'target_name': 'content_linker_test_apk',
1338           'type': 'none',
1339           'dependencies': [
1340             'content_android_linker_test',
1341             'content.gyp:content_java',
1342             'content_shell_java',
1343           ],
1344           'variables': {
1345             'apk_name': 'ContentLinkerTest',
1346             'java_in_dir': 'shell/android/linker_test_apk',
1347             'resource_dir': 'shell/android/linker_test_apk/res',
1348             'native_lib_target': 'libcontent_android_linker_test',
1349             'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'],
1350             'asset_location': '<(ant_build_out)/content_shell/assets',
1351             'use_content_linker': '1',
1352             'enable_content_linker_tests': '1',
1353           },
1354           'includes': [ '../build/java_apk.gypi' ],
1355         },
1356         {
1357           'target_name': 'content_android_linker_test',
1358           'type': 'shared_library',
1359           'defines!': ['CONTENT_IMPLEMENTATION'],
1360           'dependencies': [
1361             'content_android_linker_test_jni_headers',
1362             'content_shell_lib',
1363             # Required to include "content/public/browser/android/compositor.h"
1364             # in content_linker_test_android.cc :-(
1365             '../skia/skia.gyp:skia',
1366           ],
1367           'sources': [
1368             'shell/android/linker_test_apk/content_linker_test_android.cc',
1369             'shell/android/linker_test_apk/content_linker_test_linker_tests.cc',
1370           ],
1371         },
1372         {
1373           'target_name': 'content_android_linker_test_jni_headers',
1374           'type': 'none',
1375           'sources': [
1376             'shell/android/linker_test_apk/src/org/chromium/content_linker_test_apk/LinkerTests.java',
1377           ],
1378           'direct_dependent_settings': {
1379             'include_dirs': [
1380               '<(SHARED_INTERMEDIATE_DIR)/content/shell',
1381             ],
1382           },
1383           'variables': {
1384             'jni_gen_package': 'content/shell',
1385           },
1386           'includes': [ '../build/jni_generator.gypi' ],
1387         },
1388         {
1389           'target_name': 'video_decode_accelerator_unittest_apk',
1390           'type': 'none',
1391           'dependencies': [
1392             'video_decode_accelerator_unittest',
1393           ],
1394           'variables': {
1395             'test_suite_name': 'video_decode_accelerator_unittest',
1396             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_unittests<(SHARED_LIB_SUFFIX)',
1397           },
1398           'includes': [ '../build/apk_test.gypi' ],
1399         },
1400       ],
1401     }],
1402     ['OS == "android"', {
1403       'targets': [
1404         {
1405           'target_name': 'test_support_content_jni_headers',
1406           'type': 'none',
1407           'sources': [
1408             'public/test/android/javatests/src/org/chromium/content/browser/test/NestedSystemMessageHandler.java',
1409           ],
1410           'direct_dependent_settings': {
1411             'include_dirs': [
1412               '<(SHARED_INTERMEDIATE_DIR)/content/public/test',
1413             ],
1414           },
1415           'variables': {
1416             'jni_gen_package': 'content/public/test',
1417           },
1418           'includes': [ '../build/jni_generator.gypi' ],
1419         },
1420         {
1421           'target_name': 'content_java_test_support',
1422           'type': 'none',
1423           'dependencies': [
1424             '../base/base.gyp:base',
1425             '../base/base.gyp:base_java_test_support',
1426             'content.gyp:content_common',
1427             'content.gyp:content_java',
1428           ],
1429           'variables': {
1430             'java_in_dir': '../content/public/test/android/javatests',
1431           },
1432           'includes': [ '../build/java.gypi' ],
1433         },
1434         {
1435           'target_name': 'content_shell_test_apk',
1436           'type': 'none',
1437           'dependencies': [
1438             'content_java_test_support',
1439             'content_shell_apk_java',
1440             'content.gyp:content_java',
1441             '../base/base.gyp:base_java',
1442             '../base/base.gyp:base_javatests',
1443             '../base/base.gyp:base_java_test_support',
1444             '../media/media.gyp:media_java',
1445             '../media/media.gyp:media_test_support',
1446             '../net/net.gyp:net_java',
1447             '../net/net.gyp:net_javatests',
1448           ],
1449           'variables': {
1450             'apk_name': 'ContentShellTest',
1451             'java_in_dir': 'shell/android/javatests',
1452             'resource_dir': 'shell/android/shell_apk/res',
1453             'additional_src_dirs': ['public/android/javatests/',],
1454             'is_test_apk': 1,
1455           },
1456           'includes': [ '../build/java_apk.gypi' ],
1457         },
1458       ],
1459     }],
1460     ['OS!="android" and OS!="ios"', {
1461       # npapi test plugin doesn't build on android or ios
1462       'targets': [
1463         {
1464           'target_name': 'npapi_test_plugin',
1465           'type': 'loadable_module',
1466           'variables': {
1467             'chromium_code': 1,
1468           },
1469           'mac_bundle': 1,
1470           'dependencies': [
1471             '<(DEPTH)/base/base.gyp:base',
1472             '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
1473             '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
1474           ],
1475           'sources': [
1476             'test/plugin/npapi_constants.cc',
1477             'test/plugin/npapi_constants.h',
1478             'test/plugin/npapi_test.cc',
1479             'test/plugin/npapi_test.def',
1480             'test/plugin/npapi_test.rc',
1481             'test/plugin/plugin_arguments_test.cc',
1482             'test/plugin/plugin_arguments_test.h',
1483             'test/plugin/plugin_client.cc',
1484             'test/plugin/plugin_client.h',
1485             'test/plugin/plugin_create_instance_in_paint.cc',
1486             'test/plugin/plugin_create_instance_in_paint.h',
1487             'test/plugin/plugin_delete_plugin_in_deallocate_test.cc',
1488             'test/plugin/plugin_delete_plugin_in_deallocate_test.h',
1489             'test/plugin/plugin_delete_plugin_in_stream_test.cc',
1490             'test/plugin/plugin_delete_plugin_in_stream_test.h',
1491             'test/plugin/plugin_execute_stream_javascript.cc',
1492             'test/plugin/plugin_execute_stream_javascript.h',
1493             'test/plugin/plugin_get_javascript_url_test.cc',
1494             'test/plugin/plugin_get_javascript_url_test.h',
1495             'test/plugin/plugin_get_javascript_url2_test.cc',
1496             'test/plugin/plugin_get_javascript_url2_test.h',
1497             'test/plugin/plugin_geturl_test.cc',
1498             'test/plugin/plugin_geturl_test.h',
1499             'test/plugin/plugin_javascript_open_popup.cc',
1500             'test/plugin/plugin_javascript_open_popup.h',
1501             'test/plugin/plugin_new_fails_test.cc',
1502             'test/plugin/plugin_new_fails_test.h',
1503             'test/plugin/plugin_npobject_identity_test.cc',
1504             'test/plugin/plugin_npobject_identity_test.h',
1505             'test/plugin/plugin_npobject_lifetime_test.cc',
1506             'test/plugin/plugin_npobject_lifetime_test.h',
1507             'test/plugin/plugin_npobject_proxy_test.cc',
1508             'test/plugin/plugin_npobject_proxy_test.h',
1509             'test/plugin/plugin_request_read_test.h',
1510             'test/plugin/plugin_request_read_test.cc',
1511             'test/plugin/plugin_schedule_timer_test.cc',
1512             'test/plugin/plugin_schedule_timer_test.h',
1513             'test/plugin/plugin_setup_test.cc',
1514             'test/plugin/plugin_setup_test.h',
1515             'test/plugin/plugin_test.cc',
1516             'test/plugin/plugin_test.h',
1517             'test/plugin/plugin_test_factory.h',
1518             'test/plugin/plugin_thread_async_call_test.cc',
1519             'test/plugin/plugin_thread_async_call_test.h',
1520             'test/plugin/plugin_windowed_test.cc',
1521             'test/plugin/plugin_windowed_test.h',
1522             'test/plugin/plugin_private_test.cc',
1523             'test/plugin/plugin_private_test.h',
1524             'test/plugin/plugin_test_factory.cc',
1525             'test/plugin/plugin_window_size_test.cc',
1526             'test/plugin/plugin_window_size_test.h',
1527             'test/plugin/plugin_windowless_test.cc',
1528             'test/plugin/plugin_windowless_test.h',
1529             'test/plugin/resource.h',
1530           ],
1531           'include_dirs': [
1532             '../..',
1533           ],
1534           'xcode_settings': {
1535             'INFOPLIST_FILE': '<(DEPTH)/content/test/plugin/Info.plist',
1536           },
1537           'conditions': [
1538             ['OS!="win"', {
1539               'sources!': [
1540                 # TODO(port):  Port these.
1541                 # plugin_npobject_lifetime_test.cc has win32-isms
1542                 #   (HWND, CALLBACK).
1543                 'test/plugin/plugin_npobject_lifetime_test.cc',
1544                  # The window APIs are necessarily platform-specific.
1545                 'test/plugin/plugin_window_size_test.cc',
1546                 'test/plugin/plugin_windowed_test.cc',
1547                  # Seems windows specific.
1548                 'test/plugin/plugin_create_instance_in_paint.cc',
1549                 'test/plugin/plugin_create_instance_in_paint.h',
1550                  # windows-specific resources
1551                 'test/plugin/npapi_test.def',
1552                 'test/plugin/npapi_test.rc',
1553               ],
1554             }],
1555             ['OS=="mac"', {
1556               'product_extension': 'plugin',
1557               'link_settings': {
1558                 'libraries': [
1559                   '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
1560                 ],
1561               },
1562             }],
1563             ['os_posix == 1 and OS != "mac" and (target_arch == "x64" or target_arch == "arm")', {
1564               # Shared libraries need -fPIC on x86-64
1565               'cflags': ['-fPIC']
1566             }],
1567           ],
1568         },
1569         {
1570           'target_name': 'copy_npapi_test_plugin',
1571           'type': 'none',
1572           'dependencies': [
1573             'npapi_test_plugin',
1574           ],
1575           'conditions': [
1576             ['OS=="win"', {
1577               'copies': [
1578                 {
1579                   'destination': '<(PRODUCT_DIR)/plugins',
1580                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.dll'],
1581                 },
1582               ],
1583             }],
1584             ['OS=="mac"', {
1585               'copies': [
1586                 {
1587                   'destination': '<(PRODUCT_DIR)/plugins/',
1588                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.plugin'],
1589                 },
1590               ]
1591             }],
1592             ['os_posix == 1 and OS != "mac"', {
1593               'copies': [
1594                 {
1595                   'destination': '<(PRODUCT_DIR)/plugins',
1596                   'files': ['<(PRODUCT_DIR)/libnpapi_test_plugin.so'],
1597                 },
1598               ],
1599             }],
1600           ],
1601         },
1602       ],
1603     }],
1604   ],
1605 }