OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 import("//build/config/features.gni") | 5 import("//build/config/features.gni") |
6 import("//build/config/nacl/config.gni") | 6 import("//build/config/nacl/config.gni") |
| 7 import("//services/service_manager/public/service_manifest.gni") |
7 import("//testing/test.gni") | 8 import("//testing/test.gni") |
8 | 9 |
9 assert(enable_nacl) | 10 assert(enable_nacl) |
10 | 11 |
11 # This is separate so it can be used by ../broker:nacl64. | 12 # This is separate so it can be used by ../broker:nacl64. |
12 source_set("minimal") { | 13 source_set("minimal") { |
13 sources = [ | 14 sources = [ |
14 "nacl_ipc_adapter.cc", | 15 "nacl_ipc_adapter.cc", |
15 "nacl_ipc_adapter.h", | 16 "nacl_ipc_adapter.h", |
16 "nacl_listener.cc", | 17 "nacl_listener.cc", |
(...skipping 15 matching lines...) Expand all Loading... |
32 "//base", | 33 "//base", |
33 "//components/nacl/common:minimal", | 34 "//components/nacl/common:minimal", |
34 "//components/nacl/common:mojo_bindings", | 35 "//components/nacl/common:mojo_bindings", |
35 "//crypto", | 36 "//crypto", |
36 "//ipc", | 37 "//ipc", |
37 "//mojo/edk/system", | 38 "//mojo/edk/system", |
38 "//native_client/src/trusted/service_runtime:sel_main_chrome", | 39 "//native_client/src/trusted/service_runtime:sel_main_chrome", |
39 "//ppapi/c", | 40 "//ppapi/c", |
40 "//ppapi/proxy:ipc", | 41 "//ppapi/proxy:ipc", |
41 "//sandbox", | 42 "//sandbox", |
| 43 "//services/service_manager/public/cpp", |
42 ] | 44 ] |
43 } | 45 } |
44 | 46 |
45 # This exists just to make 'gn check' happy with :minimal and | 47 # This exists just to make 'gn check' happy with :minimal and |
46 # :nacl_helper_win_64 (below). They can't depend on //content/public/common | 48 # :nacl_helper_win_64 (below). They can't depend on //content/public/common |
47 # or anything like that, because that would bring in lots more than counts | 49 # or anything like that, because that would bring in lots more than counts |
48 # as "minimal" (stuff that should not be in the nacl64.exe build). | 50 # as "minimal" (stuff that should not be in the nacl64.exe build). |
49 source_set("minimal_content_dummy") { | 51 source_set("minimal_content_dummy") { |
50 check_includes = false | 52 check_includes = false |
51 sources = [ | 53 sources = [ |
52 "//content/public/common/child_process_sandbox_support_linux.h", | 54 "//content/public/common/child_process_sandbox_support_linux.h", |
53 "//content/public/common/content_descriptors.h", | |
54 "//content/public/common/content_switches.h", | |
55 "//content/public/common/main_function_params.h", | 55 "//content/public/common/main_function_params.h", |
56 "//content/public/common/mojo_channel_switches.h", | |
57 "//content/public/common/sandbox_init.h", | 56 "//content/public/common/sandbox_init.h", |
58 ] | 57 ] |
59 | 58 |
60 # Deps required by the above headers. | 59 # Deps required by the above headers. |
61 deps = [ | 60 deps = [ |
62 "//media:media_features", | 61 "//media:media_features", |
63 ] | 62 ] |
64 } | 63 } |
65 | 64 |
66 source_set("loader") { | 65 source_set("loader") { |
67 public_deps = [ | 66 public_deps = [ |
68 ":minimal", | 67 ":minimal", |
69 ] | 68 ] |
70 deps = [ | 69 deps = [ |
71 "//components/nacl/common", | 70 "//components/nacl/common", |
72 "//content/public/common", | 71 "//content/public/common", |
73 "//ppapi/shared_impl", | 72 "//ppapi/shared_impl", |
| 73 "//services/service_manager/public/cpp", |
74 ] | 74 ] |
75 | 75 |
76 data_deps = [ | 76 data_deps = [ |
| 77 ":nacl_loader_manifest", |
77 "//ppapi/native_client:irt", | 78 "//ppapi/native_client:irt", |
78 "//ppapi/native_client/src/untrusted/pnacl_support_extension", | 79 "//ppapi/native_client/src/untrusted/pnacl_support_extension", |
79 ] | 80 ] |
80 } | 81 } |
81 | 82 |
82 test("nacl_loader_unittests") { | 83 test("nacl_loader_unittests") { |
83 sources = [ | 84 sources = [ |
84 "nacl_ipc_adapter_unittest.cc", | 85 "nacl_ipc_adapter_unittest.cc", |
85 "nacl_validation_query_unittest.cc", | 86 "nacl_validation_query_unittest.cc", |
86 "run_all_unittests.cc", | 87 "run_all_unittests.cc", |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 "//sandbox", | 190 "//sandbox", |
190 ] | 191 ] |
191 } | 192 } |
192 } | 193 } |
193 | 194 |
194 if (is_nacl_nonsfi) { | 195 if (is_nacl_nonsfi) { |
195 executable("nacl_helper_nonsfi_nexe") { | 196 executable("nacl_helper_nonsfi_nexe") { |
196 output_name = "nacl_helper_nonsfi" | 197 output_name = "nacl_helper_nonsfi" |
197 set_sources_assignment_filter([]) | 198 set_sources_assignment_filter([]) |
198 sources = [ | 199 sources = [ |
199 # TODO(brettw) can this just depend on //components/nacl/common? | |
200 "../common/nacl_messages.cc", | |
201 "../common/nacl_messages.h", | |
202 "../common/nacl_types.cc", | |
203 "../common/nacl_types.h", | |
204 "../common/nacl_types_param_traits.cc", | |
205 "../common/nacl_types_param_traits.h", | |
206 "nacl_helper_linux.cc", | 200 "nacl_helper_linux.cc", |
207 "nacl_helper_linux.h", | 201 "nacl_helper_linux.h", |
208 "nacl_trusted_listener.cc", | 202 "nacl_trusted_listener.cc", |
209 "nacl_trusted_listener.h", | 203 "nacl_trusted_listener.h", |
210 "nonsfi/nonsfi_listener.cc", | 204 "nonsfi/nonsfi_listener.cc", |
211 "nonsfi/nonsfi_listener.h", | 205 "nonsfi/nonsfi_listener.h", |
212 "nonsfi/nonsfi_main.cc", | 206 "nonsfi/nonsfi_main.cc", |
213 "nonsfi/nonsfi_main.h", | 207 "nonsfi/nonsfi_main.h", |
214 ] | 208 ] |
215 deps = [ | 209 deps = [ |
216 ":nacl_helper_nonsfi_sandbox", | 210 ":nacl_helper_nonsfi_sandbox", |
217 "//base", | 211 "//base", |
| 212 "//components/nacl/common:minimal", |
218 "//components/nacl/common:mojo_bindings", | 213 "//components/nacl/common:mojo_bindings", |
219 "//components/nacl/common:switches", | 214 "//components/nacl/common:switches", |
220 "//components/tracing", | 215 "//components/tracing", |
221 "//content", | 216 "//content", |
222 "//ipc", | 217 "//ipc", |
223 "//mojo/edk/system", | 218 "//mojo/edk/system", |
224 "//native_client/src/nonsfi/irt:nacl_sys_private", | 219 "//native_client/src/nonsfi/irt:nacl_sys_private", |
225 "//native_client/src/nonsfi/loader:elf_loader", | 220 "//native_client/src/nonsfi/loader:elf_loader", |
226 | 221 |
227 # Normally libnacl is included implicitly by libc and is part of the | 222 # Normally libnacl is included implicitly by libc and is part of the |
228 # toolchain. But //build/config/nacl:compiler uses -nodefaultlibs and so | 223 # toolchain. But //build/config/nacl:compiler uses -nodefaultlibs and so |
229 # omits the default libnacl. When the nonsfi toolchain is more complete | 224 # omits the default libnacl. When the nonsfi toolchain is more complete |
230 # and that kludge is no longer required, this dependency should be | 225 # and that kludge is no longer required, this dependency should be |
231 # removed. | 226 # removed. |
232 "//native_client/src/untrusted/nacl", | 227 "//native_client/src/untrusted/nacl", |
233 "//ppapi/proxy", | 228 "//ppapi/proxy", |
234 "//sandbox/linux:sandbox", | 229 "//sandbox/linux:sandbox", |
| 230 "//services/service_manager/public/cpp", |
235 ] | 231 ] |
236 } | 232 } |
237 | 233 |
238 source_set("nacl_helper_nonsfi_sandbox") { | 234 source_set("nacl_helper_nonsfi_sandbox") { |
239 set_sources_assignment_filter([]) | 235 set_sources_assignment_filter([]) |
240 sources = [ | 236 sources = [ |
241 "nonsfi/nonsfi_sandbox.cc", | 237 "nonsfi/nonsfi_sandbox.cc", |
242 "nonsfi/nonsfi_sandbox.h", | 238 "nonsfi/nonsfi_sandbox.h", |
243 "sandbox_linux/nacl_sandbox_linux.cc", | 239 "sandbox_linux/nacl_sandbox_linux.cc", |
244 "sandbox_linux/nacl_sandbox_linux.h", | 240 "sandbox_linux/nacl_sandbox_linux.h", |
245 ] | 241 ] |
246 deps = [ | 242 deps = [ |
247 "//base", | 243 "//base", |
| 244 "//components/nacl/common:minimal", |
248 "//components/nacl/common:switches", | 245 "//components/nacl/common:switches", |
249 "//content", | 246 "//content", |
250 "//sandbox/linux:sandbox", | 247 "//sandbox/linux:sandbox", |
251 "//sandbox/linux:sandbox_services_headers", | 248 "//sandbox/linux:sandbox_services_headers", |
252 ] | 249 ] |
253 } | 250 } |
254 | 251 |
255 copy("nacl_helper_nonsfi_copy") { | 252 copy("nacl_helper_nonsfi_copy") { |
256 sources = [ | 253 sources = [ |
257 "${root_out_dir}/nacl_helper_nonsfi", | 254 "${root_out_dir}/nacl_helper_nonsfi", |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
290 "${root_out_dir}/nacl_helper_nonsfi_unittests_main", | 287 "${root_out_dir}/nacl_helper_nonsfi_unittests_main", |
291 ] | 288 ] |
292 outputs = [ | 289 outputs = [ |
293 "${root_build_dir}/{{source_file_part}}", | 290 "${root_build_dir}/{{source_file_part}}", |
294 ] | 291 ] |
295 deps = [ | 292 deps = [ |
296 ":nacl_helper_nonsfi_unittests_main", | 293 ":nacl_helper_nonsfi_unittests_main", |
297 ] | 294 ] |
298 } | 295 } |
299 } | 296 } |
| 297 |
| 298 service_manifest("nacl_loader_manifest") { |
| 299 name = "nacl_loader" |
| 300 source = "nacl_loader_manifest.json" |
| 301 } |
OLD | NEW |