| # Copyright (c) 2016, 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("../../sdk_args.gni") |
| import("../../utils/compile_platform.gni") |
| import("../application_snapshot.gni") |
| import("../create_timestamp.gni") |
| |
| create_timestamp_file("dart2js_files_stamp") { |
| path = rebase_path("../../pkg/compiler/lib") |
| output = "$target_gen_dir/dart2js_files.stamp" |
| } |
| |
| create_timestamp_file("runtime_lib_files_stamp") { |
| path = rebase_path("../../runtime/lib") |
| output = "$target_gen_dir/runtime_lib_files.stamp" |
| } |
| |
| create_timestamp_file("dartdoc_files_stamp") { |
| path = rebase_path("../../sdk/lib/_internal/dartdoc") |
| output = "$target_gen_dir/dartdoc_files.stamp" |
| } |
| |
| prebuilt_dart_action("dart2js_create_snapshot_entry") { |
| deps = [ |
| ":dart2js_files_stamp", |
| ":dartdoc_files_stamp", |
| ":runtime_lib_files_stamp", |
| ] |
| |
| output_dir = rebase_path(target_gen_dir) |
| |
| script = "create_snapshot_entry.dart" |
| |
| inputs = [ |
| "$target_gen_dir/dart2js_files.stamp", |
| "../../tools/make_version.py", |
| "../../tools/VERSION", |
| ] |
| |
| outputs = [ "$target_gen_dir/dart2js.dart" ] |
| |
| packages = "../../.packages" |
| |
| args = [ "--output_dir=$output_dir" ] |
| } |
| |
| if (dont_use_nnbd) { |
| libraries_specification_path = "sdk/lib/libraries.json" |
| } else { |
| libraries_specification_path = "sdk_nnbd/lib/libraries.json" |
| } |
| |
| application_snapshot("dart2js") { |
| deps = [ |
| ":compile_dart2js_platform", |
| ":dart2js_create_snapshot_entry", |
| ] |
| inputs = [ |
| "$root_out_dir/dart2js_platform.dill", |
| "$root_out_dir/dart2js_outline.dill", |
| ] |
| vm_args = [] |
| main_dart = "$target_gen_dir/dart2js.dart" |
| training_args = [ |
| "--packages=" + rebase_path("../../.packages"), |
| "--libraries-spec=" + rebase_path("../../$libraries_specification_path"), |
| |
| # Specifying the platform explicitly elides running the CFE on the sdk |
| # sources. |
| "--platform-binaries=" + rebase_path("$root_out_dir/"), |
| rebase_path("$target_gen_dir/dart2js.dart"), |
| ] |
| } |
| |
| compile_platform("compile_dart2js_platform") { |
| single_root_scheme = "org-dartlang-sdk" |
| single_root_base = rebase_path("../../") |
| libraries_specification_uri = |
| "org-dartlang-sdk:///$libraries_specification_path" |
| |
| outputs = [ |
| "$root_out_dir/dart2js_platform.dill", |
| "$root_out_dir/dart2js_outline.dill", |
| ] |
| |
| args = [ |
| "--target=dart2js", |
| "--no-defines", |
| "dart:core", |
| ] |
| |
| if (!dont_use_nnbd) { |
| args += [ "--enable-experiment=non-nullable" ] |
| } |
| } |
| compile_platform("compile_dart2js_server_platform") { |
| single_root_scheme = "org-dartlang-sdk" |
| single_root_base = rebase_path("../../") |
| libraries_specification_uri = |
| "org-dartlang-sdk:///$libraries_specification_path" |
| |
| outputs = [ |
| "$root_out_dir/dart2js_server_platform.dill", |
| "$root_out_dir/dart2js_server_outline.dill", |
| ] |
| |
| args = [ |
| "--target=dart2js_server", |
| "--no-defines", |
| "dart:core", |
| ] |
| |
| if (!dont_use_nnbd) { |
| args += [ "--enable-experiment=non-nullable" ] |
| } |
| } |