| # 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/toolchain.gni") |
| import("//build/python/python_binary.gni") |
| import("//build/python/python_host_test.gni") |
| import("//build/toolchain/basic_toolchain.gni") |
| import("//build/toolchain/concurrent_jobs.gni") |
| |
| python_binary("gen_dart_package_config") { |
| main_source = "gen_dart_package_config.py" |
| deps = [ "//third_party/pyyaml:yaml" ] |
| } |
| |
| python_binary("run_analysis") { |
| main_source = "run_analysis.py" |
| deps = [ "//third_party/pyyaml:yaml" ] |
| } |
| |
| python_binary("gen_meta_file") { |
| main_source = "sdk/gen_meta_file.py" |
| deps = [ "//third_party/pyyaml:yaml" ] |
| } |
| |
| # 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/diagnostics/inspect/codelab/dart/client:bin", |
| "//examples/diagnostics/inspect/codelab/dart/fizzbuzz:bin", |
| "//examples/diagnostics/inspect/codelab/dart/part_1:bin", |
| "//examples/diagnostics/inspect/codelab/dart/part_2:bin", |
| "//examples/diagnostics/inspect/codelab/dart/part_3:bin", |
| "//examples/diagnostics/inspect/codelab/dart/part_4:bin", |
| "//examples/diagnostics/inspect/codelab/dart/part_5:bin", |
| "//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", |
| "//sdk/dart/fuchsia_inspect/test/integration:dart-inspect-vmo-test-writer", |
| "//sdk/dart/fuchsia_inspect/test/validator_puppet:dart-inspect-validator-puppet", |
| "//sdk/dart/fuchsia_services/test_support:fuchsia-services-foo-test-server", |
| "//src/diagnostics/validator/logs/encoding/puppet/dart:log-validator-dart-puppet", |
| "//src/lib/diagnostics/inspect/dart/bench:dart-inspect-benchmarks", |
| "//src/tests/intl/timestamp-server-dart:timestamp-server-dart", |
| ] |
| |
| visibility = [] |
| foreach(target, allowlist) { |
| visibility += [ |
| target, |
| target + ".pm", |
| target + "_manifest_dist", |
| target + "_manifest_dist_generate", |
| target + "_manifest_dist__hermetic_inputs", |
| 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}}" ] |
| } |
| |
| # 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 |
| } |
| |
| if (is_host) { |
| python_host_test("gen_reference_docs_test") { |
| main_source = "gen_reference_docs_test.py" |
| sources = [ |
| "gen_reference_docs.py", |
| "generate_dart_toc.py", |
| ] |
| libraries = [ "//third_party/pyyaml:yaml" ] |
| } |
| |
| python_host_test("generate_dart_toc_test") { |
| main_source = "generate_dart_toc_test.py" |
| sources = [ "generate_dart_toc.py" ] |
| libraries = [ |
| "//third_party/pyyaml:yaml", |
| "//third_party/parameterized", |
| ] |
| } |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ |
| ":gen_reference_docs_test($host_toolchain)", |
| ":generate_dart_toc_test($host_toolchain)", |
| "tests", |
| ] |
| } |
| |
| group("custom_analysis_options") { |
| # ________ _________ ________ ________ |
| # |\ ____\|\___ ___\\ __ \|\ __ \ |
| # \ \ \___|\|___ \ \_\ \ \|\ \ \ \|\ \ |
| # \ \_____ \ \ \ \ \ \ \\\ \ \ ____\ |
| # \|____|\ \ \ \ \ \ \ \\\ \ \ \___| |
| # ____\_\ \ \ \__\ \ \_______\ \__\ |
| # |\_________\ \|__| \|_______|\|__| |
| # \|_________| |
| # This is an allowlist of dart_libraries with custom analysis options, which |
| # are dart_libraries that set `options_file`. |
| # |
| # Introducing new dart_libraries with custom analysis options is not allowed. |
| # See more details in https://fxbug.dev/84787. |
| visibility = [ |
| "//build/flutter/internal/build_test_bootstrap/*", |
| "//src/tests/benchmarks/fidl/dart/*", |
| ] |
| } |