dart-sdk/BUILD.gn
Zachary Anderson c39525802e GN: Fix build
GN is unhappy when a rule that consumes a file generated by
another rule doesn't depend directly on that rule.

This change also quiets output from invoking Dart to follow the
rule of GN builds that a successful build generates no output.

Review URL: https://codereview.chromium.org/2446473002 .
2016-10-22 00:05:39 -07:00

158 lines
3.4 KiB
Text

# 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.
# This target will be built if no target is specified when invoking ninja.
group("default") {
deps = [
":runtime",
]
}
group("most") {
deps = [
":analysis_server",
":create_sdk",
":dart2js",
":dartanalyzer",
":dartdevc",
":runtime",
":samples",
]
}
group("runtime") {
deps = [
"runtime/bin:dart",
"runtime/bin:dart_bootstrap($host_toolchain)",
"runtime/bin:run_vm_tests",
"runtime/bin:process_test",
"runtime/bin:test_extension",
"runtime/bin:sample_extension",
]
}
group("runtime_precompiled") {
deps = [
"runtime/bin:dart_precompiled_runtime",
"runtime/bin:dart_bootstrap($host_toolchain)",
]
}
group("runtime_and_noopt") {
deps = [
"runtime/bin:dart",
"runtime/bin:dart_noopt",
"runtime/bin:dart_bootstrap($host_toolchain)",
"runtime/bin:run_vm_tests",
"runtime/bin:process_test",
"runtime/bin:test_extension",
"runtime/bin:sample_extension",
]
}
action("create_sdk") {
deps = [
"runtime/bin:dart",
"utils/analysis_server",
"utils/compiler:dart2js",
"utils/compiler:utils_wrapper",
"utils/dartanalyzer:generate_dartanalyzer_snapshot",
"utils/dartanalyzer:generate_summary_spec",
"utils/dartanalyzer:generate_summary_strong",
"utils/dartdevc",
"utils/dartdoc",
"utils/dartfmt",
"utils/pub",
]
sdk_lib_files = exec_script("tools/list_dart_files.py",
[rebase_path("sdk/lib")],
"list lines")
preamble_files = exec_script("tools/list_files.py",
["", rebase_path("sdk/lib/_internal/js_runtime/lib/preambles")],
"list lines")
sdk_bin_files = exec_script("tools/list_files.py",
["", rebase_path("sdk/bin")],
"list lines")
inputs = rebase_path(sdk_lib_files, "", "sdk/lib") +
rebase_path(preamble_files, "", "sdk/lib") +
rebase_path(sdk_bin_files, "", "sdk/bin") + [
"sdk/lib/dart_client.platform",
"sdk/lib/dart_server.platform",
"sdk/lib/dart_shared.platform",
"$root_gen_dir/dart2js.dart.snapshot",
"$root_gen_dir/utils_wrapper.dart.snapshot",
"$root_gen_dir/pub.dart.snapshot",
"$root_gen_dir/dartanalyzer.dart.snapshot",
"$root_gen_dir/dartdevc.dart.snapshot",
"$root_gen_dir/dartfmt.dart.snapshot",
"$root_gen_dir/analysis_server.dart.snapshot",
"$root_gen_dir/dartdoc.dart.snapshot",
"$root_gen_dir/spec.sum",
"$root_gen_dir/strong.sum",
"tools/VERSION"
]
outputs = [
"$root_out_dir/dart-sdk/README",
]
script = "tools/create_sdk.py"
args = [
"--sdk_output_dir",
rebase_path("$root_out_dir/dart-sdk"),
"--snapshot_location",
rebase_path("$root_gen_dir"),
]
}
group("dart2js") {
deps = [
"utils/compiler:dart2js"
]
}
group("dartanalyzer") {
deps = [
"utils/dartanalyzer"
]
}
group("dartdevc") {
deps = [
"utils/dartdevc"
]
}
group("dartfmt") {
deps = [
"utils/dartfmt"
]
}
group("analysis_server") {
deps = [
"utils/analysis_server"
]
}
# This is the target that is built on the dart2js build bots.
# It must depend on anything that is required by the dart2js
# test suites.
group("dart2js_bot") {
deps = [
":create_sdk"
]
}
group("samples") {
deps = [
"runtime/bin:sample_extension"
]
}