Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(175)

Unified Diff: ppapi/native_client/native_client.gyp

Issue 10565015: Add untrusted NaCl build for PPAPI proxy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ipc/ipc_untrusted.gyp ('k') | ppapi/ppapi_internal.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/native_client/native_client.gyp
===================================================================
--- ppapi/native_client/native_client.gyp (revision 142376)
+++ ppapi/native_client/native_client.gyp (working copy)
@@ -4,7 +4,7 @@
{
'includes': [
- '../../native_client/build/common.gypi',
+ '../../native_client/build/untrusted.gypi',
],
'conditions': [
['disable_nacl==0 and disable_nacl_untrusted==0', {
@@ -53,6 +53,12 @@
},
],
},
+ ],
+ }],
+ # TODO(bbudge) Remove the build_ppapi_ipc_proxy_untrusted flag, factor out common
+ # properties from both IRT flavors, and build them side by side.
+ ['disable_nacl==0 and disable_nacl_untrusted==0 and build_ppapi_ipc_proxy_untrusted==0', {
+ 'targets': [
{
'target_name': 'nacl_irt',
'type': 'none',
@@ -179,5 +185,160 @@
},
],
}],
+ ['disable_nacl==0 and disable_nacl_untrusted==0 and build_ppapi_ipc_proxy_untrusted==1', {
+ 'targets': [
+ {
+ 'target_name': 'nacl_irt',
+ 'type': 'none',
+ 'variables': {
+ 'nexe_target': 'nacl_irt',
+ # These out_* fields override the default filenames, which
+ # include a "_newlib" suffix.
+ 'out_newlib64': '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe',
+ 'out_newlib32': '<(PRODUCT_DIR)/nacl_irt_x86_32.nexe',
+ 'out_newlib_arm': '<(PRODUCT_DIR)/nacl_irt_arm.nexe',
+ 'build_glibc': 0,
+ 'build_newlib': 1,
+ 'include_dirs': [
+ 'lib/gl/include',
+ '..',
+ ],
+ 'link_flags': [
+ '-Wl,--start-group',
+ '-lirt_browser',
+ '-lppapi_proxy_untrusted',
+ '-lppapi_shared_untrusted',
+ '-lipc_untrusted',
+ '-lbase_untrusted',
+ '-lsrpc',
+ '-limc_syscalls',
+ '-lplatform',
+ '-lgio',
+ '-Wl,--end-group',
+ '-lm',
+ ],
+ # See http://code.google.com/p/nativeclient/issues/detail?id=2691.
+ # The PNaCl linker (gold) does not implement the "-Ttext-segment"
+ # option. However, with the linker for x86, the "-Ttext" option
+ # does not affect the executable's base address.
+ # TODO(olonho): simplify flags handling and avoid duplication
+ # with NaCl logic.
+ 'conditions': [
+ ['target_arch!="arm"',
+ {
+ 'link_flags': [
+ '-Wl,--section-start,.rodata=<(NACL_IRT_DATA_START)',
+ '-Wl,-Ttext-segment=<(NACL_IRT_TEXT_START)',
+ ]
+ }, { # target_arch == "arm"
+ 'link_flags': [
+ '-Wl,--section-start,.rodata=<(NACL_IRT_DATA_START)',
+ '-Wl,-Ttext=<(NACL_IRT_TEXT_START)',
+ '--pnacl-allow-native',
+ '-arch', 'arm',
+ '-Wt,-mtls-use-call',
+ ],
+ },
+ ],
+ ],
+ 'sources': [
+ ],
+ 'extra_args': [
+ '--strip-debug',
+ ],
+ # TODO(bradchen): get rid of extra_deps64 and extra_deps32
+ # once native_client/build/untrusted.gypi no longer needs them.
+ 'extra_deps64': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libgio.a',
+ ],
+ 'extra_deps32': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libgio.a',
+ ],
+ 'extra_deps_newlib64': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libgio.a',
+ ],
+ 'extra_deps_newlib32': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libgio.a',
+ ],
+ 'extra_deps_glibc64': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libgio.a',
+ ],
+ 'extra_deps_glibc32': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libgio.a',
+ ],
+ 'extra_deps_arm': [
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libppapi_proxy_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libppapi_shared_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libipc_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libbase_untrusted.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libirt_browser.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libsrpc.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libplatform.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libimc_syscalls.a',
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/libgio.a',
+ ],
+ },
+ 'dependencies': [
+ '../ppapi_proxy_untrusted.gyp:ppapi_proxy_untrusted',
+ '../ppapi_shared_untrusted.gyp:ppapi_shared_untrusted',
+ '../../ipc/ipc_untrusted.gyp:ipc_untrusted',
+ '../../base/base_untrusted.gyp:base_untrusted',
+ '../../native_client/src/untrusted/irt/irt.gyp:irt_browser_lib',
+ '../../native_client/src/shared/srpc/srpc.gyp:srpc_lib',
+ '../../native_client/src/shared/platform/platform.gyp:platform_lib',
+ '../../native_client/src/untrusted/nacl/nacl.gyp:imc_syscalls_lib',
+ '../../native_client/src/shared/gio/gio.gyp:gio_lib',
+ ],
+ },
+ ],
+ }],
],
}
« no previous file with comments | « ipc/ipc_untrusted.gyp ('k') | ppapi/ppapi_internal.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698