Android WebView: add sfntly to deps whitelist.
[chromium-blink-merge.git] / ppapi / ppapi_tests.gypi
blob4f439bafa42d0636c6b525cb0ba5becb68e812d5
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       'target_name': 'ppapi_tests',
9       'type': 'loadable_module',
10       'include_dirs': [
11         'lib/gl/include',
12       ],
13       'defines': [
14         'GL_GLEXT_PROTOTYPES',
15       ],
16       'sources': [
17         '<@(test_common_source_files)',
18         '<@(test_trusted_source_files)',
19       ],
20       'dependencies': [
21         'ppapi.gyp:ppapi_cpp',
22         'ppapi_internal.gyp:ppapi_shared',
23       ],
24       'copies': [
25         {
26           'destination': '<(PRODUCT_DIR)',
27           'files': [
28             # Keep 'test_case.html.mock-http-headers' with 'test_case.html'.
29             'tests/test_case.html',
30             'tests/test_case.html.mock-http-headers',
31             'tests/test_page.css',
32             'tests/ppapi_nacl_tests_newlib.nmf',
33           ],
34         },
35         {
36           'destination': '<(PRODUCT_DIR)/test_url_loader_data',
37           'files': [
38             'tests/test_url_loader_data/hello.txt',
39           ],
40         },
41       ],
42       'run_as': {
43         'action': [
44           '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)chrome<(EXECUTABLE_SUFFIX)',
45           '--enable-pepper-testing',
46           '--register-pepper-plugins=$(TargetPath);application/x-ppapi-tests',
47           'file://$(ProjectDir)/tests/test_case.html?testcase=',
48         ],
49       },
50       'conditions': [
51         ['OS=="win"', {
52           'defines': [
53             '_CRT_SECURE_NO_DEPRECATE',
54             '_CRT_NONSTDC_NO_WARNINGS',
55             '_CRT_NONSTDC_NO_DEPRECATE',
56             '_SCL_SECURE_NO_DEPRECATE',
57           ],
58           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
59           'msvs_disabled_warnings': [ 4267, ],
60         }],
61         ['OS=="mac"', {
62           'mac_bundle': 1,
63           'product_name': 'ppapi_tests',
64           'product_extension': 'plugin',
65         }],
66       ],
67       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
68       'msvs_disabled_warnings': [ 4267, ],
69 # TODO(dmichael):  Figure out what is wrong with the script on Windows and add
70 #                  it as an automated action.
71 #      'actions': [
72 #        {
73 #          'action_name': 'generate_ppapi_include_tests',
74 #          'inputs': [],
75 #          'outputs': [
76 #            'tests/test_c_includes.c',
77 #            'tests/test_cc_includes.cc',
78 #          ],
79 #          'action': [
80 #            '<!@(python generate_ppapi_include_tests.py)',
81 #          ],
82 #        },
83 #      ],
84     },
85     {
86       'target_name': 'ppapi_unittest_shared',
87       'type': 'static_library',
88       'dependencies': [
89         'ppapi_proxy',
90         'ppapi_shared',
91         '../base/base.gyp:test_support_base',
92         '../ipc/ipc.gyp:ipc',
93         '../ipc/ipc.gyp:test_support_ipc',
94         '../testing/gmock.gyp:gmock',
95         '../testing/gtest.gyp:gtest',
96       ],
97       'sources': [
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       'target_name': 'ppapi_perftests',
111       'type': 'executable',
112       'variables': {
113         'chromium_code': 1,
114       },
115       'dependencies': [
116         'ppapi_proxy',
117         'ppapi_shared',
118         'ppapi_unittest_shared',
119         '../base/base.gyp:test_support_base',
120         '../testing/gtest.gyp:gtest',
121       ],
122       'sources': [
123         'proxy/ppapi_perftests.cc',
124         'proxy/ppp_messaging_proxy_perftest.cc',
125       ],
126       'conditions': [
127         # See http://crbug.com/162998#c4 for why this is needed.
128         ['OS=="linux" and linux_use_tcmalloc==1', {
129           'dependencies': [
130             '../base/allocator/allocator.gyp:allocator',
131           ],
132         }],
133       ],
134     },
135     {
136       'target_name': 'ppapi_unittests',
137       'type': 'executable',
138       'variables': {
139         'chromium_code': 1,
140       },
141       'dependencies': [
142         'ppapi_host',
143         'ppapi_proxy',
144         'ppapi_shared',
145         'ppapi_unittest_shared',
146         '../base/base.gyp:run_all_unittests',
147         '../base/base.gyp:test_support_base',
148         '../gpu/gpu.gyp:gpu_ipc',
149         '../ipc/ipc.gyp:ipc',
150         '../ipc/ipc.gyp:test_support_ipc',
151         '../media/media.gyp:shared_memory_support',
152         '../testing/gmock.gyp:gmock',
153         '../testing/gtest.gyp:gtest',
154         '../ui/surface/surface.gyp:surface',
155       ],
156       # For the nacl_http_response_headers_unittest below.
157       'include_dirs': [
158         '../ppapi',
159       ],
160       'sources': [
161         'host/resource_message_filter_unittest.cc',
162         # Piggy back on ppapi_unittests for a simple NaCl unittest,
163         # which must not have dependencies on anything other than stdlibs.
164         # We add the source file, not just the test to ensure that the object
165         # is built.  Otherwise, we would need to depend on the NaCl trusted
166         # plugin being built to build the object.
167         # TODO(jvoung): move this to unit_tests instead of ppapi_unittests
168         # once this moves into chrome.
169         'native_client/src/trusted/plugin/nacl_http_response_headers.cc',
170         'native_client/src/trusted/plugin/nacl_http_response_headers_unittest.cc',
171         'proxy/device_enumeration_resource_helper_unittest.cc',
172         'proxy/file_chooser_resource_unittest.cc',
173         'proxy/flash_resource_unittest.cc',
174         'proxy/mock_resource.cc',
175         'proxy/mock_resource.h',
176         'proxy/pdf_resource_unittest.cc',
177         'proxy/plugin_dispatcher_unittest.cc',
178         'proxy/plugin_resource_tracker_unittest.cc',
179         'proxy/plugin_var_tracker_unittest.cc',
180         'proxy/ppb_var_unittest.cc',
181         'proxy/ppp_instance_private_proxy_unittest.cc',
182         'proxy/ppp_instance_proxy_unittest.cc',
183         'proxy/ppp_messaging_proxy_unittest.cc',
184         'proxy/printing_resource_unittest.cc',
185         'proxy/raw_var_data_unittest.cc',
186         'proxy/serialized_var_unittest.cc',
187         'proxy/talk_resource_unittest.cc',
188         'proxy/websocket_resource_unittest.cc',
189         'shared_impl/proxy_lock_unittest.cc',
190         'shared_impl/resource_tracker_unittest.cc',
191         'shared_impl/thread_aware_callback_unittest.cc',
192         'shared_impl/time_conversion_unittest.cc',
193         'shared_impl/tracked_callback_unittest.cc',
194         'shared_impl/var_tracker_unittest.cc',
195         'shared_impl/var_value_conversions_unittest.cc',
196       ],
197       'conditions': [
198         [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
199           'conditions': [
200             [ 'linux_use_tcmalloc == 1', {
201               'dependencies': [
202                 '../base/allocator/allocator.gyp:allocator',
203               ],
204             }],
205           ],
206         }],
207       ],
208       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
209       'msvs_disabled_warnings': [ 4267, ],          
210     },
211     {
212       'target_name': 'ppapi_example_skeleton',
213       'suppress_wildcard': 1,
214       'type': 'none',
215       'direct_dependent_settings': {
216         'product_name': '>(_target_name)',
217         'conditions': [
218           ['os_posix==1 and OS!="mac"', {
219             'cflags': ['-fvisibility=hidden'],
220             'type': 'shared_library',
221           }],
222           ['OS=="win"', {
223             'type': 'shared_library',
224           }],
225           ['OS=="mac"', {
226             'type': 'loadable_module',
227             'mac_bundle': 1,
228             'product_extension': 'plugin',
229             'xcode_settings': {
230               'OTHER_LDFLAGS': [
231                 # Not to strip important symbols by -Wl,-dead_strip.
232                 '-Wl,-exported_symbol,_PPP_GetInterface',
233                 '-Wl,-exported_symbol,_PPP_InitializeModule',
234                 '-Wl,-exported_symbol,_PPP_ShutdownModule'
235               ]},
236           }],
237         ],
238       },
239     },
240     {
241       'target_name': 'ppapi_example_mouse_cursor',
242       'dependencies': [
243         'ppapi_example_skeleton',
244         'ppapi.gyp:ppapi_cpp',
245       ],
246       'sources': [
247         'examples/mouse_cursor/mouse_cursor.cc',
248       ],
249     },
250     {
251       'target_name': 'ppapi_example_mouse_lock',
252       'dependencies': [
253         'ppapi_example_skeleton',
254         'ppapi.gyp:ppapi_cpp',
255       ],
256       'sources': [
257         'examples/mouse_lock/mouse_lock.cc',
258       ],
259     },
261     {
262       'target_name': 'ppapi_example_gamepad',
263       'dependencies': [
264         'ppapi_example_skeleton',
265         'ppapi.gyp:ppapi_cpp',
266       ],
267       'sources': [
268         'examples/gamepad/gamepad.cc',
269       ],
270       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
271       'msvs_disabled_warnings': [ 4267, ],
272     },
274     {
275       'target_name': 'ppapi_example_c_stub',
276       'dependencies': [
277         'ppapi_example_skeleton',
278         'ppapi.gyp:ppapi_c',
279       ],
280       'sources': [
281         'examples/stub/stub.c',
282       ],
283     },
284     {
285       'target_name': 'ppapi_example_cc_stub',
286       'dependencies': [
287         'ppapi_example_skeleton',
288         'ppapi.gyp:ppapi_cpp',
289       ],
290       'sources': [
291         'examples/stub/stub.cc',
292       ],
293     },
294     {
295       'target_name': 'ppapi_example_crxfs',
296       'dependencies': [
297         'ppapi_example_skeleton',
298         'ppapi.gyp:ppapi_cpp',
299       ],
300       'sources': [
301         'examples/crxfs/crxfs.cc',
302       ],
303     },
304     {
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       'target_name': 'ppapi_example_audio_input',
316       'dependencies': [
317         'ppapi_example_skeleton',
318         'ppapi.gyp:ppapi_cpp',
319       ],
320       'sources': [
321         'examples/audio_input/audio_input.cc',
322       ],
323     },
324     {
325       'target_name': 'ppapi_example_file_chooser',
326       'dependencies': [
327         'ppapi_example_skeleton',
328         'ppapi.gyp:ppapi_cpp',
329       ],
330       'sources': [
331         'examples/file_chooser/file_chooser.cc',
332       ],
333     },
334     {
335       'target_name': 'ppapi_example_graphics_2d',
336       'dependencies': [
337         'ppapi_example_skeleton',
338         'ppapi.gyp:ppapi_c',
339       ],
340       'sources': [
341         'examples/2d/graphics_2d_example.c',
342       ],
343     },
344     {
345       'target_name': 'ppapi_example_ime',
346       'dependencies': [
347         'ppapi_example_skeleton',
348         'ppapi.gyp:ppapi_cpp',
349       ],
350       'sources': [
351         'examples/ime/ime.cc',
352       ],
353       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
354       'msvs_disabled_warnings': [ 4267, ],
355     },
356     {
357       'target_name': 'ppapi_example_paint_manager',
358       'dependencies': [
359         'ppapi_example_skeleton',
360         'ppapi.gyp:ppapi_cpp',
361       ],
362       'sources': [
363         'examples/2d/paint_manager_example.cc',
364       ],
365     },
366     {
367       'target_name': 'ppapi_example_input',
368       'dependencies': [
369         'ppapi_example_skeleton',
370         'ppapi.gyp:ppapi_cpp',
371       ],
372       'sources': [
373         'examples/input/pointer_event_input.cc',
374       ],
375     },
376     {
377       'target_name': 'ppapi_example_post_message',
378       'dependencies': [
379         'ppapi_example_skeleton',
380         'ppapi.gyp:ppapi_cpp',
381       ],
382       'sources': [
383         'examples/scripting/post_message.cc',
384       ],
385     },
386     {
387       'target_name': 'ppapi_example_scaling',
388       'dependencies': [
389         'ppapi_example_skeleton',
390         'ppapi.gyp:ppapi_cpp',
391       ],
392       'sources': [
393         'examples/scaling/scaling.cc',
394       ],
395     },
396     {
397       'target_name': 'ppapi_example_scroll',
398       'dependencies': [
399         'ppapi_example_skeleton',
400         'ppapi.gyp:ppapi_cpp',
401       ],
402       'sources': [
403         'examples/2d/scroll.cc',
404       ],
405     },
406     {
407       'target_name': 'ppapi_example_simple_font',
408       'dependencies': [
409         'ppapi_example_skeleton',
410         'ppapi.gyp:ppapi_cpp',
411       ],
412       'sources': [
413         'examples/font/simple_font.cc',
414       ],
415     },
416     {
417       'target_name': 'ppapi_example_url_loader',
418       'dependencies': [
419         'ppapi_example_skeleton',
420         'ppapi.gyp:ppapi_cpp',
421       ],
422       'sources': [
423         'examples/url_loader/streaming.cc',
424       ],
425     },
426     {
427       'target_name': 'ppapi_example_url_loader_file',
428       'dependencies': [
429         'ppapi_example_skeleton',
430         'ppapi.gyp:ppapi_cpp',
431       ],
432       'sources': [
433         'examples/url_loader/stream_to_file.cc',
434       ],
435     },
436     {
437       'target_name': 'ppapi_example_gles2',
438       'dependencies': [
439         'ppapi_example_skeleton',
440         'ppapi.gyp:ppapi_cpp',
441         'ppapi.gyp:ppapi_gles2',
442       ],
443       'include_dirs': [
444         'lib/gl/include',
445       ],
446       'sources': [
447         'examples/gles2/gles2.cc',
448       ],
449     },
450     {
451       'target_name': 'ppapi_example_video_decode',
452       'dependencies': [
453         'ppapi_example_skeleton',
454         'ppapi.gyp:ppapi_cpp',
455         'ppapi.gyp:ppapi_gles2',
456       ],
457       'include_dirs': [
458         'lib/gl/include',
459       ],
460       'sources': [
461         'examples/video_decode/video_decode.cc',
462         'examples/video_decode/testdata.h',
463       ],
464       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
465       'msvs_disabled_warnings': [ 4267, ],
466     },
467     {
468       'target_name': 'ppapi_example_vc',
469       'dependencies': [
470         'ppapi_example_skeleton',
471         'ppapi.gyp:ppapi_cpp',
472         'ppapi.gyp:ppapi_gles2',
473       ],
474       'include_dirs': [
475         'lib/gl/include',
476       ],
477       'sources': [
478         'examples/video_capture/video_capture.cc',
479       ],
480     },
481     {
482       'target_name': 'ppapi_example_video_effects',
483       'dependencies': [
484         'ppapi_example_skeleton',
485         'ppapi.gyp:ppapi_cpp',
486       ],
487       'sources': [
488         'examples/video_effects/video_effects.cc',
489       ],
490     },
491     {
492       'target_name': 'ppapi_example_enumerate_devices',
493       'dependencies': [
494         'ppapi_example_skeleton',
495         'ppapi.gyp:ppapi_cpp',
496       ],
497       'sources': [
498         'examples/enumerate_devices/enumerate_devices.cc',
499       ],
500     },
501     {
502       'target_name': 'ppapi_example_flash_topmost',
503       'dependencies': [
504         'ppapi_example_skeleton',
505         'ppapi.gyp:ppapi_cpp',
506       ],
507       'sources': [
508         'examples/flash_topmost/flash_topmost.cc',
509       ],
510     },
511     {
512       'target_name': 'ppapi_example_printing',
513       'dependencies': [
514         'ppapi_example_skeleton',
515         'ppapi.gyp:ppapi_cpp',
516       ],
517       'sources': [
518         'examples/printing/printing.cc',
519       ],
520       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
521       'msvs_disabled_warnings': [ 4267, ],
522     },
523   ],