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.
7 '../../../../ppapi/ppapi_nacl_test_common.gypi',
11 'target_name': 'shared_test_files',
16 'build_pnacl_newlib': 1,
17 'nexe_destination_dir': 'nacl_test_data',
19 # TODO(ncbray) move into chrome/test/data/nacl when all tests are
21 '<(DEPTH)/ppapi/native_client/tests/ppapi_browser/progress_event_listener.js',
22 '<(DEPTH)/ppapi/native_client/tools/browser_tester/browserdata/nacltest.js',
24 # Files that aren't assosiated with any particular executable.
27 'bad/ppapi_bad_native.html',
28 'bad/ppapi_bad_doesnotexist.nmf',
29 'bad/ppapi_bad_magic.nmf',
30 'bad/ppapi_bad_manifest_uses_nexes.nmf',
31 'bad/ppapi_bad_manifest_bad_files.nmf',
32 'bad/ppapi_bad_manifest_nexe_arch.nmf',
33 'crash/ppapi_crash.html',
35 'manifest_file/test_file.txt',
39 ['target_arch=="ia32" and OS=="linux"', {
40 # Enable nonsfi testing only on ia32-linux environment.
41 # This flag causes test_files to be copied into nonsfi directory,
44 'enable_x86_32_nonsfi': 1,
50 'target_name': 'simple_test',
53 'nexe_target': 'simple',
56 'build_pnacl_newlib': 1,
57 'nexe_destination_dir': 'nacl_test_data',
62 'nacl_load_test.html',
67 'target_name': 'exit_status_test',
70 'nexe_target': 'pm_exit_status_test',
73 'build_pnacl_newlib': 1,
74 'nexe_destination_dir': 'nacl_test_data',
76 'exit_status/pm_exit_status_test.cc',
79 'exit_status/pm_exit_status_test.html',
84 'target_name': 'extension_validation_cache',
87 'nexe_target': 'extension_validation_cache',
88 # The test currently only has the test expectations for the
89 # newlib and glibc cases (# validation queries/settings), and has also
90 # hardcoded the newlib and glibc variants' directory path for the
94 'build_pnacl_newlib': 0,
95 # Need a new directory to not clash with with other extension
96 # tests's files (e.g., manifest.json).
97 'nexe_destination_dir': 'nacl_test_data/extension_vcache_test',
102 # TODO(ncbray) move into chrome/test/data/nacl when all tests are
104 '<(DEPTH)/ppapi/native_client/tools/browser_tester/browserdata/nacltest.js',
105 'extension_validation_cache/extension_validation_cache.html',
106 'extension_validation_cache/extension_validation_cache.js',
107 # Turns the test data directory into an extension.
108 # Use a different nexe_destination_dir to isolate the files.
109 # Note that the .nexe names are embedded in this file.
110 'extension_validation_cache/manifest.json',
115 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
119 'target_name': 'sysconf_nprocessors_onln_test',
122 'nexe_target': 'sysconf_nprocessors_onln_test',
125 'build_pnacl_newlib': 1,
126 'nexe_destination_dir': 'nacl_test_data',
128 'sysconf_nprocessors_onln/sysconf_nprocessors_onln_test.cc',
131 'sysconf_nprocessors_onln/sysconf_nprocessors_onln_test.html',
136 'target_name': 'ppapi_test_lib',
139 'nlib_target': 'libppapi_test_lib.a',
140 'nso_target': 'libppapi_test_lib.so',
143 'build_pnacl_newlib': 1,
144 'nexe_destination_dir': 'nacl_test_data',
146 # TODO(ncbray) move these files once SCons no longer depends on them.
147 '../../../../ppapi/native_client/tests/ppapi_test_lib/get_browser_interface.cc',
148 '../../../../ppapi/native_client/tests/ppapi_test_lib/internal_utils.cc',
149 '../../../../ppapi/native_client/tests/ppapi_test_lib/module_instance.cc',
150 '../../../../ppapi/native_client/tests/ppapi_test_lib/testable_callback.cc',
151 '../../../../ppapi/native_client/tests/ppapi_test_lib/test_interface.cc',
155 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
159 'target_name': 'nacl_ppapi_util',
162 'nlib_target': 'libnacl_ppapi_util.a',
163 'nso_target': 'libnacl_ppapi_util.so',
166 'build_pnacl_newlib': 1,
167 'nexe_destination_dir': 'nacl_test_data',
169 # TODO(ncbray) move these files once SCons no longer depends on them.
170 '../../../../ppapi/native_client/src/untrusted/nacl_ppapi_util/string_buffer.cc',
171 '../../../../ppapi/native_client/src/untrusted/nacl_ppapi_util/nacl_ppapi_util.cc',
172 '../../../../ppapi/native_client/src/untrusted/nacl_ppapi_util/ppapi_srpc_main.c',
176 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
180 'target_name': 'ppapi_progress_events',
183 'nexe_target': 'ppapi_progress_events',
186 'build_pnacl_newlib': 1,
187 'nexe_destination_dir': 'nacl_test_data',
195 'progress_events/ppapi_progress_events.cc',
198 'progress_events/ppapi_progress_events.html',
202 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
203 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
204 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
205 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
206 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
211 'target_name': 'ppapi_bad_ppp_initialize',
214 'nexe_target': 'ppapi_bad_ppp_initialize',
217 'build_pnacl_newlib': 0,
218 'nexe_destination_dir': 'nacl_test_data',
225 'bad/ppapi_bad_ppp_initialize.cc',
229 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
230 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
231 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
232 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
236 'target_name': 'ppapi_bad_ppp_initialize_crash',
239 'nexe_target': 'ppapi_bad_ppp_initialize_crash',
242 'build_pnacl_newlib': 0,
243 'nexe_destination_dir': 'nacl_test_data',
250 'bad/ppapi_bad_ppp_initialize_crash.cc',
254 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
255 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
256 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
257 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
261 'target_name': 'ppapi_bad_no_ppp_instance',
264 'nexe_target': 'ppapi_bad_no_ppp_instance',
267 'build_pnacl_newlib': 0,
268 'nexe_destination_dir': 'nacl_test_data',
275 'bad/ppapi_bad_no_ppp_instance.cc',
279 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
280 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
281 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
282 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
286 'target_name': 'ppapi_bad_get_ppp_instance_crash',
289 'nexe_target': 'ppapi_bad_get_ppp_instance_crash',
292 'build_pnacl_newlib': 0,
293 'nexe_destination_dir': 'nacl_test_data',
300 'bad/ppapi_bad_get_ppp_instance_crash.cc',
304 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
305 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
306 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
307 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
311 'target_name': 'ppapi_bad_ppp_instance_didcreate',
314 'nexe_target': 'ppapi_bad_ppp_instance_didcreate',
317 'build_pnacl_newlib': 0,
318 'nexe_destination_dir': 'nacl_test_data',
325 'bad/ppapi_bad_ppp_instance_didcreate.cc',
329 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
330 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
331 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
332 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
336 'target_name': 'ppapi_bad_ppp_instance_didcreate_crash',
339 'nexe_target': 'ppapi_bad_ppp_instance_didcreate_crash',
342 'build_pnacl_newlib': 0,
343 'nexe_destination_dir': 'nacl_test_data',
350 'bad/ppapi_bad_ppp_instance_didcreate_crash.cc',
354 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
355 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
356 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
357 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
361 'target_name': 'ppapi_crash_via_check_failure',
364 'nexe_target': 'ppapi_crash_via_check_failure',
367 'build_pnacl_newlib': 1,
368 'nexe_destination_dir': 'nacl_test_data',
376 'crash/ppapi_crash_via_check_failure.cc',
380 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
381 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
382 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
383 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
384 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
389 'target_name': 'ppapi_crash_via_exit_call',
392 'nexe_target': 'ppapi_crash_via_exit_call',
395 'build_pnacl_newlib': 1,
396 'nexe_destination_dir': 'nacl_test_data',
404 'crash/ppapi_crash_via_exit_call.cc',
408 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
409 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
410 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
411 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
412 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
417 'target_name': 'ppapi_crash_in_callback',
420 'nexe_target': 'ppapi_crash_in_callback',
423 'build_pnacl_newlib': 1,
424 'nexe_destination_dir': 'nacl_test_data',
432 'crash/ppapi_crash_in_callback.cc',
436 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
437 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
438 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
439 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
440 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
445 'target_name': 'ppapi_crash_off_main_thread',
448 'nexe_target': 'ppapi_crash_off_main_thread',
451 'build_pnacl_newlib': 1,
452 'nexe_destination_dir': 'nacl_test_data',
460 'crash/ppapi_crash_off_main_thread.cc',
464 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
465 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
466 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
467 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
468 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
473 'target_name': 'ppapi_crash_ppapi_off_main_thread',
476 'nexe_target': 'ppapi_crash_ppapi_off_main_thread',
479 'build_pnacl_newlib': 1,
480 'nexe_destination_dir': 'nacl_test_data',
488 'crash/ppapi_crash_ppapi_off_main_thread.cc',
492 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
493 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
494 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
495 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
496 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
501 'target_name': 'pm_redir_test',
504 'nexe_target': 'pm_redir_test',
507 'build_pnacl_newlib': 1,
508 'nexe_destination_dir': 'nacl_test_data',
515 'postmessage_redir/pm_redir_test.cc',
518 'postmessage_redir/pm_redir_test.html',
522 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
523 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
524 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
525 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
526 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
530 'target_name': 'pm_manifest_file',
533 'nexe_target': 'pm_manifest_file',
536 # TODO(ncbray) support file injection into PNaCl manifest.
537 'build_pnacl_newlib': 0,
538 'nexe_destination_dir': 'nacl_test_data',
551 'manifest_file/pm_manifest_file_test.cc',
553 'create_nmf_args_portable': [
554 '-xtest_file:test_file.txt',
555 '-xnmf says hello world:test_file.txt',
558 'manifest_file/pm_manifest_file_test.html',
562 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
563 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
564 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
565 '<(DEPTH)/native_client/src/shared/srpc/srpc.gyp:srpc_lib',
566 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
567 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
568 '<(DEPTH)/native_client/src/shared/imc/imc.gyp:imc_lib',
569 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:imc_syscalls_lib',
570 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.gyp:weak_ref_lib',
575 'target_name': 'pm_pre_init_manifest_file',
578 'nexe_target': 'pm_pre_init_manifest_file',
581 # TODO(ncbray) support file injection into PNaCl manifest.
582 'build_pnacl_newlib': 0,
583 'nexe_destination_dir': 'nacl_test_data',
596 'manifest_file/pm_pre_init_manifest_file_test.cc',
598 'create_nmf_args_portable': [
599 '-xtest_file:test_file.txt',
600 '-xnmf says hello world:test_file.txt',
603 'manifest_file/pm_pre_init_manifest_file_test.html',
607 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
608 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
609 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
610 '<(DEPTH)/native_client/src/shared/srpc/srpc.gyp:srpc_lib',
611 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
612 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
613 '<(DEPTH)/native_client/src/shared/imc/imc.gyp:imc_lib',
614 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:imc_syscalls_lib',
615 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.gyp:weak_ref_lib',
620 'target_name': 'irt_manifest_file',
623 'nexe_target': 'irt_manifest_file',
625 # Linking problems - can't find __nacl_irt_query.
627 # TODO(ncbray) support file injection into PNaCl manifest.
628 'build_pnacl_newlib': 0,
629 'nexe_destination_dir': 'nacl_test_data',
643 'manifest_file/irt_manifest_file_test.cc',
645 'create_nmf_args_portable': [
646 '-xtest_file:test_file.txt',
647 '-xnmf says hello world:test_file.txt',
648 # There is no dummy_test_file.txt file intentionally. This is just for
649 # a test case where there is a manifest entry, but no actual file.
650 '-xdummy_test_file:dummy_test_file.txt',
653 'manifest_file/irt_manifest_file_test.html',
657 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
658 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
659 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
660 '<(DEPTH)/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:aot',
661 '<(DEPTH)/native_client/src/shared/srpc/srpc.gyp:srpc_lib',
662 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
663 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
664 '<(DEPTH)/native_client/src/shared/imc/imc.gyp:imc_lib',
665 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:imc_syscalls_lib',
666 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:nacl_lib',
667 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.gyp:weak_ref_lib',
671 ['target_arch=="ia32" and OS=="linux"', {
672 # Enable nonsfi testing only on ia32-linux environment.
674 # This is needed to build a non-SFI nexe binary.
675 # Note that this triggers building nexe files for other
676 # architectures, such as x86-32 (based on enable_XXX variables).
677 # As described above, although the tests for pnacl are currently
678 # disabled, but building the binary should work.
679 # We cannot disable building, as enable_XXX variables are also used
680 # to build newlib linked nexes.
681 'build_pnacl_newlib': 1,
682 'translate_pexe_with_build': 1,
683 'enable_x86_32_nonsfi': 1,
689 'target_name': 'irt_exception_test',
692 'nexe_target': 'irt_exception_test',
695 'nexe_destination_dir': 'nacl_test_data',
696 'build_pnacl_newlib': 1,
705 'irt_exception/irt_exception_test.cc',
708 # TODO(ncbray) move into chrome/test/data/nacl when all tests are
710 'irt_exception/irt_exception_test.html',
714 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
715 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
716 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
717 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:nacl_exception_lib',
718 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
719 '<(DEPTH)/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:aot',
720 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
724 ['target_arch=="ia32" and OS=="linux"', {
725 # Enable nonsfi testing only on ia32-linux environment.
727 'enable_x86_32_nonsfi': 1,
728 'translate_pexe_with_build': 1,
734 'target_name': 'pm_nameservice_test',
737 'nexe_target': 'pm_nameservice_test',
740 'build_pnacl_newlib': 1,
741 'nexe_destination_dir': 'nacl_test_data',
754 'nameservice/pm_nameservice_test.cc',
757 'nameservice/pm_nameservice_test.html',
761 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
762 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
763 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
764 '<(DEPTH)/native_client/src/shared/srpc/srpc.gyp:srpc_lib',
765 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
766 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
767 '<(DEPTH)/native_client/src/shared/imc/imc.gyp:imc_lib',
768 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:imc_syscalls_lib',
769 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.gyp:weak_ref_lib',
774 'target_name': 'ppapi_extension_mime_handler',
777 'nexe_target': 'ppapi_extension_mime_handler',
780 'build_pnacl_newlib': 0,
781 'nexe_destination_dir': 'nacl_test_data',
789 'extension_mime_handler/ppapi_extension_mime_handler.cc',
792 'extension_mime_handler/ppapi_extension_mime_handler.html',
793 'extension_mime_handler/mime_test_data.dat',
794 # For faking the file's MIME type.
795 'extension_mime_handler/mime_test_data.dat.mock-http-headers',
796 # Turns the test data directory into an extension. Hackish.
797 # Note that the .nexe names are embedded in this file.
798 'extension_mime_handler/manifest.json',
802 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
803 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
804 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
805 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
810 'target_name': 'pnacl_debug_url_test',
813 'nexe_target': 'pnacl_debug_url',
814 'build_pnacl_newlib': 1,
815 'nexe_destination_dir': 'nacl_test_data',
821 'pnacl_debug_url/pnacl_debug_url.html',
822 'pnacl_debug_url/pnacl_has_debug.nmf',
823 'pnacl_debug_url/pnacl_has_debug_flag_off.nmf',
824 'pnacl_debug_url/pnacl_no_debug.nmf',
828 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
832 'target_name': 'pnacl_error_handling_test',
835 'build_pnacl_newlib': 1,
836 'nexe_destination_dir': 'nacl_test_data',
837 # Use prebuilt NMF files.
840 'pnacl_error_handling/pnacl_error_handling.html',
841 'pnacl_error_handling/bad.pexe',
842 'pnacl_error_handling/pnacl_bad_pexe.nmf',
843 'pnacl_error_handling/pnacl_bad_doesnotexist.nmf',
844 'pnacl_error_handling/pnacl_illformed_manifest.nmf',
848 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
852 'target_name': 'pnacl_mime_type_test',
857 'build_pnacl_newlib': 1,
858 'nexe_destination_dir': 'nacl_test_data',
860 'pnacl_mime_type/pnacl_mime_type.html',
865 'target_name': 'pnacl_options_test',
868 'nexe_target': 'pnacl_options',
869 'build_pnacl_newlib': 1,
870 'nexe_destination_dir': 'nacl_test_data',
876 'pnacl_nmf_options/pnacl_options.html',
877 'pnacl_nmf_options/pnacl_o_0.nmf',
878 'pnacl_nmf_options/pnacl_o_2.nmf',
879 'pnacl_nmf_options/pnacl_o_large.nmf',
883 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
887 'target_name': 'pnacl_dyncode_syscall_disabled_test',
890 'nexe_target': 'pnacl_dyncode_syscall_disabled',
891 'build_pnacl_newlib': 1,
892 'nexe_destination_dir': 'nacl_test_data',
898 # The "_private" variant of the library calls the syscalls
899 # directly, which allows us to test the syscalls directly,
900 # even when the dyncode IRT interface is also disabled under
902 '-lnacl_dyncode_private',
905 'pnacl_dyncode_syscall_disabled/pnacl_dyncode_syscall_disabled.cc',
908 'pnacl_dyncode_syscall_disabled/pnacl_dyncode_syscall_disabled.html',
912 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
913 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
914 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:nacl_dyncode_private_lib',
915 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
916 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
917 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
922 'target_name': 'pnacl_hw_eh_disabled_test',
925 'nexe_target': 'pnacl_hw_eh_disabled',
926 'build_pnacl_newlib': 1,
927 'nexe_destination_dir': 'nacl_test_data',
933 # The "_private" variant of the library calls the syscalls
934 # directly, which allows us to test the syscalls directly,
935 # even when the exception-handling IRT interface is also
936 # disabled under PNaCl.
937 '-lnacl_exception_private',
940 'pnacl_hw_eh_disabled/pnacl_hw_eh_disabled.cc',
943 'pnacl_hw_eh_disabled/pnacl_hw_eh_disabled.html',
947 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
948 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
949 '<(DEPTH)/native_client/src/untrusted/nacl/nacl.gyp:nacl_exception_private_lib',
950 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
951 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
952 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
956 # Legacy NaCl PPAPI interface tests being here.
958 'target_name': 'ppapi_ppb_core',
961 'nexe_target': 'ppapi_ppb_core',
964 'build_pnacl_newlib': 1,
965 'nexe_destination_dir': 'nacl_test_data',
973 'ppapi/ppb_core/ppapi_ppb_core.cc',
976 'ppapi/ppb_core/ppapi_ppb_core.html',
980 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
981 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
982 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
983 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
984 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
989 'target_name': 'ppapi_ppb_instance',
992 'nexe_target': 'ppapi_ppb_instance',
995 'build_pnacl_newlib': 1,
996 'nexe_destination_dir': 'nacl_test_data',
1004 'ppapi/ppb_instance/ppapi_ppb_instance.cc',
1007 'ppapi/ppb_instance/ppapi_ppb_instance.html',
1011 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
1012 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
1013 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
1014 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
1015 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
1020 'target_name': 'ppapi_ppp_instance',
1023 'nexe_target': 'ppapi_ppp_instance',
1026 'build_pnacl_newlib': 1,
1027 'nexe_destination_dir': 'nacl_test_data',
1035 'ppapi/ppp_instance/ppapi_ppp_instance.cc',
1038 'ppapi/ppp_instance/ppapi_ppp_instance.html',
1039 'ppapi/ppp_instance/ppapi_ppp_instance.js',
1043 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
1044 '<(DEPTH)/native_client/src/shared/platform/platform.gyp:platform_lib',
1045 '<(DEPTH)/native_client/src/shared/gio/gio.gyp:gio_lib',
1046 '<(DEPTH)/ppapi/native_client/native_client.gyp:ppapi_lib',
1047 '<(DEPTH)/ppapi/ppapi_nacl.gyp:ppapi_cpp_lib',
1053 ['target_arch!="arm"', {
1054 # Source file does not have asm for ARM.
1057 'target_name': 'partly_invalid',
1060 'nexe_target': 'partly_invalid',
1063 'build_pnacl_newlib': 0,
1064 'nexe_destination_dir': 'nacl_test_data',
1066 '<(DEPTH)/native_client/tests/stubout_mode/partly_invalid.c',
1069 ['target_arch=="mipsel"', {
1071 '--pnacl-mips-bias',
1073 '--pnacl-allow-translate',
1076 '--pnacl-allow-native',
1082 '<(DEPTH)/native_client/tools.gyp:prep_toolchain',
1088 # Tests for non-SFI mode.
1092 'target_name': 'nonsfi_libc_free_nexe',
1093 'type': 'executable',
1094 'product_name': '>(nexe_destination_dir)/libc_free_>(arch_suffix)',
1095 'product_extension': 'nexe',
1097 'arch_suffix': '<(target_arch)',
1098 # This is needed, because NaCl's target_default rule is
1099 # automatically applied to all the targets in this file, and it
1100 # requires nexe_destination_dir, even if it is not important.
1101 'nexe_destination_dir': 'nacl_test_data/libc-free',
1104 'nonsfi/libc_free.c',
1106 # Here, we would like to link a relocatable, libc-free executable.
1107 # -shared/-fPIC make this binary relocatable. -nostdlib ensures
1108 # this is libc-free.
1109 # The program does not apply any dynamic relocations at start up,
1110 # so it cannot rely on relocations having been applied.
1111 # In addition, -fvisibility=hidden avoids creating some types
1115 '-fvisibility=hidden',
1117 # Stack-Smashing protector does not work with libc-free context.
1118 '-fno-stack-protector',
1119 # Optimizers may translate the original code to code which
1120 # requires builtin functions and/or relocations. Specifically,
1121 # the LLVM's optimizer translates for-loop based zero
1126 # We filter these out because release_extra_cflags or another
1127 # such thing might be adding them in, and those options wind up
1128 # coming after the -fno-stack-protector we added above.
1129 '-fstack-protector',
1130 '-fstack-protector-all',
1131 '-fprofile-generate',
1132 '-finstrument-functions',
1133 # ARM GCC emits symbols like __aeabi_unwind_cpp_pr0 in
1134 # .exidx sections with this flag.
1140 # This binary cannot relocate itself, so we should have no
1141 # undefined references left.
1142 '-Wl,--no-undefined',
1145 # Explicitly remove the -pthread flag to avoid a link time warning.
1148 # Do not use any sanitizers tools, which require a few symbols.
1150 ['exclude', '-fsanitize'],
1151 ['exclude', '^-O'], # Strip -O2, -Os etc.
1154 ['exclude', '-fsanitize'],
1157 # The code depends on NaCl's headers. This is a macro for them.
1160 # For native_client/src/include/...
1165 # Overwrite suffix for x64 and ia32 to align NaCl's naming
1167 ['target_arch=="x64"', {
1169 'arch_suffix': 'x86_64',
1172 ['target_arch=="ia32"', {
1174 'arch_suffix': 'x86_32',
1180 'target_name': 'nonsfi_libc_free',
1183 'nexe_destination_dir': 'nacl_test_data',
1184 'destination_dir': '<(PRODUCT_DIR)/>(nexe_destination_dir)/libc-free',
1186 # TODO(ncbray) move into chrome/test/data/nacl when all tests are
1188 '<(DEPTH)/ppapi/native_client/tools/browser_tester/browserdata/nacltest.js',
1189 'nonsfi/libc_free.html',
1190 'nonsfi/libc_free.nmf',
1191 'nonsfi/irt_test.html',
1195 'nonsfi_libc_free_nexe',
1197 # Because we are still under development for non-SFI mode, the
1198 # toolchain is not yet ready, which means ppapi_nacl_common does not
1199 # work well for non-SFI mode yet. Instead, we manually set up the
1200 # testing environment here.
1203 'destination': '>(destination_dir)',