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 # TODO(brettw) can this just depend on //components/nacl/common? |
bradnelson
2016/12/16 19:00:15
Think you can drop the TODO too.
Sam McNally
2016/12/18 23:16:54
Done.
| |
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", | 200 "nacl_helper_linux.cc", |
206 "nacl_helper_linux.h", | 201 "nacl_helper_linux.h", |
207 "nacl_trusted_listener.cc", | 202 "nacl_trusted_listener.cc", |
208 "nacl_trusted_listener.h", | 203 "nacl_trusted_listener.h", |
209 "nonsfi/nonsfi_listener.cc", | 204 "nonsfi/nonsfi_listener.cc", |
210 "nonsfi/nonsfi_listener.h", | 205 "nonsfi/nonsfi_listener.h", |
211 "nonsfi/nonsfi_main.cc", | 206 "nonsfi/nonsfi_main.cc", |
212 "nonsfi/nonsfi_main.h", | 207 "nonsfi/nonsfi_main.h", |
213 ] | 208 ] |
214 deps = [ | 209 deps = [ |
215 ":nacl_helper_nonsfi_sandbox", | 210 ":nacl_helper_nonsfi_sandbox", |
216 "//base", | 211 "//base", |
212 "//components/nacl/common:minimal", | |
217 "//components/nacl/common:switches", | 213 "//components/nacl/common:switches", |
218 "//components/tracing", | 214 "//components/tracing", |
219 "//content", | 215 "//content", |
220 "//ipc", | 216 "//ipc", |
221 "//mojo/edk/system", | 217 "//mojo/edk/system", |
222 "//native_client/src/nonsfi/irt:nacl_sys_private", | 218 "//native_client/src/nonsfi/irt:nacl_sys_private", |
223 "//native_client/src/nonsfi/loader:elf_loader", | 219 "//native_client/src/nonsfi/loader:elf_loader", |
224 | 220 |
225 # Normally libnacl is included implicitly by libc and is part of the | 221 # Normally libnacl is included implicitly by libc and is part of the |
226 # toolchain. But //build/config/nacl:compiler uses -nodefaultlibs and so | 222 # toolchain. But //build/config/nacl:compiler uses -nodefaultlibs and so |
227 # omits the default libnacl. When the nonsfi toolchain is more complete | 223 # omits the default libnacl. When the nonsfi toolchain is more complete |
228 # and that kludge is no longer required, this dependency should be | 224 # and that kludge is no longer required, this dependency should be |
229 # removed. | 225 # removed. |
230 "//native_client/src/untrusted/nacl", | 226 "//native_client/src/untrusted/nacl", |
231 "//ppapi/proxy", | 227 "//ppapi/proxy", |
232 "//sandbox/linux:sandbox", | 228 "//sandbox/linux:sandbox", |
229 "//services/service_manager/public/cpp", | |
233 ] | 230 ] |
234 } | 231 } |
235 | 232 |
236 source_set("nacl_helper_nonsfi_sandbox") { | 233 source_set("nacl_helper_nonsfi_sandbox") { |
237 set_sources_assignment_filter([]) | 234 set_sources_assignment_filter([]) |
238 sources = [ | 235 sources = [ |
239 "nonsfi/nonsfi_sandbox.cc", | 236 "nonsfi/nonsfi_sandbox.cc", |
240 "nonsfi/nonsfi_sandbox.h", | 237 "nonsfi/nonsfi_sandbox.h", |
241 "sandbox_linux/nacl_sandbox_linux.cc", | 238 "sandbox_linux/nacl_sandbox_linux.cc", |
242 "sandbox_linux/nacl_sandbox_linux.h", | 239 "sandbox_linux/nacl_sandbox_linux.h", |
243 ] | 240 ] |
244 deps = [ | 241 deps = [ |
245 "//base", | 242 "//base", |
243 "//components/nacl/common:minimal", | |
246 "//components/nacl/common:switches", | 244 "//components/nacl/common:switches", |
247 "//content", | 245 "//content", |
248 "//sandbox/linux:sandbox", | 246 "//sandbox/linux:sandbox", |
249 "//sandbox/linux:sandbox_services_headers", | 247 "//sandbox/linux:sandbox_services_headers", |
250 ] | 248 ] |
251 } | 249 } |
252 | 250 |
253 copy("nacl_helper_nonsfi_copy") { | 251 copy("nacl_helper_nonsfi_copy") { |
254 sources = [ | 252 sources = [ |
255 "${root_out_dir}/nacl_helper_nonsfi", | 253 "${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", | 286 "${root_out_dir}/nacl_helper_nonsfi_unittests_main", |
289 ] | 287 ] |
290 outputs = [ | 288 outputs = [ |
291 "${root_build_dir}/{{source_file_part}}", | 289 "${root_build_dir}/{{source_file_part}}", |
292 ] | 290 ] |
293 deps = [ | 291 deps = [ |
294 ":nacl_helper_nonsfi_unittests_main", | 292 ":nacl_helper_nonsfi_unittests_main", |
295 ] | 293 ] |
296 } | 294 } |
297 } | 295 } |
296 | |
297 service_manifest("nacl_loader_manifest") { | |
298 name = "nacl_loader" | |
299 source = "nacl_loader_manifest.json" | |
300 } | |
OLD | NEW |