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.
8 # GN version: //ppapi:ppapi_tests
9 'target_name': 'ppapi_tests',
10 'type': 'loadable_module',
15 'GL_GLEXT_PROTOTYPES',
18 '<@(test_common_source_files)',
19 '<@(test_trusted_source_files)',
22 'ppapi.gyp:ppapi_cpp',
23 'ppapi_internal.gyp:ppapi_shared',
27 'destination': '<(PRODUCT_DIR)',
29 # Keep 'test_case.html.mock-http-headers' with 'test_case.html'.
30 'tests/test_case.html',
31 'tests/test_case.html.mock-http-headers',
32 'tests/test_page.css',
33 'tests/ppapi_nacl_tests_newlib.nmf',
37 'destination': '<(PRODUCT_DIR)/test_url_loader_data',
39 'tests/test_url_loader_data/hello.txt',
45 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)chrome<(EXECUTABLE_SUFFIX)',
46 '--enable-pepper-testing',
47 '--register-pepper-plugins=$(TargetPath);application/x-ppapi-tests',
48 'file://$(ProjectDir)/tests/test_case.html?testcase=',
54 '_CRT_SECURE_NO_DEPRECATE',
55 '_CRT_NONSTDC_NO_WARNINGS',
56 '_CRT_NONSTDC_NO_DEPRECATE',
57 '_SCL_SECURE_NO_DEPRECATE',
62 'product_name': 'ppapi_tests',
63 'product_extension': 'plugin',
66 # TODO(dmichael): Figure out what is wrong with the script on Windows and add
67 # it as an automated action.
70 # 'action_name': 'generate_ppapi_include_tests',
73 # 'tests/test_c_includes.c',
74 # 'tests/test_cc_includes.cc',
77 # '<!@(python generate_ppapi_include_tests.py)',
83 # GN version: //ppapi/proxy:test_support
84 # //ppapi/shared_impl:test_support
85 'target_name': 'ppapi_unittest_shared',
86 'type': 'static_library',
90 '../base/base.gyp:test_support_base',
92 '../ipc/ipc.gyp:test_support_ipc',
93 '../testing/gmock.gyp:gmock',
94 '../testing/gtest.gyp:gtest',
97 # Note: sources list duplicated in GN build.
98 'proxy/ppapi_proxy_test.cc',
99 'proxy/ppapi_proxy_test.h',
100 'proxy/resource_message_test_sink.cc',
101 'proxy/resource_message_test_sink.h',
102 'shared_impl/test_globals.cc',
103 'shared_impl/test_globals.h',
104 'shared_impl/unittest_utils.cc',
105 'shared_impl/unittest_utils.h',
110 # GN version: //ppapi:ppapi_perftests
111 'target_name': 'ppapi_perftests',
112 'type': 'executable',
119 'ppapi_unittest_shared',
120 '../base/base.gyp:test_support_base',
121 '../testing/gtest.gyp:gtest',
124 'proxy/ppapi_perftests.cc',
125 'proxy/ppp_messaging_proxy_perftest.cc',
128 # See http://crbug.com/162998#c4 for why this is needed.
129 ['OS=="linux" and use_allocator!="none"', {
131 '../base/allocator/allocator.gyp:allocator',
137 # GN version: //ppapi:ppapi_unittests
138 'target_name': 'ppapi_unittests',
139 'type': 'executable',
147 'ppapi_unittest_shared',
148 '../base/base.gyp:run_all_unittests',
149 '../base/base.gyp:test_support_base',
150 '../gpu/gpu.gyp:gpu_ipc',
151 '../ipc/ipc.gyp:ipc',
152 '../ipc/ipc.gyp:test_support_ipc',
153 '../media/media.gyp:shared_memory_support',
154 '../testing/gmock.gyp:gmock',
155 '../testing/gtest.gyp:gtest',
156 '../ui/surface/surface.gyp:surface',
159 # Note: sources list duplicated in GN build.
160 'host/resource_message_filter_unittest.cc',
161 'proxy/device_enumeration_resource_helper_unittest.cc',
162 'proxy/file_chooser_resource_unittest.cc',
163 'proxy/file_system_resource_unittest.cc',
164 'proxy/flash_resource_unittest.cc',
165 'proxy/interface_list_unittest.cc',
166 'proxy/mock_resource.cc',
167 'proxy/mock_resource.h',
168 'proxy/nacl_message_scanner_unittest.cc',
169 'proxy/pdf_resource_unittest.cc',
170 'proxy/plugin_dispatcher_unittest.cc',
171 'proxy/plugin_resource_tracker_unittest.cc',
172 'proxy/plugin_var_tracker_unittest.cc',
173 'proxy/ppb_var_unittest.cc',
174 'proxy/ppp_instance_private_proxy_unittest.cc',
175 'proxy/ppp_instance_proxy_unittest.cc',
176 'proxy/ppp_messaging_proxy_unittest.cc',
177 'proxy/printing_resource_unittest.cc',
178 'proxy/raw_var_data_unittest.cc',
179 'proxy/serialized_var_unittest.cc',
180 'proxy/talk_resource_unittest.cc',
181 'proxy/video_decoder_resource_unittest.cc',
182 'proxy/video_encoder_resource_unittest.cc',
183 'proxy/websocket_resource_unittest.cc',
184 'shared_impl/media_stream_audio_track_shared_unittest.cc',
185 'shared_impl/media_stream_buffer_manager_unittest.cc',
186 'shared_impl/media_stream_video_track_shared_unittest.cc',
187 'shared_impl/proxy_lock_unittest.cc',
188 'shared_impl/resource_tracker_unittest.cc',
189 'shared_impl/thread_aware_callback_unittest.cc',
190 'shared_impl/time_conversion_unittest.cc',
191 'shared_impl/tracked_callback_unittest.cc',
192 'shared_impl/var_tracker_unittest.cc',
195 [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
197 [ 'use_allocator!="none"', {
199 '../base/allocator/allocator.gyp:allocator',
207 'target_name': 'ppapi_example_skeleton',
208 'suppress_wildcard': 1,
210 'direct_dependent_settings': {
211 'product_name': '>(_target_name)',
213 ['os_posix==1 and OS!="mac"', {
214 'cflags': ['-fvisibility=hidden'],
215 'type': 'shared_library',
218 'type': 'shared_library',
221 'type': 'loadable_module',
223 'product_extension': 'plugin',
226 # Not to strip important symbols by -Wl,-dead_strip.
227 '-Wl,-exported_symbol,_PPP_GetInterface',
228 '-Wl,-exported_symbol,_PPP_InitializeModule',
229 '-Wl,-exported_symbol,_PPP_ShutdownModule'
236 # GN version: //ppapi/examples/mouse_cursor
237 'target_name': 'ppapi_example_mouse_cursor',
239 'ppapi_example_skeleton',
240 'ppapi.gyp:ppapi_cpp',
243 'examples/mouse_cursor/mouse_cursor.cc',
247 # GN version: //ppapi/examples/mouse_lock
248 'target_name': 'ppapi_example_mouse_lock',
250 'ppapi_example_skeleton',
251 'ppapi.gyp:ppapi_cpp',
254 'examples/mouse_lock/mouse_lock.cc',
259 # GN version: //ppapi/examples/gamepad
260 'target_name': 'ppapi_example_gamepad',
262 'ppapi_example_skeleton',
263 'ppapi.gyp:ppapi_cpp',
266 'examples/gamepad/gamepad.cc',
271 # GN version: //ppapi/examples/stub:c_stub
272 'target_name': 'ppapi_example_c_stub',
274 'ppapi_example_skeleton',
278 'examples/stub/stub.c',
282 # GN version: //ppapi/examples/stub:cc_stub
283 'target_name': 'ppapi_example_cc_stub',
285 'ppapi_example_skeleton',
286 'ppapi.gyp:ppapi_cpp',
289 'examples/stub/stub.cc',
293 # GN version: //ppapi/examples/crxfs
294 'target_name': 'ppapi_example_crxfs',
296 'ppapi_example_skeleton',
297 'ppapi.gyp:ppapi_cpp',
300 'examples/crxfs/crxfs.cc',
304 # GN version: //ppapi/examples/audio
305 'target_name': 'ppapi_example_audio',
307 'ppapi_example_skeleton',
308 'ppapi.gyp:ppapi_cpp',
311 'examples/audio/audio.cc',
315 # GN version: //ppapi/examples/audio_input
316 'target_name': 'ppapi_example_audio_input',
318 'ppapi_example_skeleton',
319 'ppapi.gyp:ppapi_cpp',
322 'examples/audio_input/audio_input.cc',
326 # GN version: //ppapi/examples/file_chooser
327 'target_name': 'ppapi_example_file_chooser',
329 'ppapi_example_skeleton',
330 'ppapi.gyp:ppapi_cpp',
333 'examples/file_chooser/file_chooser.cc',
337 # GN version: //ppapi/examples/2d:graphics_2d
338 'target_name': 'ppapi_example_graphics_2d',
340 'ppapi_example_skeleton',
344 'examples/2d/graphics_2d_example.c',
348 # GN version: //ppapi/examples/ime
349 'target_name': 'ppapi_example_ime',
351 'ppapi_example_skeleton',
352 'ppapi.gyp:ppapi_cpp',
355 'examples/ime/ime.cc',
359 # GN version: //ppapi/examples/2d:paint_manager
360 'target_name': 'ppapi_example_paint_manager',
362 'ppapi_example_skeleton',
363 'ppapi.gyp:ppapi_cpp',
366 'examples/2d/paint_manager_example.cc',
370 # GN version: //ppapi/examples/input
371 'target_name': 'ppapi_example_input',
373 'ppapi_example_skeleton',
374 'ppapi.gyp:ppapi_cpp',
377 'examples/input/pointer_event_input.cc',
381 # GN version: //ppapi/examples/scripting
382 'target_name': 'ppapi_example_post_message',
384 'ppapi_example_skeleton',
385 'ppapi.gyp:ppapi_cpp',
388 'examples/scripting/post_message.cc',
392 # GN version: //ppapi/examples/scaling
393 'target_name': 'ppapi_example_scaling',
395 'ppapi_example_skeleton',
396 'ppapi.gyp:ppapi_cpp',
399 'examples/scaling/scaling.cc',
403 # GN version: //ppapi/examples/2d:scroll
404 'target_name': 'ppapi_example_scroll',
406 'ppapi_example_skeleton',
407 'ppapi.gyp:ppapi_cpp',
410 'examples/2d/scroll.cc',
414 # GN version: //ppapi/examples/font
415 'target_name': 'ppapi_example_simple_font',
417 'ppapi_example_skeleton',
418 'ppapi.gyp:ppapi_cpp',
421 'examples/font/simple_font.cc',
425 # GN version: //ppapi/examples/threading
426 'target_name': 'ppapi_example_threading',
428 'ppapi_example_skeleton',
429 'ppapi.gyp:ppapi_cpp',
432 'examples/threading/threading.cc',
436 # GN version: //ppapi/examples/url_loader:streaming
437 'target_name': 'ppapi_example_url_loader',
439 'ppapi_example_skeleton',
440 'ppapi.gyp:ppapi_cpp',
443 'examples/url_loader/streaming.cc',
447 # GN version: //ppapi/examples/url_loader:file
448 'target_name': 'ppapi_example_url_loader_file',
450 'ppapi_example_skeleton',
451 'ppapi.gyp:ppapi_cpp',
454 'examples/url_loader/stream_to_file.cc',
458 # GN version: //ppapi/examples/gles2
459 'target_name': 'ppapi_example_gles2',
461 'ppapi_example_skeleton',
462 'ppapi.gyp:ppapi_cpp',
463 'ppapi.gyp:ppapi_gles2',
469 'examples/gles2/gles2.cc',
473 # GN version: //ppapi/examples/video_decode:stable
474 'target_name': 'ppapi_example_video_decode',
476 'ppapi_example_skeleton',
477 'ppapi.gyp:ppapi_cpp',
478 'ppapi.gyp:ppapi_gles2',
484 'examples/video_decode/testdata.h',
485 'examples/video_decode/video_decode.cc',
489 # GN version: //ppapi/examples/video_decode:dev
490 'target_name': 'ppapi_example_video_decode_dev',
492 'ppapi_example_skeleton',
493 'ppapi.gyp:ppapi_cpp',
494 'ppapi.gyp:ppapi_gles2',
500 'examples/video_decode/testdata.h',
501 'examples/video_decode/video_decode_dev.cc',
505 'target_name': 'ppapi_example_video_encode',
507 'ppapi_example_skeleton',
508 'ppapi.gyp:ppapi_cpp',
511 'examples/video_encode/video_encode.cc',
515 # GN version: //ppapi/example/video_capture
516 'target_name': 'ppapi_example_vc',
518 'ppapi_example_skeleton',
519 'ppapi.gyp:ppapi_cpp',
520 'ppapi.gyp:ppapi_gles2',
526 'examples/video_capture/video_capture.cc',
530 # GN version: //ppapi/examples/video_effects
531 'target_name': 'ppapi_example_video_effects',
533 'ppapi_example_skeleton',
534 'ppapi.gyp:ppapi_cpp',
537 'examples/video_effects/video_effects.cc',
541 # GN version: //ppapi/examples/enumerate_devices
542 'target_name': 'ppapi_example_enumerate_devices',
544 'ppapi_example_skeleton',
545 'ppapi.gyp:ppapi_cpp',
548 'examples/enumerate_devices/enumerate_devices.cc',
552 # GN version: //ppapi/examples/flash_topmost
553 'target_name': 'ppapi_example_flash_topmost',
555 'ppapi_example_skeleton',
556 'ppapi.gyp:ppapi_cpp',
559 'examples/flash_topmost/flash_topmost.cc',
563 # GN version: //ppapi/examples/printing
564 'target_name': 'ppapi_example_printing',
566 'ppapi_example_skeleton',
567 'ppapi.gyp:ppapi_cpp',
570 'examples/printing/printing.cc',
574 # GN version: //ppapi/examples/media_stream_audio
575 'target_name': 'ppapi_example_media_stream_audio',
577 'ppapi_example_skeleton',
578 'ppapi.gyp:ppapi_cpp',
581 'examples/media_stream_audio/media_stream_audio.cc',
585 # GN version: //ppapi/examples/media_stream_video
586 'target_name': 'ppapi_example_media_stream_video',
588 'ppapi_example_skeleton',
589 'ppapi.gyp:ppapi_cpp',
590 'ppapi.gyp:ppapi_gles2',
596 'examples/media_stream_video/media_stream_video.cc',
600 # GN version: //ppapi/examples/gles2_spinning_cube
601 'target_name': 'ppapi_example_gles2_spinning_cube',
603 'ppapi_example_skeleton',
604 'ppapi.gyp:ppapi_cpp',
605 'ppapi.gyp:ppapi_gles2',
611 'examples/gles2_spinning_cube/gles2_spinning_cube.cc',
612 'examples/gles2_spinning_cube/spinning_cube.cc',
613 'examples/gles2_spinning_cube/spinning_cube.h',
617 # GN version: //ppapi/examples/compositor
618 'target_name': 'ppapi_example_compositor',
620 'ppapi_example_skeleton',
621 'ppapi.gyp:ppapi_cpp',
622 'ppapi.gyp:ppapi_gles2',
628 'examples/compositor/compositor.cc',
629 'examples/compositor/spinning_cube.cc',
630 'examples/compositor/spinning_cube.h',
633 # Adding a new PPAPI example? Don't forget to update the GN build.
634 # See //ppapi/examples/BUILD.gn