| # Copyright 2017 The Fuchsia Authors. 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/dart/fidl_move.gni") |
| import("//build/dart/toolchain.gni") |
| import("//build/toolchain/basic_toolchain.gni") |
| import("//build/toolchain/concurrent_jobs.gni") |
| |
| declare_args() { |
| # Maximum number of Dart processes to run in parallel. |
| # |
| # Dart analyzer uses a lot of memory which may cause issues when building |
| # with many parallel jobs e.g. when using goma. To avoid out-of-memory |
| # errors we explicitly reduce the number of jobs. |
| concurrent_dart_jobs = default_concurrent_jobs.dart |
| } |
| |
| # TODO(fxb/58062): Delete after all packages are migrated away from dart_app |
| # and flutter_app. |
| group("deprecated_dart_app_allowlist") { |
| # ________ _________ ________ ________ |
| # |\ ____\|\___ ___\\ __ \|\ __ \ |
| # \ \ \___|\|___ \ \_\ \ \|\ \ \ \|\ \ |
| # \ \_____ \ \ \ \ \ \ \\\ \ \ ____\ |
| # \|____|\ \ \ \ \ \ \ \\\ \ \ \___| |
| # ____\_\ \ \ \__\ \ \_______\ \__\ |
| # |\_________\ \|__| \|_______|\|__| |
| # \|_________| |
| # This is an allowlist of packages that have not migrated to use dart_component. |
| # This is only intended to be used as a temporary allowlist. Do not add to this list. |
| allowlist = [ |
| "//examples/fidl/dart/client:echo-dart-client", |
| "//examples/fidl/dart/request_pipelining/client:echo-launcher-dart-client", |
| "//examples/fidl/dart/request_pipelining/server:echo-launcher-dart-server", |
| "//examples/fidl/dart/server:echo-dart-server", |
| "//src/diagnostics/validator/logs/encoding/puppet/dart:log-validator-dart-puppet", |
| "//src/tests/intl/timestamp-server-dart:timestamp-server-dart", |
| "//topaz/public/dart/fuchsia_inspect/codelab/client:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/fizzbuzz:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/part_1:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/part_2:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/part_3:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/part_4:bin", |
| "//topaz/public/dart/fuchsia_inspect/codelab/part_5:bin", |
| "//topaz/public/dart/fuchsia_inspect/test/integration:dart-inspect-vmo-test-writer", |
| "//topaz/public/dart/fuchsia_inspect/test/validator_puppet:dart-inspect-validator-puppet", |
| "//topaz/public/dart/fuchsia_modular/examples/fibonacci_agent:fibonacci-agent", |
| get_label_info(dart_package_label.fuchsia_services, "dir") + |
| "/test_support:fuchsia-services-foo-test-server", |
| "//topaz/tests/dart-inspect-benchmarks:dart-inspect-benchmarks", |
| ] |
| |
| visibility = [] |
| foreach(target, allowlist) { |
| visibility += [ |
| target, |
| target + "_manifest_dist", |
| target + "_manifest_dist_generate", |
| target + "_component_manifests", |
| ] |
| } |
| } |
| |
| # Copies the patched SDK files for the dart runner |
| copy("platform_files") { |
| sources = [ |
| "//prebuilt/third_party/flutter/$target_cpu/release/aot/dart_runner_patched_sdk/platform_strong.dill", |
| "//prebuilt/third_party/flutter/$target_cpu/release/aot/dart_runner_patched_sdk/platform_strong.dill.d", |
| "//prebuilt/third_party/flutter/$target_cpu/release/aot/dart_runner_patched_sdk/vm_outline_strong.dill", |
| ] |
| outputs = [ "$root_out_dir/dart_runner_patched_sdk/{{source_file_part}}" ] |
| } |
| |
| if (current_toolchain == dart_toolchain) { |
| pool("dart_pool") { |
| depth = concurrent_dart_jobs |
| } |
| } else { |
| # A toolchain dedicated to processing and analyzing Dart packages. |
| # The only targets in this toolchain are action() targets, so it |
| # has no real tools. But every toolchain needs stamp and copy. |
| basic_toolchain("dartlang") { |
| expected_label = dart_toolchain |
| } |
| } |