Port Android relocation packer to chromium build
[chromium-blink-merge.git] / ppapi / ppapi_tests.gypi
blob000284362652554b2ddb79b56019c65ee54b6b34
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'targets': [
7     {
8       # GN version: //ppapi:ppapi_tests
9       'target_name': 'ppapi_tests',
10       'type': 'loadable_module',
11       'include_dirs': [
12         'lib/gl/include',
13       ],
14       'defines': [
15         'GL_GLEXT_PROTOTYPES',
16       ],
17       'sources': [
18         '<@(test_common_source_files)',
19         '<@(test_trusted_source_files)',
20       ],
21       'dependencies': [
22         'ppapi.gyp:ppapi_cpp',
23         'ppapi_internal.gyp:ppapi_shared',
24       ],
25       'copies': [
26         {
27           'destination': '<(PRODUCT_DIR)',
28           'files': [
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',
34           ],
35         },
36         {
37           'destination': '<(PRODUCT_DIR)/test_url_loader_data',
38           'files': [
39             'tests/test_url_loader_data/hello.txt',
40           ],
41         },
42       ],
43       'run_as': {
44         'action': [
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=',
49         ],
50       },
51       'conditions': [
52         ['OS=="win"', {
53           'defines': [
54             '_CRT_SECURE_NO_DEPRECATE',
55             '_CRT_NONSTDC_NO_WARNINGS',
56             '_CRT_NONSTDC_NO_DEPRECATE',
57             '_SCL_SECURE_NO_DEPRECATE',
58           ],
59         }],
60         ['OS=="mac"', {
61           'mac_bundle': 1,
62           'product_name': 'ppapi_tests',
63           'product_extension': 'plugin',
64         }],
65       ],
66 # TODO(dmichael):  Figure out what is wrong with the script on Windows and add
67 #                  it as an automated action.
68 #      'actions': [
69 #        {
70 #          'action_name': 'generate_ppapi_include_tests',
71 #          'inputs': [],
72 #          'outputs': [
73 #            'tests/test_c_includes.c',
74 #            'tests/test_cc_includes.cc',
75 #          ],
76 #          'action': [
77 #            '<!@(python generate_ppapi_include_tests.py)',
78 #          ],
79 #        },
80 #      ],
81     },
82     {
83       # GN version: //ppapi/proxy:test_support
84       #             //ppapi/shared_impl:test_support
85       'target_name': 'ppapi_unittest_shared',
86       'type': 'static_library',
87       'dependencies': [
88         'ppapi_proxy',
89         'ppapi_shared',
90         '../base/base.gyp:test_support_base',
91         '../ipc/ipc.gyp:ipc',
92         '../ipc/ipc.gyp:test_support_ipc',
93         '../testing/gmock.gyp:gmock',
94         '../testing/gtest.gyp:gtest',
95       ],
96       'sources': [
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',
106       ],
107     },
109     {
110       # GN version: //ppapi:ppapi_perftests
111       'target_name': 'ppapi_perftests',
112       'type': 'executable',
113       'variables': {
114         'chromium_code': 1,
115       },
116       'dependencies': [
117         'ppapi_proxy',
118         'ppapi_shared',
119         'ppapi_unittest_shared',
120         '../base/base.gyp:test_support_base',
121         '../testing/gtest.gyp:gtest',
122       ],
123       'sources': [
124         'proxy/ppapi_perftests.cc',
125         'proxy/ppp_messaging_proxy_perftest.cc',
126       ],
127       'conditions': [
128         # See http://crbug.com/162998#c4 for why this is needed.
129         ['OS=="linux" and use_allocator!="none"', {
130           'dependencies': [
131             '../base/allocator/allocator.gyp:allocator',
132           ],
133         }],
134       ],
135     },
136     {
137       # GN version: //ppapi:ppapi_unittests
138       'target_name': 'ppapi_unittests',
139       'type': 'executable',
140       'variables': {
141         'chromium_code': 1,
142       },
143       'dependencies': [
144         'ppapi_host',
145         'ppapi_proxy',
146         'ppapi_shared',
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',
157       ],
158       'sources': [
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',
193       ],
194       'conditions': [
195         [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
196           'conditions': [
197             [ 'use_allocator!="none"', {
198               'dependencies': [
199                 '../base/allocator/allocator.gyp:allocator',
200               ],
201             }],
202           ],
203         }],
204       ],
205     },
206     {
207       'target_name': 'ppapi_example_skeleton',
208       'suppress_wildcard': 1,
209       'type': 'none',
210       'direct_dependent_settings': {
211         'product_name': '>(_target_name)',
212         'conditions': [
213           ['os_posix==1 and OS!="mac"', {
214             'cflags': ['-fvisibility=hidden'],
215             'type': 'shared_library',
216           }],
217           ['OS=="win"', {
218             'type': 'shared_library',
219           }],
220           ['OS=="mac"', {
221             'type': 'loadable_module',
222             'mac_bundle': 1,
223             'product_extension': 'plugin',
224             'xcode_settings': {
225               'OTHER_LDFLAGS': [
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'
230               ]},
231           }],
232         ],
233       },
234     },
235     {
236       # GN version: //ppapi/examples/mouse_cursor
237       'target_name': 'ppapi_example_mouse_cursor',
238       'dependencies': [
239         'ppapi_example_skeleton',
240         'ppapi.gyp:ppapi_cpp',
241       ],
242       'sources': [
243         'examples/mouse_cursor/mouse_cursor.cc',
244       ],
245     },
246     {
247       # GN version: //ppapi/examples/mouse_lock
248       'target_name': 'ppapi_example_mouse_lock',
249       'dependencies': [
250         'ppapi_example_skeleton',
251         'ppapi.gyp:ppapi_cpp',
252       ],
253       'sources': [
254         'examples/mouse_lock/mouse_lock.cc',
255       ],
256     },
258     {
259       # GN version: //ppapi/examples/gamepad
260       'target_name': 'ppapi_example_gamepad',
261       'dependencies': [
262         'ppapi_example_skeleton',
263         'ppapi.gyp:ppapi_cpp',
264       ],
265       'sources': [
266         'examples/gamepad/gamepad.cc',
267       ],
268     },
270     {
271       # GN version: //ppapi/examples/stub:c_stub
272       'target_name': 'ppapi_example_c_stub',
273       'dependencies': [
274         'ppapi_example_skeleton',
275         'ppapi.gyp:ppapi_c',
276       ],
277       'sources': [
278         'examples/stub/stub.c',
279       ],
280     },
281     {
282       # GN version: //ppapi/examples/stub:cc_stub
283       'target_name': 'ppapi_example_cc_stub',
284       'dependencies': [
285         'ppapi_example_skeleton',
286         'ppapi.gyp:ppapi_cpp',
287       ],
288       'sources': [
289         'examples/stub/stub.cc',
290       ],
291     },
292     {
293       # GN version: //ppapi/examples/crxfs
294       'target_name': 'ppapi_example_crxfs',
295       'dependencies': [
296         'ppapi_example_skeleton',
297         'ppapi.gyp:ppapi_cpp',
298       ],
299       'sources': [
300         'examples/crxfs/crxfs.cc',
301       ],
302     },
303     {
304       # GN version: //ppapi/examples/audio
305       'target_name': 'ppapi_example_audio',
306       'dependencies': [
307         'ppapi_example_skeleton',
308         'ppapi.gyp:ppapi_cpp',
309       ],
310       'sources': [
311         'examples/audio/audio.cc',
312       ],
313     },
314     {
315       # GN version: //ppapi/examples/audio_input
316       'target_name': 'ppapi_example_audio_input',
317       'dependencies': [
318         'ppapi_example_skeleton',
319         'ppapi.gyp:ppapi_cpp',
320       ],
321       'sources': [
322         'examples/audio_input/audio_input.cc',
323       ],
324     },
325     {
326       # GN version: //ppapi/examples/file_chooser
327       'target_name': 'ppapi_example_file_chooser',
328       'dependencies': [
329         'ppapi_example_skeleton',
330         'ppapi.gyp:ppapi_cpp',
331       ],
332       'sources': [
333         'examples/file_chooser/file_chooser.cc',
334       ],
335     },
336     {
337       # GN version: //ppapi/examples/2d:graphics_2d
338       'target_name': 'ppapi_example_graphics_2d',
339       'dependencies': [
340         'ppapi_example_skeleton',
341         'ppapi.gyp:ppapi_c',
342       ],
343       'sources': [
344         'examples/2d/graphics_2d_example.c',
345       ],
346     },
347     {
348       # GN version: //ppapi/examples/ime
349       'target_name': 'ppapi_example_ime',
350       'dependencies': [
351         'ppapi_example_skeleton',
352         'ppapi.gyp:ppapi_cpp',
353       ],
354       'sources': [
355         'examples/ime/ime.cc',
356       ],
357     },
358     {
359       # GN version: //ppapi/examples/2d:paint_manager
360       'target_name': 'ppapi_example_paint_manager',
361       'dependencies': [
362         'ppapi_example_skeleton',
363         'ppapi.gyp:ppapi_cpp',
364       ],
365       'sources': [
366         'examples/2d/paint_manager_example.cc',
367       ],
368     },
369     {
370       # GN version: //ppapi/examples/input
371       'target_name': 'ppapi_example_input',
372       'dependencies': [
373         'ppapi_example_skeleton',
374         'ppapi.gyp:ppapi_cpp',
375       ],
376       'sources': [
377         'examples/input/pointer_event_input.cc',
378       ],
379     },
380     {
381       # GN version: //ppapi/examples/scripting
382       'target_name': 'ppapi_example_post_message',
383       'dependencies': [
384         'ppapi_example_skeleton',
385         'ppapi.gyp:ppapi_cpp',
386       ],
387       'sources': [
388         'examples/scripting/post_message.cc',
389       ],
390     },
391     {
392       # GN version: //ppapi/examples/scaling
393       'target_name': 'ppapi_example_scaling',
394       'dependencies': [
395         'ppapi_example_skeleton',
396         'ppapi.gyp:ppapi_cpp',
397       ],
398       'sources': [
399         'examples/scaling/scaling.cc',
400       ],
401     },
402     {
403       # GN version: //ppapi/examples/2d:scroll
404       'target_name': 'ppapi_example_scroll',
405       'dependencies': [
406         'ppapi_example_skeleton',
407         'ppapi.gyp:ppapi_cpp',
408       ],
409       'sources': [
410         'examples/2d/scroll.cc',
411       ],
412     },
413     {
414       # GN version: //ppapi/examples/font
415       'target_name': 'ppapi_example_simple_font',
416       'dependencies': [
417         'ppapi_example_skeleton',
418         'ppapi.gyp:ppapi_cpp',
419       ],
420       'sources': [
421         'examples/font/simple_font.cc',
422       ],
423     },
424     {
425       # GN version: //ppapi/examples/threading
426       'target_name': 'ppapi_example_threading',
427       'dependencies': [
428         'ppapi_example_skeleton',
429         'ppapi.gyp:ppapi_cpp',
430       ],
431       'sources': [
432         'examples/threading/threading.cc',
433       ],
434     },
435     {
436       # GN version: //ppapi/examples/url_loader:streaming
437       'target_name': 'ppapi_example_url_loader',
438       'dependencies': [
439         'ppapi_example_skeleton',
440         'ppapi.gyp:ppapi_cpp',
441       ],
442       'sources': [
443         'examples/url_loader/streaming.cc',
444       ],
445     },
446     {
447       # GN version: //ppapi/examples/url_loader:file
448       'target_name': 'ppapi_example_url_loader_file',
449       'dependencies': [
450         'ppapi_example_skeleton',
451         'ppapi.gyp:ppapi_cpp',
452       ],
453       'sources': [
454         'examples/url_loader/stream_to_file.cc',
455       ],
456     },
457     {
458       # GN version: //ppapi/examples/gles2
459       'target_name': 'ppapi_example_gles2',
460       'dependencies': [
461         'ppapi_example_skeleton',
462         'ppapi.gyp:ppapi_cpp',
463         'ppapi.gyp:ppapi_gles2',
464       ],
465       'include_dirs': [
466         'lib/gl/include',
467       ],
468       'sources': [
469         'examples/gles2/gles2.cc',
470       ],
471     },
472     {
473       # GN version: //ppapi/examples/video_decode:stable
474       'target_name': 'ppapi_example_video_decode',
475       'dependencies': [
476         'ppapi_example_skeleton',
477         'ppapi.gyp:ppapi_cpp',
478         'ppapi.gyp:ppapi_gles2',
479       ],
480       'include_dirs': [
481         'lib/gl/include',
482       ],
483       'sources': [
484         'examples/video_decode/testdata.h',
485         'examples/video_decode/video_decode.cc',
486       ],
487     },
488     {
489       # GN version: //ppapi/examples/video_decode:dev
490       'target_name': 'ppapi_example_video_decode_dev',
491       'dependencies': [
492         'ppapi_example_skeleton',
493         'ppapi.gyp:ppapi_cpp',
494         'ppapi.gyp:ppapi_gles2',
495       ],
496       'include_dirs': [
497         'lib/gl/include',
498       ],
499       'sources': [
500         'examples/video_decode/testdata.h',
501         'examples/video_decode/video_decode_dev.cc',
502       ],
503     },
504     {
505       'target_name': 'ppapi_example_video_encode',
506       'dependencies': [
507         'ppapi_example_skeleton',
508         'ppapi.gyp:ppapi_cpp',
509       ],
510       'sources': [
511         'examples/video_encode/video_encode.cc',
512       ],
513     },
514     {
515       # GN version: //ppapi/example/video_capture
516       'target_name': 'ppapi_example_vc',
517       'dependencies': [
518         'ppapi_example_skeleton',
519         'ppapi.gyp:ppapi_cpp',
520         'ppapi.gyp:ppapi_gles2',
521       ],
522       'include_dirs': [
523         'lib/gl/include',
524       ],
525       'sources': [
526         'examples/video_capture/video_capture.cc',
527       ],
528     },
529     {
530       # GN version: //ppapi/examples/video_effects
531       'target_name': 'ppapi_example_video_effects',
532       'dependencies': [
533         'ppapi_example_skeleton',
534         'ppapi.gyp:ppapi_cpp',
535       ],
536       'sources': [
537         'examples/video_effects/video_effects.cc',
538       ],
539     },
540     {
541       # GN version: //ppapi/examples/enumerate_devices
542       'target_name': 'ppapi_example_enumerate_devices',
543       'dependencies': [
544         'ppapi_example_skeleton',
545         'ppapi.gyp:ppapi_cpp',
546       ],
547       'sources': [
548         'examples/enumerate_devices/enumerate_devices.cc',
549       ],
550     },
551     {
552       # GN version: //ppapi/examples/flash_topmost
553       'target_name': 'ppapi_example_flash_topmost',
554       'dependencies': [
555         'ppapi_example_skeleton',
556         'ppapi.gyp:ppapi_cpp',
557       ],
558       'sources': [
559         'examples/flash_topmost/flash_topmost.cc',
560       ],
561     },
562     {
563       # GN version: //ppapi/examples/printing
564       'target_name': 'ppapi_example_printing',
565       'dependencies': [
566         'ppapi_example_skeleton',
567         'ppapi.gyp:ppapi_cpp',
568       ],
569       'sources': [
570         'examples/printing/printing.cc',
571       ],
572     },
573     {
574       # GN version: //ppapi/examples/media_stream_audio
575       'target_name': 'ppapi_example_media_stream_audio',
576       'dependencies': [
577         'ppapi_example_skeleton',
578         'ppapi.gyp:ppapi_cpp',
579       ],
580       'sources': [
581         'examples/media_stream_audio/media_stream_audio.cc',
582       ],
583     },
584     {
585       # GN version: //ppapi/examples/media_stream_video
586       'target_name': 'ppapi_example_media_stream_video',
587       'dependencies': [
588         'ppapi_example_skeleton',
589         'ppapi.gyp:ppapi_cpp',
590         'ppapi.gyp:ppapi_gles2',
591       ],
592       'include_dirs': [
593         'lib/gl/include',
594       ],
595       'sources': [
596         'examples/media_stream_video/media_stream_video.cc',
597       ],
598     },
599     {
600       # GN version: //ppapi/examples/gles2_spinning_cube
601       'target_name': 'ppapi_example_gles2_spinning_cube',
602       'dependencies': [
603         'ppapi_example_skeleton',
604         'ppapi.gyp:ppapi_cpp',
605         'ppapi.gyp:ppapi_gles2',
606       ],
607       'include_dirs': [
608         'lib/gl/include',
609       ],
610       'sources': [
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',
614       ],
615     },
616     {
617       # GN version: //ppapi/examples/compositor
618       'target_name': 'ppapi_example_compositor',
619       'dependencies': [
620         'ppapi_example_skeleton',
621         'ppapi.gyp:ppapi_cpp',
622         'ppapi.gyp:ppapi_gles2',
623       ],
624       'include_dirs': [
625         'lib/gl/include',
626       ],
627       'sources': [
628         'examples/compositor/compositor.cc',
629         'examples/compositor/spinning_cube.cc',
630         'examples/compositor/spinning_cube.h',
631       ],
632     },
633     # Adding a new PPAPI example? Don't forget to update the GN build.
634     # See //ppapi/examples/BUILD.gn
635   ],