|  | # 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("build/config/gclient_args.gni") | 
|  |  | 
|  | targetting_fuchsia = target_os == "fuchsia" | 
|  |  | 
|  | # This target will be built if no target is specified when invoking ninja. | 
|  | group("default") { | 
|  | if (targetting_fuchsia) { | 
|  | # Fuchsia has run_vm_tests marked testonly. | 
|  | testonly = true | 
|  | } | 
|  | deps = [ | 
|  | ":runtime", | 
|  | ] | 
|  | if (defined(checkout_llvm) && checkout_llvm) { | 
|  | deps += [ ":llvm_codegen" ] | 
|  | } | 
|  | } | 
|  |  | 
|  | group("most") { | 
|  | import("runtime/runtime_args.gni") | 
|  | if (targetting_fuchsia) { | 
|  | # Fuchsia has run_vm_tests marked testonly. | 
|  | testonly = true | 
|  | } | 
|  | deps = [ | 
|  | ":create_sdk", | 
|  | ":dart2js", | 
|  | ":dartanalyzer", | 
|  | ":dartdevc", | 
|  | ":runtime", | 
|  | ":samples", | 
|  | ] | 
|  | if (dart_target_arch != "arm") { | 
|  | deps += [ ":analysis_server" ] | 
|  | } | 
|  | } | 
|  |  | 
|  | group("runtime") { | 
|  | import("runtime/runtime_args.gni") | 
|  |  | 
|  | if (targetting_fuchsia) { | 
|  | # Fuchsia has run_vm_tests marked testonly. | 
|  | testonly = true | 
|  | } | 
|  | deps = [ | 
|  | "runtime/bin:dart", | 
|  | "runtime/bin:entrypoints_verification_test_extension", | 
|  | "runtime/bin:ffi_test_dynamic_library", | 
|  | "runtime/bin:ffi_test_functions", | 
|  | "runtime/bin:process_test", | 
|  | "runtime/bin:run_vm_tests", | 
|  | "runtime/bin:sample_extension", | 
|  | "runtime/bin:test_extension", | 
|  | "runtime/vm:kernel_platform_files($host_toolchain)", | 
|  | "utils/kernel-service:kernel-service", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("runtime_kernel") { | 
|  | if (targetting_fuchsia) { | 
|  | # Fuchsia has run_vm_tests marked testonly. | 
|  | testonly = true | 
|  | } | 
|  | deps = [ | 
|  | ":runtime", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("runtime_precompiled") { | 
|  | deps = [ | 
|  | "runtime/bin:dart_precompiled_runtime", | 
|  | "runtime/bin:process_test", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("create_sdk") { | 
|  | public_deps = [ | 
|  | "sdk:create_sdk", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("create_sdk_nnbd") { | 
|  | public_deps = [ | 
|  | "sdk_nnbd:create_sdk_nnbd", | 
|  | ] | 
|  | } | 
|  |  | 
|  | 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", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("check_llvm") { | 
|  | if (defined(checkout_llvm) && checkout_llvm) { | 
|  | deps = [ | 
|  | "runtime/llvm_codegen/test", | 
|  | ] | 
|  | } | 
|  | } | 
|  |  | 
|  | group("llvm_codegen") { | 
|  | if (defined(checkout_llvm) && checkout_llvm) { | 
|  | deps = [ | 
|  | "runtime/llvm_codegen/bit", | 
|  | "runtime/llvm_codegen/codegen", | 
|  | ] | 
|  | } | 
|  | } | 
|  |  | 
|  | # 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", | 
|  | ] | 
|  | } | 
|  |  | 
|  | # This rule and the compressed_observatory_archive rule are for the Fuchsia | 
|  | # bots that pre-build the Observatory. They copy the observatory tar files to | 
|  | # the root build output directory for convenient access by the Fuchsia buildbot | 
|  | # scripts. | 
|  | group("observatory_archive") { | 
|  | deps = [ | 
|  | "runtime/observatory:copy_observatory_archive", | 
|  | ] | 
|  | } | 
|  |  | 
|  | group("compressed_observatory_archive") { | 
|  | deps = [ | 
|  | "runtime/observatory:copy_compressed_observatory_archive", | 
|  | ] | 
|  | } |