OLD | NEW |
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 'target_defaults': { | 6 'target_defaults': { |
7 'variables': { | 7 'variables': { |
8 'nacl_target': 0, | 8 'nacl_target': 0, |
9 }, | 9 }, |
10 'target_conditions': [ | 10 'target_conditions': [ |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 'direct_dependent_settings': { | 137 'direct_dependent_settings': { |
138 'defines': [ | 138 'defines': [ |
139 'NACL_BLOCK_SHIFT=5', | 139 'NACL_BLOCK_SHIFT=5', |
140 'NACL_BLOCK_SIZE=32', | 140 'NACL_BLOCK_SIZE=32', |
141 '<@(nacl_defines)', | 141 '<@(nacl_defines)', |
142 ], | 142 ], |
143 }, | 143 }, |
144 }, | 144 }, |
145 ], | 145 ], |
146 }], | 146 }], |
147 ['OS=="linux" and touchui == 0', { | 147 ['OS=="linux"', { |
148 'targets': [ | 148 'targets': [ |
149 { | 149 { |
150 'target_name': 'nacl_helper', | 150 'target_name': 'nacl_helper.so', |
| 151 # 'executable' will be overridden below when we add the -shared |
| 152 # flag; here it prevents gyp from using the --whole-archive flag |
151 'type': 'executable', | 153 'type': 'executable', |
152 'include_dirs': [ | 154 'include_dirs': [ |
153 '..', | 155 '..', |
154 ], | 156 ], |
155 'dependencies': [ | 157 'dependencies': [ |
156 'nacl', | 158 'nacl', |
157 ], | 159 ], |
158 'sources': [ | 160 'sources': [ |
159 '../chrome/nacl/nacl_helper_linux.cc', | 161 '../chrome/nacl/nacl_helper_linux.cc', |
160 ], | 162 ], |
161 'conditions': [ | 163 'conditions': [ |
162 ['toolkit_uses_gtk == 1', { | 164 ['toolkit_uses_gtk == 1', { |
163 'dependencies': [ | 165 'dependencies': [ |
164 '../build/linux/system.gyp:gtk', | 166 '../build/linux/system.gyp:gtk', |
165 ], | 167 ], |
166 }], | 168 }], |
167 ], | 169 ], |
| 170 'link_settings': { |
| 171 # NOTE: '-shared' overrides 'executable' above |
| 172 'ldflags': ['-shared', |
| 173 '-Wl,--version-script=chrome/nacl/nacl_helper_exports.tx
t', |
| 174 ], |
| 175 }, |
| 176 }, |
| 177 { |
| 178 'target_name': 'nacl_helper_bootstrap', |
| 179 'type': 'executable', |
| 180 'dependencies': [ |
| 181 'nacl_helper.so', |
| 182 ], |
| 183 'sources': [ |
| 184 '../chrome/nacl/nacl_helper_bootstrap_linux.c', |
| 185 ], |
| 186 # TODO(bradchen): Delete the -B argument when Gold supports |
| 187 # -Ttext properly. Until then use ld.bfd. |
| 188 'link_settings': { |
| 189 'ldflags': ['-B', 'tools/ld_bfd', |
| 190 # Force text segment at 0x10000 (64KB) |
| 191 # The max-page-size option is needed on x86-64 linux |
| 192 # where 4K pages are not the default in the BFD linker. |
| 193 '-Wl,-Ttext-segment,10000,-z,max-page-size=0x1000', |
| 194 # reference nacl_helper as a shared library |
| 195 '<(PRODUCT_DIR)/nacl_helper.so', |
| 196 '-Wl,-rpath,<(SHARED_LIB_DIR)', |
| 197 ], |
| 198 }, |
168 }, | 199 }, |
169 ], | 200 ], |
170 }], | 201 }], |
171 ], | 202 ], |
172 } | 203 } |
OLD | NEW |