| # Copyright 2019 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/components.gni") |
| import("//build/dart/dart_component.gni") |
| import("//build/dart/dart_library.gni") |
| import("//src/session/build/session_manager.gni") |
| |
| dart_library("lib") { |
| package_name = "workstation_session" |
| source_dir = "lib" |
| null_safe = true |
| sources = [ "main.dart" ] |
| deps = [ |
| "//sdk/dart/fidl", |
| "//sdk/dart/fuchsia", |
| "//sdk/dart/fuchsia_logger", |
| "//sdk/dart/fuchsia_services", |
| "//sdk/dart/fuchsia_vfs", |
| "//sdk/dart/zircon", |
| "//sdk/fidl/fuchsia.component", |
| "//sdk/fidl/fuchsia.component.decl", |
| "//sdk/fidl/fuchsia.io", |
| "//sdk/fidl/fuchsia.session.scene", |
| "//sdk/fidl/fuchsia.ui.app", |
| "//sdk/fidl/fuchsia.ui.focus", |
| "//sdk/fidl/fuchsia.ui.input", |
| "//sdk/fidl/fuchsia.ui.keyboard.focus", |
| "//sdk/fidl/fuchsia.ui.shortcut", |
| "//sdk/fidl/fuchsia.ui.views", |
| ] |
| } |
| |
| dart_component("session_component") { |
| component_name = "workstation_session" |
| manifest = "meta/workstation_session.cml" |
| deps = [ ":lib" ] |
| } |
| |
| fuchsia_component("workstation_routing") { |
| if (!dart_default_build_cfg.is_aot && !dart_default_build_cfg.is_product) { |
| manifest = "meta/workstation_routing_jit.cml" |
| } else if (!dart_default_build_cfg.is_aot && |
| dart_default_build_cfg.is_product) { |
| manifest = "meta/workstation_routing_jit_product.cml" |
| } else if (dart_default_build_cfg.is_aot && |
| !dart_default_build_cfg.is_product) { |
| manifest = "meta/workstation_routing_aot.cml" |
| } else if (dart_default_build_cfg.is_aot && |
| dart_default_build_cfg.is_product) { |
| manifest = "meta/workstation_routing_aot_product.cml" |
| } |
| } |
| |
| fuchsia_package("workstation_session_pkg") { |
| package_name = "workstation_session" |
| deps = [ |
| ":session_component", |
| ":workstation_routing", |
| ] |
| } |
| |
| session_manager_package("session_manager") { |
| config = |
| "//src/experiences/session_shells/ermine/session/session_config.json5" |
| } |
| |
| group("session") { |
| public_deps = [ ":workstation_session_pkg" ] |
| } |