diff options
Diffstat (limited to 'chromium/components/nacl.gyp')
-rw-r--r-- | chromium/components/nacl.gyp | 173 |
1 files changed, 146 insertions, 27 deletions
diff --git a/chromium/components/nacl.gyp b/chromium/components/nacl.gyp index 3a86d2df4dd..faeb887002f 100644 --- a/chromium/components/nacl.gyp +++ b/chromium/components/nacl.gyp @@ -36,6 +36,8 @@ 'nacl/loader/nacl_main_platform_delegate_win.cc', 'nacl/loader/nacl_listener.cc', 'nacl/loader/nacl_listener.h', + 'nacl/loader/nacl_trusted_listener.cc', + 'nacl/loader/nacl_trusted_listener.h', 'nacl/loader/nacl_validation_db.h', 'nacl/loader/nacl_validation_query.cc', 'nacl/loader/nacl_validation_query.h', @@ -57,8 +59,6 @@ 'sources': [ '../components/nacl/common/nacl_paths.cc', '../components/nacl/common/nacl_paths.h', - '../components/nacl/zygote/nacl_fork_delegate_linux.cc', - '../components/nacl/zygote/nacl_fork_delegate_linux.h', ], },], ], @@ -76,6 +76,7 @@ }, 'dependencies': [ '../base/base.gyp:base', + '../base/base.gyp:base_static', '../ipc/ipc.gyp:ipc', '../ppapi/native_client/src/trusted/plugin/plugin.gyp:ppGoogleNaClPluginChrome', '../ppapi/ppapi_internal.gyp:ppapi_shared', @@ -86,7 +87,6 @@ ['disable_nacl_untrusted==0', { 'dependencies': [ '../ppapi/native_client/native_client.gyp:nacl_irt', - '../ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:pnacl_irt_shim', '../ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp:pnacl_support_extension', ], }], @@ -136,21 +136,55 @@ ], # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 'msvs_disabled_warnings': [4267, ], + 'conditions': [ + ['OS=="linux"', { + 'sources': [ + '../components/nacl/zygote/nacl_fork_delegate_linux.cc', + '../components/nacl/zygote/nacl_fork_delegate_linux.h', + ], + 'dependencies': [ + # Required by nacl_fork_delegate_linux.cc. + '../sandbox/sandbox.gyp:suid_sandbox_client', + ] + }], + ], }, { 'target_name': 'nacl_renderer', 'type': 'static_library', 'sources': [ + 'nacl/renderer/file_downloader.cc', + 'nacl/renderer/file_downloader.h', + 'nacl/renderer/histogram.cc', + 'nacl/renderer/histogram.h', + 'nacl/renderer/manifest_downloader.cc', + 'nacl/renderer/manifest_downloader.h', + 'nacl/renderer/manifest_service_channel.cc', + 'nacl/renderer/manifest_service_channel.h', + 'nacl/renderer/nacl_helper.cc', + 'nacl/renderer/nacl_helper.h', + 'nacl/renderer/json_manifest.cc', + 'nacl/renderer/json_manifest.h', + 'nacl/renderer/nexe_load_manager.cc', + 'nacl/renderer/nexe_load_manager.h', 'nacl/renderer/pnacl_translation_resource_host.cc', 'nacl/renderer/pnacl_translation_resource_host.h', 'nacl/renderer/ppb_nacl_private_impl.cc', 'nacl/renderer/ppb_nacl_private_impl.h', + 'nacl/renderer/progress_event.cc', + 'nacl/renderer/progress_event.h', + 'nacl/renderer/sandbox_arch.cc', + 'nacl/renderer/sandbox_arch.h', + 'nacl/renderer/trusted_plugin_channel.cc', + 'nacl/renderer/trusted_plugin_channel.h', ], 'include_dirs': [ '..', ], 'dependencies': [ '../content/content.gyp:content_renderer', + '../third_party/jsoncpp/jsoncpp.gyp:jsoncpp', + '../third_party/WebKit/public/blink.gyp:blink', '../webkit/common/webkit_common.gyp:webkit_common', ], 'defines': [ @@ -161,7 +195,37 @@ '<@(nacl_defines)', ], }, - } + }, + { + 'target_name': 'nacl_loader_unittests', + 'type': '<(gtest_target_type)', + 'sources': [ + 'nacl/loader/run_all_unittests.cc', + ], + 'dependencies': [ + 'nacl', + '../base/base.gyp:test_support_base', + '../testing/gtest.gyp:gtest', + ], + 'conditions': [ + ['OS=="linux"', { + 'sources': [ + # TODO(mazda): Move this to browser_tests once we have + # established a way to run browser_tests on ARM Chrome OS + # devices (http://crbug.com/364729). + 'nacl/loader/nonsfi/irt_icache_unittest.cc', + # TODO(hamaji): Currently, we build them twice. Stop building + # them for components_unittests. See crbug.com/364751 + 'nacl/loader/nonsfi/nonsfi_sandbox_unittest.cc', + 'nacl/loader/nonsfi/nonsfi_sandbox_sigsys_unittest.cc', + ], + 'dependencies': [ + 'nacl_linux', + '../sandbox/sandbox.gyp:sandbox_linux_test_utils', + ], + }], + ], + }, ], 'conditions': [ ['OS=="linux"', { @@ -172,12 +236,28 @@ 'include_dirs': [ '..', ], + 'sources': [ + 'nacl/loader/nacl_helper_linux.cc', + 'nacl/loader/nacl_helper_linux.h', + ], 'dependencies': [ - 'nacl', - 'nacl_common', - '../crypto/crypto.gyp:crypto', - '../sandbox/sandbox.gyp:libc_urandom_override', - '../sandbox/sandbox.gyp:sandbox', + 'nacl_linux', + ], + 'cflags': ['-fPIE'], + 'ldflags!': [ + # Do not pick the default ASan options from + # base/debug/sanitizer_options.cc to avoid a conflict with those + # in nacl/nacl_helper_linux.cc. + '-Wl,-u_sanitizer_options_link_helper', + ], + 'link_settings': { + 'ldflags': ['-pie'], + }, + }, { + 'target_name': 'nacl_linux', + 'type': 'static_library', + 'include_dirs': [ + '..', ], 'defines': [ '<@(nacl_defines)', @@ -186,22 +266,51 @@ 'IN_NACL_HELPER=1', ], 'sources': [ - 'nacl/loader/nacl_sandbox_linux.cc', - 'nacl/loader/nacl_helper_linux.cc', - 'nacl/loader/nacl_helper_linux.h', - '../base/posix/unix_domain_socket_linux.cc', - '../content/common/child_process_sandbox_support_impl_shm_linux.cc', - '../content/common/sandbox_linux/sandbox_bpf_base_policy_linux.cc', - '../content/common/sandbox_linux/sandbox_init_linux.cc', - '../content/common/sandbox_linux/sandbox_seccomp_bpf_linux.cc', - '../content/public/common/content_switches.cc', + 'nacl/loader/nonsfi/abi_conversion.cc', + 'nacl/loader/nonsfi/abi_conversion.h', + 'nacl/loader/nonsfi/elf_loader.cc', + 'nacl/loader/nonsfi/elf_loader.h', + 'nacl/loader/nonsfi/irt_basic.cc', + 'nacl/loader/nonsfi/irt_clock.cc', + 'nacl/loader/nonsfi/irt_exception_handling.cc', + 'nacl/loader/nonsfi/irt_fdio.cc', + 'nacl/loader/nonsfi/irt_futex.cc', + 'nacl/loader/nonsfi/irt_icache.cc', + 'nacl/loader/nonsfi/irt_interfaces.cc', + 'nacl/loader/nonsfi/irt_interfaces.h', + 'nacl/loader/nonsfi/irt_memory.cc', + 'nacl/loader/nonsfi/irt_ppapi.cc', + 'nacl/loader/nonsfi/irt_random.cc', + 'nacl/loader/nonsfi/irt_resource_open.cc', + 'nacl/loader/nonsfi/irt_thread.cc', + 'nacl/loader/nonsfi/irt_util.h', + 'nacl/loader/nonsfi/nonsfi_main.cc', + 'nacl/loader/nonsfi/nonsfi_main.h', + 'nacl/loader/nonsfi/nonsfi_sandbox.cc', + 'nacl/loader/nonsfi/nonsfi_sandbox.h', + 'nacl/loader/sandbox_linux/nacl_bpf_sandbox_linux.cc', + 'nacl/loader/sandbox_linux/nacl_sandbox_linux.cc', + '../ppapi/nacl_irt/irt_manifest.h', + '../ppapi/nacl_irt/manifest_service.cc', + '../ppapi/nacl_irt/manifest_service.h', + '../ppapi/nacl_irt/plugin_main.cc', + '../ppapi/nacl_irt/plugin_main.h', + '../ppapi/nacl_irt/plugin_startup.cc', + '../ppapi/nacl_irt/plugin_startup.h', + '../ppapi/nacl_irt/ppapi_dispatcher.cc', + '../ppapi/nacl_irt/ppapi_dispatcher.h', + ], + 'dependencies': [ + 'nacl', + 'nacl_common', + 'nacl_switches', + '../components/tracing.gyp:tracing', + '../crypto/crypto.gyp:crypto', + '../sandbox/sandbox.gyp:libc_urandom_override', + '../sandbox/sandbox.gyp:sandbox', + '../ppapi/ppapi_internal.gyp:ppapi_proxy', ], 'conditions': [ - ['toolkit_uses_gtk == 1', { - 'dependencies': [ - '../build/linux/system.gyp:gtk', - ], - }], ['use_glib == 1', { 'dependencies': [ '../build/linux/system.gyp:glib', @@ -209,18 +318,23 @@ }], ['os_posix == 1 and OS != "mac"', { 'conditions': [ - ['linux_use_tcmalloc==1', { + ['use_allocator!="none"', { 'dependencies': [ '../base/allocator/allocator.gyp:allocator', ], }], ], }], + ['use_seccomp_bpf == 0', { + 'sources!': [ + '../content/common/sandbox_linux/sandbox_bpf_base_policy_linux.cc', + '../content/common/sandbox_linux/sandbox_init_linux.cc', + ], + }, { + 'defines': ['USE_SECCOMP_BPF'], + }], ], 'cflags': ['-fPIE'], - 'link_settings': { - 'ldflags': ['-pie'], - }, }, ], }], @@ -356,6 +470,8 @@ 'nacl/common/nacl_host_messages.cc', 'nacl/common/nacl_messages.cc', 'nacl/common/nacl_messages.h', + 'nacl/common/nacl_nonsfi_util.cc', + 'nacl/common/nacl_nonsfi_util.h', 'nacl/common/nacl_process_type.h', 'nacl/common/nacl_sandbox_type_mac.h', 'nacl/common/nacl_types.cc', @@ -366,6 +482,9 @@ 'include_dirs': [ '..', ], + 'dependencies': [ + '../content/content.gyp:content_common', + ], }, ] } |