| Index: chrome/test/data/nacl/BUILD.gn
|
| diff --git a/chrome/test/data/nacl/BUILD.gn b/chrome/test/data/nacl/BUILD.gn
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7970bc77eb97f1686b74ce98ad1bd3acd35624b4
|
| --- /dev/null
|
| +++ b/chrome/test/data/nacl/BUILD.gn
|
| @@ -0,0 +1,597 @@
|
| +# Copyright 2015 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +import("//build/config/features.gni")
|
| +import("//build/config/nacl/config.gni")
|
| +import("//build/config/nacl/rules.gni")
|
| +
|
| +group("nacl") {
|
| + newlib = "//build/toolchain/nacl:clang_newlib_${target_cpu}"
|
| + glibc = "//build/toolchain/nacl:glibc_${target_cpu}"
|
| + pnacl = "//build/toolchain/nacl:newlib_pnacl"
|
| + deps = [
|
| + ":exit_status_test($glibc)",
|
| + ":exit_status_test($newlib)",
|
| + ":exit_status_test($pnacl)",
|
| + ":extension_validation_cache($glibc)",
|
| + ":extension_validation_cache($newlib)",
|
| + ":irt_exception_test($glibc)",
|
| + ":irt_exception_test($newlib)",
|
| + ":irt_exception_test($pnacl)",
|
| + ":irt_manifest_file($newlib)",
|
| + ":partly_invalid($newlib)",
|
| + ":pnacl_debug_url_test($pnacl)",
|
| + ":pnacl_dyncode_syscall_disabled_test($pnacl)",
|
| + ":pnacl_error_handling_test($pnacl)",
|
| + ":pnacl_hw_eh_disabled_test($pnacl)",
|
| + ":pnacl_mime_type_test($glibc)",
|
| + ":pnacl_mime_type_test($newlib)",
|
| + ":pnacl_mime_type_test($pnacl)",
|
| + ":pnacl_options_test($pnacl)",
|
| + ":ppapi_bad_get_ppp_instance_crash($newlib)",
|
| + ":ppapi_bad_no_ppp_instance($newlib)",
|
| + ":ppapi_bad_ppp_initialize($newlib)",
|
| + ":ppapi_bad_ppp_initialize_crash($newlib)",
|
| + ":ppapi_bad_ppp_instance_didcreate($newlib)",
|
| + ":ppapi_bad_ppp_instance_didcreate_crash($newlib)",
|
| + ":ppapi_crash_in_callback($glibc)",
|
| + ":ppapi_crash_in_callback($newlib)",
|
| + ":ppapi_crash_in_callback($pnacl)",
|
| + ":ppapi_crash_off_main_thread($glibc)",
|
| + ":ppapi_crash_off_main_thread($newlib)",
|
| + ":ppapi_crash_off_main_thread($pnacl)",
|
| + ":ppapi_crash_ppapi_off_main_thread($glibc)",
|
| + ":ppapi_crash_ppapi_off_main_thread($newlib)",
|
| + ":ppapi_crash_ppapi_off_main_thread($pnacl)",
|
| + ":ppapi_crash_via_check_failure($glibc)",
|
| + ":ppapi_crash_via_check_failure($newlib)",
|
| + ":ppapi_crash_via_check_failure($pnacl)",
|
| + ":ppapi_crash_via_exit_call($glibc)",
|
| + ":ppapi_crash_via_exit_call($newlib)",
|
| + ":ppapi_crash_via_exit_call($pnacl)",
|
| + ":ppapi_extension_mime_handler($newlib)",
|
| + ":ppapi_ppb_core($glibc)",
|
| + ":ppapi_ppb_core($newlib)",
|
| + ":ppapi_ppb_core($pnacl)",
|
| + ":ppapi_ppb_instance($glibc)",
|
| + ":ppapi_ppb_instance($newlib)",
|
| + ":ppapi_ppb_instance($pnacl)",
|
| + ":ppapi_ppp_instance($glibc)",
|
| + ":ppapi_ppp_instance($newlib)",
|
| + ":ppapi_ppp_instance($pnacl)",
|
| + ":ppapi_progress_events($glibc)",
|
| + ":ppapi_progress_events($newlib)",
|
| + ":ppapi_progress_events($pnacl)",
|
| + ":shared_test_files($glibc)",
|
| + ":shared_test_files($newlib)",
|
| + ":shared_test_files($pnacl)",
|
| + ":simple_test($glibc)",
|
| + ":simple_test($newlib)",
|
| + ":simple_test($pnacl)",
|
| + ":sysconf_nprocessors_onln_test($glibc)",
|
| + ":sysconf_nprocessors_onln_test($newlib)",
|
| + ":sysconf_nprocessors_onln_test($pnacl)",
|
| + ]
|
| +}
|
| +
|
| +if (is_nacl) {
|
| + template("nacl_test_data") {
|
| + if (current_cpu == "pnacl") {
|
| + variant = "pnacl"
|
| + } else if (is_nacl_glibc) {
|
| + variant = "glibc"
|
| + } else {
|
| + variant = "newlib"
|
| + }
|
| +
|
| + if (defined(invoker.sources)) {
|
| + if (defined(invoker.output_name)) {
|
| + base_target_name = invoker.output_name
|
| + } else {
|
| + base_target_name = target_name
|
| + }
|
| +
|
| + if (current_cpu == "x64") {
|
| + nmf_cpu = "x86_64"
|
| + } else if (current_cpu == "x86") {
|
| + nmf_cpu = "x86_32"
|
| + } else {
|
| + nmf_cpu = current_cpu
|
| + }
|
| + if (is_nacl_glibc) {
|
| + suffix = "glibc_${nmf_cpu}"
|
| + } else {
|
| + suffix = "newlib_${nmf_cpu}"
|
| + }
|
| + suffixed_target_name = "${base_target_name}_${suffix}"
|
| +
|
| + if (defined(invoker.generate_nmf)) {
|
| + generate_nmf = invoker.generate_nmf
|
| + } else {
|
| + generate_nmf = true
|
| + }
|
| +
|
| + nexe_target_name = target_name + "_nexe"
|
| + nexe_copy_target_name = target_name + "_copy_nexe"
|
| + if (generate_nmf) {
|
| + nmf_target_name = target_name + "_nmf"
|
| + }
|
| + }
|
| +
|
| + if (defined(invoker.test_files)) {
|
| + test_files_target_name = target_name + "_test_files"
|
| + }
|
| +
|
| + destination_dir = "nacl_test_data"
|
| + if (defined(invoker.destination_dir)) {
|
| + destination_dir += "/${invoker.destination_dir}"
|
| + }
|
| +
|
| + if (defined(invoker.sources)) {
|
| + executable(nexe_target_name) {
|
| + output_name = suffixed_target_name
|
| + sources = invoker.sources
|
| + forward_variables_from(invoker,
|
| + [
|
| + "cflags",
|
| + "ldflags",
|
| + ])
|
| + deps = [
|
| + "//ppapi:ppapi_cpp_lib",
|
| + "//ppapi/native_client:ppapi_lib",
|
| + ]
|
| + if (is_nacl_glibc) {
|
| + ldflags = [ "-pthread" ]
|
| + } else {
|
| + deps += [
|
| + "//native_client/src/untrusted/nacl",
|
| + "//native_client/src/untrusted/pthread",
|
| + ]
|
| + }
|
| + if (defined(invoker.deps)) {
|
| + deps += invoker.deps
|
| + }
|
| + }
|
| +
|
| + copy(nexe_copy_target_name) {
|
| + if (current_cpu == "pnacl") {
|
| + if (defined(invoker.nonstable_pexe) && invoker.nonstable_pexe) {
|
| + sources = [
|
| + "${root_out_dir}/exe.unstripped/${suffixed_target_name}.pexe",
|
| + ]
|
| + } else {
|
| + sources = [
|
| + "${root_out_dir}/${suffixed_target_name}.pexe",
|
| + ]
|
| + }
|
| + } else {
|
| + sources = [
|
| + "${root_out_dir}/${suffixed_target_name}.nexe",
|
| + ]
|
| + }
|
| + outputs = [
|
| + "${root_build_dir}/${destination_dir}/${variant}/{{source_file_part}}",
|
| + ]
|
| + deps = [
|
| + ":${nexe_target_name}",
|
| + ]
|
| + }
|
| + }
|
| +
|
| + if (defined(invoker.sources) && generate_nmf) {
|
| + generate_nmf(nmf_target_name) {
|
| + nmf = "${root_build_dir}/${destination_dir}/${variant}/${base_target_name}.nmf"
|
| + if (current_cpu == "pnacl") {
|
| + executables = [ "${root_build_dir}/${destination_dir}/${variant}/${suffixed_target_name}.pexe" ]
|
| + } else {
|
| + executables = [ "${root_build_dir}/${destination_dir}/${variant}/${suffixed_target_name}.nexe" ]
|
| + }
|
| + if (is_nacl_glibc) {
|
| + lib_prefix = "${base_target_name}_libs"
|
| + stage_dependencies = "${root_build_dir}/${destination_dir}/${variant}"
|
| + }
|
| + if (defined(invoker.nmfflags)) {
|
| + nmfflags = invoker.nmfflags
|
| + }
|
| + deps = [
|
| + ":${nexe_copy_target_name}",
|
| + ]
|
| + }
|
| + }
|
| +
|
| + if (defined(invoker.test_files)) {
|
| + copy(test_files_target_name) {
|
| + sources = invoker.test_files
|
| + outputs = [
|
| + "${root_build_dir}/${destination_dir}/${variant}/{{source_file_part}}",
|
| + ]
|
| + if (defined(invoker.sources)) {
|
| + deps = [
|
| + ":${nexe_target_name}",
|
| + ]
|
| + }
|
| + }
|
| + }
|
| +
|
| + group(target_name) {
|
| + data_deps = []
|
| + if (defined(invoker.sources)) {
|
| + data_deps += [ ":${nexe_copy_target_name}" ]
|
| + if (generate_nmf) {
|
| + data_deps += [ ":${nmf_target_name}" ]
|
| + }
|
| + }
|
| + if (defined(invoker.test_files)) {
|
| + data_deps += [ ":${test_files_target_name}" ]
|
| + }
|
| + }
|
| + }
|
| +
|
| + nacl_test_data("shared_test_files") {
|
| + test_files = [
|
| + # TODO(ncbray) move into chrome/test/data/nacl when all tests are
|
| + # converted.
|
| + "//ppapi/native_client/tools/browser_tester/browserdata/nacltest.js",
|
| +
|
| + # Files that aren't associated with any particular executable.
|
| + "bad/ppapi_bad.html",
|
| + "bad/ppapi_bad.js",
|
| + "bad/ppapi_bad_native.html",
|
| + "bad/ppapi_bad_doesnotexist.nmf",
|
| + "bad/ppapi_bad_magic.nmf",
|
| + "bad/ppapi_bad_manifest_uses_nexes.nmf",
|
| + "bad/ppapi_bad_manifest_bad_files.nmf",
|
| + "bad/ppapi_bad_manifest_nexe_arch.nmf",
|
| + "crash/ppapi_crash.js",
|
| + "crash/ppapi_crash_via_check_failure.html",
|
| + "crash/ppapi_crash_via_exit_call.html",
|
| + "crash/ppapi_crash_in_callback.html",
|
| + "crash/ppapi_crash_ppapi_off_main_thread.html",
|
| + "crash/ppapi_crash_off_main_thread.html",
|
| + "load_util.js",
|
| + "manifest_file/test_file.txt",
|
| + "progress_event_listener.js",
|
| + "simple_cc.js",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("simple_test") {
|
| + output_name = "simple"
|
| + sources = [
|
| + "simple.cc",
|
| + ]
|
| + test_files = [ "nacl_load_test.html" ]
|
| + }
|
| +
|
| + nacl_test_data("exit_status_test") {
|
| + output_name = "pm_exit_status_test"
|
| + sources = [
|
| + "exit_status/pm_exit_status_test.cc",
|
| + ]
|
| + test_files = [ "exit_status/pm_exit_status_test.html" ]
|
| + }
|
| +
|
| + nacl_test_data("extension_validation_cache") {
|
| + sources = [
|
| + "simple.cc",
|
| + ]
|
| +
|
| + # Need a new directory to not clash with with other extension
|
| + # tests's files (e.g., manifest.json).
|
| + destination_dir = "extension_vcache_test"
|
| + test_files = [
|
| + # TODO(ncbray) move into chrome/test/data/nacl when all tests are
|
| + # converted.
|
| + "//ppapi/native_client/tools/browser_tester/browserdata/nacltest.js",
|
| + "extension_validation_cache/extension_validation_cache.html",
|
| + "extension_validation_cache/extension_validation_cache.js",
|
| +
|
| + # Turns the test data directory into an extension.
|
| + # Use a different nexe_destination_dir to isolate the files.
|
| + # Note that the .nexe names are embedded in this file.
|
| + "extension_validation_cache/manifest.json",
|
| + "load_util.js",
|
| + "simple_cc.js",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("sysconf_nprocessors_onln_test") {
|
| + sources = [
|
| + "sysconf_nprocessors_onln/sysconf_nprocessors_onln_test.cc",
|
| + ]
|
| + test_files =
|
| + [ "sysconf_nprocessors_onln/sysconf_nprocessors_onln_test.html" ]
|
| + }
|
| +
|
| + source_set("ppapi_test_lib") {
|
| + sources = [
|
| + # TODO(ncbray) move these files once SCons no longer depends on them.
|
| + "//ppapi/native_client/tests/ppapi_test_lib/get_browser_interface.cc",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/get_browser_interface.h",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/internal_utils.cc",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/internal_utils.h",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/module_instance.cc",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/test_interface.cc",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/test_interface.h",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/testable_callback.cc",
|
| + "//ppapi/native_client/tests/ppapi_test_lib/testable_callback.h",
|
| + ]
|
| + deps = [
|
| + "//native_client/src/shared/gio",
|
| + "//native_client/src/shared/platform",
|
| + "//ppapi/native_client:ppapi_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_progress_events") {
|
| + sources = [
|
| + "progress_events/ppapi_progress_events.cc",
|
| + ]
|
| + test_files = [ "progress_events/ppapi_progress_events.html" ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_ppp_initialize") {
|
| + sources = [
|
| + "bad/ppapi_bad_ppp_initialize.cc",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_ppp_initialize_crash") {
|
| + sources = [
|
| + "bad/ppapi_bad_ppp_initialize_crash.cc",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_no_ppp_instance") {
|
| + sources = [
|
| + "bad/ppapi_bad_no_ppp_instance.cc",
|
| + ]
|
| + deps = [
|
| + "//native_client/src/shared/platform",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_get_ppp_instance_crash") {
|
| + sources = [
|
| + "bad/ppapi_bad_get_ppp_instance_crash.cc",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_ppp_instance_didcreate") {
|
| + sources = [
|
| + "bad/ppapi_bad_ppp_instance_didcreate.cc",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_bad_ppp_instance_didcreate_crash") {
|
| + sources = [
|
| + "bad/ppapi_bad_ppp_instance_didcreate_crash.cc",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_crash_via_check_failure") {
|
| + sources = [
|
| + "crash/ppapi_crash_via_check_failure.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_crash_via_exit_call") {
|
| + sources = [
|
| + "crash/ppapi_crash_via_exit_call.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_crash_in_callback") {
|
| + sources = [
|
| + "crash/ppapi_crash_in_callback.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_crash_off_main_thread") {
|
| + sources = [
|
| + "crash/ppapi_crash_off_main_thread.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_crash_ppapi_off_main_thread") {
|
| + sources = [
|
| + "crash/ppapi_crash_ppapi_off_main_thread.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("irt_manifest_file") {
|
| + sources = [
|
| + "manifest_file/irt_manifest_file_test.cc",
|
| + ]
|
| + nmfflags = [
|
| + "-xtest_file:test_file.txt",
|
| + "-xnmf says hello world:test_file.txt",
|
| +
|
| + # There is no dummy_test_file.txt file intentionally. This is just for
|
| + # a test case where there is a manifest entry, but no actual file.
|
| + "-xdummy_test_file:dummy_test_file.txt",
|
| + ]
|
| + test_files = [ "manifest_file/irt_manifest_file_test.html" ]
|
| + }
|
| +
|
| + nacl_test_data("irt_exception_test") {
|
| + sources = [
|
| + "irt_exception/irt_exception_test.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + "//native_client/src/untrusted/nacl:nacl_exception",
|
| + ]
|
| + test_files = [ "irt_exception/irt_exception_test.html" ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_extension_mime_handler") {
|
| + sources = [
|
| + "extension_mime_handler/ppapi_extension_mime_handler.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + test_files = [
|
| + "extension_mime_handler/ppapi_extension_mime_handler.html",
|
| + "extension_mime_handler/mime_test_data.dat",
|
| +
|
| + # For faking the file's MIME type.
|
| + "extension_mime_handler/mime_test_data.dat.mock-http-headers",
|
| +
|
| + # Turns the test data directory into an extension. Hackish.
|
| + # Note that the .nexe names are embedded in this file.
|
| + "extension_mime_handler/manifest.json",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_debug_url_test") {
|
| + output_name = "pnacl_debug_url"
|
| + sources = [
|
| + "simple.cc",
|
| + ]
|
| + generate_nmf = false
|
| + test_files = [
|
| + "pnacl_debug_url/pnacl_debug_url.html",
|
| + "pnacl_debug_url/pnacl_has_debug.nmf",
|
| + "pnacl_debug_url/pnacl_has_debug_flag_off.nmf",
|
| + "pnacl_debug_url/pnacl_no_debug.nmf",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_error_handling_test") {
|
| + output_name = "pnacl_errors"
|
| + sources = [
|
| + "simple.cc",
|
| + ]
|
| + generate_nmf = false
|
| + if (current_cpu == "pnacl") {
|
| + nonstable_pexe = true
|
| + }
|
| + test_files = [
|
| + "pnacl_error_handling/pnacl_error_handling.html",
|
| + "pnacl_error_handling/bad.pexe",
|
| + "pnacl_error_handling/pnacl_bad_pexe.nmf",
|
| + "pnacl_error_handling/pnacl_bad_pexe_O0.nmf",
|
| + "pnacl_error_handling/pnacl_bad_doesnotexist.nmf",
|
| + "pnacl_error_handling/pnacl_illformed_manifest.nmf",
|
| + "pnacl_error_handling/pnacl_nonfinal_pexe_O0.nmf",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_mime_type_test") {
|
| + test_files = [ "pnacl_mime_type/pnacl_mime_type.html" ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_options_test") {
|
| + output_name = "pnacl_options"
|
| + sources = [
|
| + "simple.cc",
|
| + ]
|
| + generate_nmf = false
|
| + test_files = [
|
| + "pnacl_nmf_options/pnacl_options.html",
|
| + "pnacl_nmf_options/pnacl_o_0.nmf",
|
| + "pnacl_nmf_options/pnacl_o_2.nmf",
|
| + "pnacl_nmf_options/pnacl_o_large.nmf",
|
| + ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_dyncode_syscall_disabled_test") {
|
| + output_name = "pnacl_dyncode_syscall_disabled"
|
| + sources = [
|
| + "pnacl_dyncode_syscall_disabled/pnacl_dyncode_syscall_disabled.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + "//native_client/src/untrusted/nacl:nacl_dyncode_private",
|
| + ]
|
| + test_files =
|
| + [ "pnacl_dyncode_syscall_disabled/pnacl_dyncode_syscall_disabled.html" ]
|
| + }
|
| +
|
| + nacl_test_data("pnacl_hw_eh_disabled_test") {
|
| + output_name = "pnacl_hw_eh_disabled"
|
| + sources = [
|
| + "pnacl_hw_eh_disabled/pnacl_hw_eh_disabled.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + "//native_client/src/untrusted/nacl:nacl_exception_private",
|
| + ]
|
| + test_files = [ "pnacl_hw_eh_disabled/pnacl_hw_eh_disabled.html" ]
|
| + }
|
| +
|
| + # Legacy NaCl PPAPI interface tests being here.
|
| + nacl_test_data("ppapi_ppb_core") {
|
| + sources = [
|
| + "ppapi/ppb_core/ppapi_ppb_core.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + test_files = [ "ppapi/ppb_core/ppapi_ppb_core.html" ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_ppb_instance") {
|
| + sources = [
|
| + "ppapi/ppb_instance/ppapi_ppb_instance.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + test_files = [ "ppapi/ppb_instance/ppapi_ppb_instance.html" ]
|
| + }
|
| +
|
| + nacl_test_data("ppapi_ppp_instance") {
|
| + sources = [
|
| + "ppapi/ppp_instance/ppapi_ppp_instance.cc",
|
| + ]
|
| + deps = [
|
| + ":ppapi_test_lib",
|
| + ]
|
| + test_files = [
|
| + "ppapi/ppp_instance/ppapi_ppp_instance.html",
|
| + "ppapi/ppp_instance/ppapi_ppp_instance.js",
|
| + ]
|
| + }
|
| +
|
| + if (target_cpu != "arm") {
|
| + # Source file does not have asm for ARM.
|
| + nacl_test_data("partly_invalid") {
|
| + sources = [
|
| + "//native_client/tests/stubout_mode/partly_invalid.c",
|
| + ]
|
| + if (target_cpu == "mipsel") {
|
| + cflags = [
|
| + "--pnacl-mips-bias",
|
| + "-arch",
|
| + "mips32",
|
| + "--pnacl-allow-translate",
|
| + ]
|
| + ldflags = [ "--pnacl-allow-native" ]
|
| + }
|
| + }
|
| + }
|
| +
|
| + # TODO(phosek): convert the non-SFI tests.
|
| +}
|
|
|