| 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 |