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