# 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("../../utils/compile_platform.gni") import("../../utils/generate_patch_sdk.gni") import("../create_timestamp.gni") import("../application_snapshot.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" } dart_action("dart2js_create_snapshot_entry") { deps = [ ":dart2js_files_stamp", ":dartdoc_files_stamp", ":runtime_lib_files_stamp", ] # dart_action() needs kernel service snapshot to run in Dart 2 mode. # This can't be added as a dependency to dart_action() itself as it will # create a circular dependency. deps += [ "../../utils/kernel-service:kernel-service" ] output_dir = rebase_path(target_gen_dir) script = "create_snapshot_entry.dart" inputs = [ "../../sdk/lib/_internal/sdk_library_metadata/lib/libraries.dart", "$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", "--dart2js_main=pkg/compiler/lib/src/dart2js.dart", ] } 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("../../sdk/lib/libraries.json"), 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:///sdk/lib/libraries.json" outputs = [ "$root_out_dir/dart2js_platform.dill", "$root_out_dir/dart2js_outline.dill", ] args = [ "--target=dart2js", "dart:core", ] } compile_platform("compile_dart2js_server_platform") { single_root_scheme = "org-dartlang-sdk" single_root_base = rebase_path("../../") libraries_specification_uri = "org-dartlang-sdk:///sdk/lib/libraries.json" outputs = [ "$root_out_dir/dart2js_server_platform.dill", "$root_out_dir/dart2js_server_outline.dill", ] args = [ "--target=dart2js_server", "dart:core", ] }