| # Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
| # for details. All rights reserved. Use of this source code is governed by a |
| # BSD-style license that can be found in the LICENSE file. |
| |
| import("../../build/dart/dart_action.gni") |
| import("../../build/dart/dart_host_sdk_toolchain.gni") |
| import("../../runtime/runtime_args.gni") |
| import("../application_snapshot.gni") |
| |
| group("kernel-service") { |
| if (create_kernel_service_snapshot) { |
| deps = [ |
| # TODO(rmacnak): Link this into 'dart'. |
| ":copy_kernel-service_snapshot", |
| ] |
| } else { |
| deps = [ |
| ":kernel_service_dill", |
| ] |
| } |
| } |
| |
| # TODO: Switch this to use kernel based app-jit snapshot |
| # when we are ready to switch to the kernel based core snapshots. |
| kernel_application_snapshot("kernel-service_snapshot") { |
| main_dart = "$root_gen_dir/kernel_service.dill" |
| deps = [ |
| ":kernel_service_dill", |
| ] |
| training_args = [ |
| "--train", |
| "file:///" + rebase_path("../../pkg/compiler/lib/src/dart2js.dart"), |
| ] |
| output = "$root_gen_dir/kernel-service.dart.snapshot" |
| } |
| |
| copy("copy_kernel-service_snapshot") { |
| deps = [ |
| ":kernel-service_snapshot", |
| ] |
| sources = [ |
| "$root_gen_dir/kernel-service.dart.snapshot", |
| ] |
| outputs = [ |
| "$root_out_dir/kernel-service.dart.snapshot", |
| ] |
| } |
| |
| application_snapshot("frontend_server") { |
| main_dart = "../../pkg/vm/bin/frontend_server_starter.dart" |
| deps = [ |
| "../../runtime/vm:kernel_platform_files($dart_host_toolchain)", |
| ] |
| sdk_root = rebase_path("$root_out_dir") |
| training_args = [ |
| "--train", |
| "--sdk-root=$sdk_root/", |
| "--platform=$sdk_root/vm_platform_strong.dill", |
| ] |
| output = "$root_out_dir/frontend_server.dart.snapshot" |
| } |
| |
| prebuilt_dart_action("kernel_service_dill") { |
| deps = [ |
| "../../runtime/vm:kernel_platform_files($dart_host_toolchain)", |
| "../../runtime/vm:vm_platform", |
| ] |
| kernel_service_script = "../../pkg/vm/bin/kernel_service.dart" |
| gen_kernel_script = "../../pkg/vm/bin/gen_kernel.dart" |
| |
| inputs = [ |
| gen_kernel_script, |
| kernel_service_script, |
| "$root_out_dir/vm_platform_strong.dill", |
| ] |
| output = "$root_gen_dir/kernel_service.dill" |
| outputs = [ |
| output, |
| ] |
| |
| depfile = "$root_gen_dir/kernel_service_dill.d" |
| abs_depfile = rebase_path(depfile) |
| rebased_output = rebase_path(output, root_build_dir) |
| vm_args = [ |
| "--depfile=$abs_depfile", |
| "--depfile_output_filename=$rebased_output", |
| ] |
| |
| script = gen_kernel_script |
| |
| args = [ |
| "--packages=" + rebase_path("../../.packages"), |
| "--platform=" + rebase_path("$root_out_dir/vm_platform_strong.dill"), |
| "--no-aot", |
| "--no-embed-sources", |
| "--output=" + rebase_path("$root_gen_dir/kernel_service.dill"), |
| rebase_path(kernel_service_script), |
| ] |
| } |