blob: 7a3093b5acfabc19c023228c3935051ccf848e38 [file] [log] [blame]
# 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("../aot_snapshot.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 = "../../.dart_tool/package_config.json"
args = [ "--output_dir=$output_dir" ]
if (!dart_version_git_info) {
args += [ "--no-git-hash" ]
}
}
sdk_root = "../../sdk"
application_snapshot("dart2js") {
deps = [ ":dart2js_create_snapshot_entry" ]
training_deps = [
":compile_dart2js_platform",
":compile_dart2js_platform_unsound",
]
training_inputs = [
"$root_out_dir/dart2js_platform.dill",
"$root_out_dir/dart2js_platform_unsound.dill",
"$root_out_dir/dart2js_outline.dill",
"$root_out_dir/dart2js_outline_unsound.dill",
]
main_dart = "$target_gen_dir/dart2js.dart"
training_args = [
"--invoker=gn_build",
"--packages=" +
rebase_path("../../.dart_tool/package_config.json", root_build_dir),
"--libraries-spec=" +
rebase_path("$sdk_root/lib/libraries.json", root_build_dir),
# Specifying the platform explicitly elides running the CFE on the sdk
# sources.
"--platform-binaries=" + rebase_path("$root_out_dir/", root_build_dir),
rebase_path("../../pkg/compiler/lib/src/util/memory_compiler.dart"),
]
}
aot_snapshot("dart2js_aot") {
deps = [ ":dart2js_create_snapshot_entry" ]
main_dart = "$target_gen_dir/dart2js.dart"
name = "dart2js_aot"
}
compile_platform("compile_dart2js_platform_unsound") {
single_root_scheme = "org-dartlang-sdk"
single_root_base = rebase_path("$sdk_root/")
libraries_specification_uri = "org-dartlang-sdk:///lib/libraries.json"
outputs = [
"$root_out_dir/dart2js_platform_unsound.dill",
"$root_out_dir/dart2js_outline_unsound.dill",
]
args = [
"--target=dart2js",
"--no-defines",
"dart:core",
"--nnbd-weak",
]
}
compile_platform("compile_dart2js_platform") {
single_root_scheme = "org-dartlang-sdk"
single_root_base = rebase_path("$sdk_root/")
libraries_specification_uri = "org-dartlang-sdk:///lib/libraries.json"
outputs = [
"$root_out_dir/dart2js_platform.dill",
"$root_out_dir/dart2js_outline.dill",
]
args = [
"--target=dart2js",
"--no-defines",
"dart:core",
]
}
compile_platform("compile_dart2js_server_platform_unsound") {
single_root_scheme = "org-dartlang-sdk"
single_root_base = rebase_path("$sdk_root/")
libraries_specification_uri = "org-dartlang-sdk:///lib/libraries.json"
outputs = [
"$root_out_dir/dart2js_server_platform_unsound.dill",
"$root_out_dir/dart2js_server_outline_unsound.dill",
]
args = [
"--target=dart2js_server",
"--no-defines",
"dart:core",
"--nnbd-weak",
]
}
compile_platform("compile_dart2js_server_platform") {
single_root_scheme = "org-dartlang-sdk"
single_root_base = rebase_path("$sdk_root/")
libraries_specification_uri = "org-dartlang-sdk:///lib/libraries.json"
outputs = [
"$root_out_dir/dart2js_server_platform.dill",
"$root_out_dir/dart2js_server_outline.dill",
]
args = [
"--target=dart2js_server",
"--no-defines",
"dart:core",
]
}