summaryrefslogtreecommitdiffstats
path: root/chrome/nacl.gypi
diff options
context:
space:
mode:
authorbradchen@google.com <bradchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-16 22:21:10 +0000
committerbradchen@google.com <bradchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-16 22:21:10 +0000
commit07e0fa47f369da3e4f4694ec9871850f8e8162b1 (patch)
tree5286b5033b88840aa1930c2c5ba08b6f556c518c /chrome/nacl.gypi
parent6979bf969c6a9fcc28186333c547af477ffe94ac (diff)
downloadchromium_src-07e0fa47f369da3e4f4694ec9871850f8e8162b1.zip
chromium_src-07e0fa47f369da3e4f4694ec9871850f8e8162b1.tar.gz
chromium_src-07e0fa47f369da3e4f4694ec9871850f8e8162b1.tar.bz2
Reserve 1GB at the base address of linux nacl_helper for Native Client.
Use PathService instead of command line flag to obtain path for helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. BUG=nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7599011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97040 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/nacl.gypi')
-rw-r--r--chrome/nacl.gypi34
1 files changed, 32 insertions, 2 deletions
diff --git a/chrome/nacl.gypi b/chrome/nacl.gypi
index 9467359..b52ab0d 100644
--- a/chrome/nacl.gypi
+++ b/chrome/nacl.gypi
@@ -144,10 +144,12 @@
},
],
}],
- ['OS=="linux" and touchui == 0', {
+ ['OS=="linux"', {
'targets': [
{
- 'target_name': 'nacl_helper',
+ 'target_name': 'nacl_helper.so',
+ # 'executable' will be overridden below when we add the -shared
+ # flag; here it prevents gyp from using the --whole-archive flag
'type': 'executable',
'include_dirs': [
'..',
@@ -165,6 +167,34 @@
],
}],
],
+ 'link_settings': {
+ # NOTE: '-shared' overrides 'executable' above
+ 'ldflags': ['-shared',
+ '-Wl,--version-script=chrome/nacl/nacl_helper_exports.txt',
+ ],
+ },
+ },
+ {
+ 'target_name': 'nacl_helper_bootstrap',
+ 'type': 'executable',
+ 'dependencies': [
+ 'nacl_helper.so',
+ ],
+ 'sources': [
+ '../chrome/nacl/nacl_helper_bootstrap_linux.c',
+ ],
+ # TODO(bradchen): Delete the -B argument when Gold supports
+ # -Ttext properly. Until then use ld.bfd.
+ 'link_settings': {
+ 'ldflags': ['-B', 'tools/ld_bfd',
+ # Force text segment at 0x10000 (64KB)
+ # The max-page-size option is needed on x86-64 linux
+ # where 4K pages are not the default in the BFD linker.
+ '-Wl,-Ttext-segment,10000,-z,max-page-size=0x1000',
+ # reference nacl_helper as a shared library
+ './out/Debug/nacl_helper.so',
+ ],
+ },
},
],
}],