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