| # Copyright 2016 The Chromium 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("//flutter/common/config.gni") |
| |
| vmservice_sources_gypi = |
| exec_script("//build/gypi_to_gn.py", |
| [ rebase_path("//dart/runtime/bin/vmservice/vmservice_sources.gypi") ], |
| "scope", |
| [ rebase_path("//dart/runtime/bin/vmservice/vmservice_sources.gypi") ]) |
| |
| action("gen_embedded_resources_cc") { |
| script = "//dart/runtime/tools/create_resources.py" |
| output_file = "$target_gen_dir/embedded_resources.cc" |
| outputs = [ output_file ] |
| |
| inputs = rebase_path(vmservice_sources_gypi.sources, |
| "", |
| "//dart/runtime/bin/vmservice") |
| |
| args = [ |
| "--output", |
| rebase_path(output_file), |
| "--outer_namespace", |
| "mojo", # TODO(abarth): Change namespace. |
| "--inner_namespace", |
| "dart", # TODO(abarth): Change namespace. |
| "--table_name", |
| "flutter_embedded_service_isolate", |
| "--root_prefix", |
| rebase_path("//dart/runtime/bin/"), |
| ] + rebase_path(inputs) |
| } |
| |
| source_set("embedded_resources_cc") { |
| sources = [ "$target_gen_dir/embedded_resources.cc" ] |
| deps = [ ":gen_embedded_resources_cc" ] |
| } |
| |
| source_set("runtime") { |
| sources = [ |
| "asset_font_selector.cc", |
| "asset_font_selector.h", |
| "dart_controller.cc", |
| "dart_controller.h", |
| "dart_init.cc", |
| "dart_init.h", |
| "dart_service_isolate.cc", |
| "dart_service_isolate.h", |
| "embedder_resources.cc", |
| "embedder_resources.h", |
| "platform_impl.cc", |
| "platform_impl.h", |
| "runtime_controller.cc", |
| "runtime_controller.h", |
| "runtime_delegate.cc", |
| "runtime_delegate.h", |
| "runtime_init.cc", |
| "runtime_init.h", |
| "start_up.cc", |
| "start_up.h", |
| ] |
| |
| deps = [ |
| ":embedded_resources_cc", |
| "//dart/runtime:libdart", |
| "//dart/runtime/bin:embedded_dart_io", |
| "//flutter/assets", |
| "//flutter/common", |
| "//flutter/flow", |
| "//flutter/glue", |
| "//flutter/lib/io", |
| "//flutter/lib/mojo", |
| "//flutter/lib/ui", |
| "//flutter/services/engine:interfaces", |
| "//flutter/services/pointer:interfaces", |
| "//flutter/skia", |
| "//flutter/sky/engine/platform", |
| "//lib/ftl", |
| "//lib/tonic", |
| "//mojo/public/platform/dart:mojo_internal_impl", |
| "//third_party/rapidjson", |
| ] |
| |
| if (flutter_runtime_mode != "release") { |
| deps += [ |
| "//lib/tonic/debugger", |
| ] |
| } |
| |
| if (is_android) { |
| deps += [ |
| "//flutter/lib/jni", |
| ] |
| } |
| |
| # On iOS (device), precompiled snapshots contain the instruction buffer. |
| # Generation of the same requires all application specific script code to be |
| # specified up front. In such cases, there can be no generic snapshot. |
| if (!is_ios || use_ios_simulator) { |
| deps += [ |
| "//flutter/lib/snapshot", |
| ] |
| } |
| } |