| # Copyright 2013 The Flutter 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("//third_party/dart/utils/application_snapshot.gni") |
| |
| # TODO(kaushikiska@): Leaving this here to make it a soft-transition |
| # Remove this once we no longer need engine sources in fuchsia/topaz. |
| if (is_fuchsia_host || is_fuchsia) { |
| import("//build/dart/dart_library.gni") |
| import("//build/dart/dart_tool.gni") |
| |
| dart_library("flutter_frontend_server") { |
| disable_analysis = true |
| package_name = "flutter_frontend_server" |
| |
| sources = [ |
| "server.dart", |
| ] |
| |
| deps = [ |
| "//third_party/dart-pkg/pub/args", |
| "//third_party/dart-pkg/pub/cli_util", |
| "//third_party/dart-pkg/pub/path", |
| "//third_party/dart-pkg/pub/source_maps", |
| "//third_party/dart-pkg/pub/usage", |
| "//third_party/dart/pkg/analyzer", |
| "//third_party/dart/pkg/build_integration", |
| "//third_party/dart/pkg/dev_compiler", |
| "//third_party/dart/pkg/front_end", |
| "//third_party/dart/pkg/frontend_server", |
| "//third_party/dart/pkg/kernel", |
| "//third_party/dart/pkg/vm", |
| ] |
| } |
| |
| dart_tool("frontend_server_tool") { |
| main_dart = "bin/starter.dart" |
| source_dir = "." |
| disable_analysis = true |
| output_name = "frontend_server" |
| |
| sources = [] |
| |
| deps = [ |
| ":flutter_frontend_server", |
| ] |
| } |
| } |
| |
| frontend_server_files = |
| exec_script("//third_party/dart/tools/list_dart_files.py", |
| [ |
| "absolute", |
| rebase_path("."), |
| ], |
| "list lines") |
| |
| frontend_server_files += |
| exec_script("//third_party/dart/tools/list_dart_files.py", |
| [ |
| "absolute", |
| rebase_path("../../third_party/dart/pkg"), |
| ], |
| "list lines") |
| |
| application_snapshot("frontend_server") { |
| main_dart = "bin/starter.dart" |
| deps = [ |
| ":package_incremental_compiler", |
| "//flutter/lib/snapshot:kernel_platform_files", |
| ] |
| dot_packages = rebase_path(".packages") |
| flutter_patched_sdk = rebase_path("$root_out_dir/flutter_patched_sdk") |
| training_args = [ |
| "--train", |
| "--sdk-root=$flutter_patched_sdk", |
| rebase_path(main_dart), |
| ] |
| |
| inputs = frontend_server_files |
| } |
| |
| # For flutter/flutter#36738 we make the source files available so that |
| # we can generate a local frontend_server snapshot in the tools cache. |
| action("package_incremental_compiler") { |
| script = "//flutter/flutter_frontend_server/package_incremental.py" |
| |
| inputs = frontend_server_files |
| |
| outputs = [ |
| "$root_gen_dir/dart-pkg/flutter_frontend_server/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/vm/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/build_integration/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/front_end/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/kernel/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/dev_compiler/pubspec.yaml", |
| "$root_gen_dir/dart-pkg/frontend_server/pubspec.yaml", |
| ] |
| |
| args = [ |
| "--input-root=" + rebase_path("//third_party/dart/pkg"), |
| "--output-root=" + rebase_path("$root_gen_dir/dart-pkg"), |
| "--frontend-server=" + rebase_path("//flutter"), |
| ] |
| } |