OLD | NEW |
---|---|
(Empty) | |
1 # Copyright (c) 2015 The Chromium Authors. All rights reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
5 import("//build/config/features.gni") | |
6 import("//build/config/ui.gni") | |
7 import("//components/nacl/nacl_defines.gni") | |
8 | |
9 if (enable_nacl) { | |
10 nacl_sources = [ | |
Nick Bray (chromium)
2015/02/07 02:37:46
Why not inline?
Dirk Pranke
2015/02/07 02:48:03
No idea :). Will fix.
| |
11 "loader/nacl_ipc_adapter.cc", | |
12 "loader/nacl_ipc_adapter.h", | |
13 "loader/nacl_main.cc", | |
14 "loader/nacl_main_platform_delegate.h", | |
15 "loader/nacl_main_platform_delegate_linux.cc", | |
16 "loader/nacl_main_platform_delegate_mac.mm", | |
17 "loader/nacl_main_platform_delegate_win.cc", | |
18 "loader/nacl_listener.cc", | |
19 "loader/nacl_listener.h", | |
20 "loader/nacl_trusted_listener.cc", | |
21 "loader/nacl_trusted_listener.h", | |
22 "loader/nacl_validation_db.h", | |
23 "loader/nacl_validation_query.cc", | |
24 "loader/nacl_validation_query.h", | |
25 ] | |
26 | |
27 static_library("nacl") { | |
28 sources = nacl_sources | |
29 defines = nacl_defines | |
30 deps = [ | |
31 "//base", | |
32 "//base:base_static", | |
33 "//ipc", | |
34 "//ppapi:ppapi_ipc", | |
35 "//ppapi:ppapi_shared", | |
36 "//native_client/src/trusted/service_runtime:sel_main_chrome", | |
37 ] | |
38 | |
39 include_dirs = [ "//third_party/mojo/src" ] | |
40 | |
41 if (enable_nacl_untrusted) { | |
42 data_deps = [ | |
43 # TODO(GYP): handle other cpu_arch's correctly. | |
44 "//ppapi/native_client:nacl_irt(//native_client/build/toolchain/nacl:irt _x64)", | |
45 "//ppapi/native_client/src/untrusted/pnacl_support_extension", | |
46 ] | |
47 } | |
48 } | |
49 | |
50 static_library("nacl_browser") { | |
51 sources = [ | |
52 "browser/nacl_broker_host_win.cc", | |
53 "browser/nacl_broker_host_win.h", | |
54 "browser/nacl_broker_service_win.cc", | |
55 "browser/nacl_broker_service_win.h", | |
56 "browser/nacl_browser.cc", | |
57 "browser/nacl_browser.h", | |
58 "browser/nacl_file_host.cc", | |
59 "browser/nacl_file_host.h", | |
60 "browser/nacl_host_message_filter.cc", | |
61 "browser/nacl_host_message_filter.h", | |
62 "browser/nacl_process_host.cc", | |
63 "browser/nacl_process_host.h", | |
64 "browser/nacl_validation_cache.cc", | |
65 "browser/nacl_validation_cache.h", | |
66 "browser/pnacl_host.cc", | |
67 "browser/pnacl_host.h", | |
68 "browser/pnacl_translation_cache.cc", | |
69 "browser/pnacl_translation_cache.h", | |
70 "common/nacl_debug_exception_handler_win.cc", | |
71 "common/nacl_debug_exception_handler_win.h", | |
72 ] | |
73 | |
74 defines = nacl_defines | |
75 | |
76 deps = [ | |
77 ":nacl_common", | |
78 ":nacl_switches", | |
79 "//native_client/src/trusted/service_runtime:sel_main_chrome", | |
80 "//content//public/browser", | |
81 ] | |
82 | |
83 if (is_linux) { | |
84 sources += [ | |
85 "//components/nacl/zygote/nacl_fork_delegate_linux.cc", | |
86 "//components/nacl/zygote/nacl_fork_delegate_linux.h", | |
87 ] | |
88 | |
89 deps += [ "//sandbox/linux:suid_sandbox_client" ] | |
90 } | |
91 } | |
92 | |
93 static_library("nacl_renderer") { | |
94 sources = [ | |
95 "renderer/file_downloader.cc", | |
96 "renderer/file_downloader.h", | |
97 "renderer/histogram.cc", | |
98 "renderer/histogram.h", | |
99 "renderer/manifest_downloader.cc", | |
100 "renderer/manifest_downloader.h", | |
101 "renderer/manifest_service_channel.cc", | |
102 "renderer/manifest_service_channel.h", | |
103 "renderer/nacl_helper.cc", | |
104 "renderer/nacl_helper.h", | |
105 "renderer/json_manifest.cc", | |
106 "renderer/json_manifest.h", | |
107 "renderer/nexe_load_manager.cc", | |
108 "renderer/nexe_load_manager.h", | |
109 "renderer/platform_info.cc", | |
110 "renderer/platform_info.h", | |
111 "renderer/pnacl_translation_resource_host.cc", | |
112 "renderer/pnacl_translation_resource_host.h", | |
113 "renderer/ppb_nacl_private_impl.cc", | |
114 "renderer/ppb_nacl_private_impl.h", | |
115 "renderer/progress_event.cc", | |
116 "renderer/progress_event.h", | |
117 "renderer/trusted_plugin_channel.cc", | |
118 "renderer/trusted_plugin_channel.h", | |
119 ] | |
120 | |
121 defines = nacl_defines | |
122 | |
123 deps = [ | |
124 ":nacl_common", | |
125 "renderer/plugin:nacl_trusted_plugin", | |
126 "//content/public/renderer", | |
127 "//third_party/jsoncpp", | |
128 "//third_party/WebKit/public:blink", | |
129 ] | |
130 } | |
131 | |
132 executable("nacl_loader_unittests") { | |
133 testonly = true | |
134 sources = [ | |
135 "loader/run_all_unittests.cc", | |
136 ] | |
137 | |
138 deps = [ | |
139 ":nacl", | |
140 "//base/test:test_support", | |
141 "//testing/gtest", | |
142 ] | |
143 } | |
144 | |
145 if (is_linux) { | |
146 executable("nacl_helper") { | |
147 sources = [ | |
148 "loader/nacl_helper_linux.cc", | |
149 "loader/nacl_helper_linux.h", | |
150 ] | |
151 | |
152 defines = nacl_defines | |
153 | |
154 deps = [ | |
155 ":nacl_linux", | |
156 "//mojo/nacl:monacl_sel", | |
157 ] | |
158 | |
159 cflags = [ "-fPIE" ] | |
160 | |
161 ldflags = [ "-pie" ] | |
162 } | |
163 | |
164 static_library("nacl_linux") { | |
165 sources = [ | |
166 "loader/nonsfi/abi_conversion.cc", | |
167 "loader/nonsfi/abi_conversion.h", | |
168 "loader/nonsfi/elf_loader.cc", | |
169 "loader/nonsfi/elf_loader.h", | |
170 "loader/nonsfi/irt_basic.cc", | |
171 "loader/nonsfi/irt_clock.cc", | |
172 "loader/nonsfi/irt_exception_handling.cc", | |
173 "loader/nonsfi/irt_fdio.cc", | |
174 "loader/nonsfi/irt_futex.cc", | |
175 "loader/nonsfi/irt_icache.cc", | |
176 "loader/nonsfi/irt_interfaces.cc", | |
177 "loader/nonsfi/irt_interfaces.h", | |
178 "loader/nonsfi/irt_memory.cc", | |
179 "loader/nonsfi/irt_ppapi.cc", | |
180 "loader/nonsfi/irt_random.cc", | |
181 "loader/nonsfi/irt_resource_open.cc", | |
182 "loader/nonsfi/irt_thread.cc", | |
183 "loader/nonsfi/irt_util.h", | |
184 "loader/nonsfi/nonsfi_listener.cc", | |
185 "loader/nonsfi/nonsfi_listener.h", | |
186 "loader/nonsfi/nonsfi_main.cc", | |
187 "loader/nonsfi/nonsfi_main.h", | |
188 "loader/nonsfi/nonsfi_sandbox.cc", | |
189 "loader/nonsfi/nonsfi_sandbox.h", | |
190 "loader/sandbox_linux/nacl_bpf_sandbox_linux.cc", | |
191 "loader/sandbox_linux/nacl_sandbox_linux.cc", | |
192 "//ppapi/nacl_irt/irt_manifest.h", | |
193 "//ppapi/nacl_irt/manifest_service.cc", | |
194 "//ppapi/nacl_irt/manifest_service.h", | |
195 "//ppapi/nacl_irt/plugin_main.cc", | |
196 "//ppapi/nacl_irt/plugin_main.h", | |
197 "//ppapi/nacl_irt/plugin_startup.cc", | |
198 "//ppapi/nacl_irt/plugin_startup.h", | |
199 "//ppapi/nacl_irt/ppapi_dispatcher.cc", | |
200 "//ppapi/nacl_irt/ppapi_dispatcher.h", | |
201 ] | |
202 | |
203 defines = nacl_defines + [ "IN_NACL_HELPER=1" ] | |
204 | |
205 deps = [ | |
206 ":nacl", | |
207 ":nacl_common", | |
208 ":nacl_switches", | |
209 "//components/tracing", | |
210 "//crypto", | |
211 "//ppapi:ppapi_proxy", | |
212 "//sandbox/linux:libc_urandom_override", | |
213 "//sandbox", | |
214 ] | |
215 | |
216 if (use_glib) { | |
217 configs += [ "//build/config/linux:glib" ] | |
218 } | |
219 | |
220 if (use_seccomp_bpf) { | |
221 defines += [ "USE_SECCOMP_BPF" ] | |
222 } | |
223 } | |
224 } | |
225 } else { | |
226 group("nacl") { | |
227 } | |
228 } | |
229 | |
230 static_library("nacl_switches") { | |
231 sources = [ | |
232 "common/nacl_switches.cc", | |
233 "common/nacl_switches.h", | |
234 ] | |
235 } | |
236 | |
237 static_library("nacl_common") { | |
238 sources = [ | |
239 "common/nacl_cmd_line.cc", | |
240 "common/nacl_cmd_line.h", | |
241 "common/nacl_constants.cc", | |
242 "common/nacl_constants.h", | |
243 "common/nacl_host_messages.h", | |
244 "common/nacl_host_messages.cc", | |
245 "common/nacl_messages.cc", | |
246 "common/nacl_messages.h", | |
247 "common/nacl_nonsfi_util.cc", | |
248 "common/nacl_nonsfi_util.h", | |
249 "common/nacl_process_type.h", | |
250 "common/nacl_renderer_messages.h", | |
251 "common/nacl_renderer_messages.cc", | |
252 "common/nacl_sandbox_type_mac.h", | |
253 "common/nacl_types.cc", | |
254 "common/nacl_types.h", | |
255 "common/nacl_types_param_traits.cc", | |
256 "common/nacl_types_param_traits.h", | |
257 "common/pnacl_types.cc", | |
258 "common/pnacl_types.h", | |
259 ] | |
260 | |
261 defines = nacl_defines | |
262 | |
263 deps = [ | |
264 "//content/public/common", | |
265 ] | |
266 | |
267 if (is_linux) { | |
268 sources += [ | |
269 "common/nacl_paths.cc", | |
270 "common/nacl_paths.h", | |
271 ] | |
272 | |
273 defines += [ "__STDC_LIMIT_MACROS=1" ] | |
274 } | |
275 } | |
OLD | NEW |