blob: 440e22a5d457de8602123fd7e7372cf3608befab [file] [log] [blame]
# Copyright 2022 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/rust/rustc_binary.gni")
import("//build/rust/rustc_library.gni")
rustc_library("lib") {
name = "ui_puppet_lib"
version = "0.1.0"
edition = "2021"
deps = [
"//sdk/fidl/fuchsia.math:fuchsia.math_rust",
"//sdk/fidl/fuchsia.ui.composition:fuchsia.ui.composition_rust",
"//sdk/fidl/fuchsia.ui.input3:fuchsia.ui.input3_rust",
"//sdk/fidl/fuchsia.ui.pointer:fuchsia.ui.pointer_rust",
"//sdk/fidl/fuchsia.ui.test.conformance:fuchsia.ui.test.conformance_rust",
"//sdk/fidl/fuchsia.ui.test.input:fuchsia.ui.test.input_rust",
"//sdk/fidl/fuchsia.ui.views:fuchsia.ui.views_rust",
"//src/lib/async-utils",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/ui/flatland-frame-scheduling:flatland-frame-scheduling-lib",
"//src/lib/ui/fuchsia-scenic",
"//src/lib/zircon/rust:fuchsia-zircon",
"//third_party/rust_crates:euclid",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:once_cell",
"//third_party/rust_crates:tracing",
]
sources = [
"src/lib.rs",
"src/presentation_loop.rs",
"src/view.rs",
]
}
rustc_binary("bin") {
output_name = "ui_puppet_bin"
edition = "2021"
deps = [
":lib",
"//src/lib/fuchsia",
"//src/lib/fuchsia-component",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:tracing",
]
sources = [ "src/main.rs" ]
}
fuchsia_component("ui-puppet-component") {
testonly = true
component_name = "ui-puppet"
manifest = "meta/ui-puppet.cml"
deps = [
":bin",
# Include some default config (it doesn't matter which, since we're going to override it).
"//src/ui/testing/test_ui_stack:flatland_scene_manager_config",
"//src/ui/testing/test_ui_stack:test-ui-stack-component",
]
}
fuchsia_package("ui-puppet") {
testonly = true
deps = [ ":ui-puppet-component" ]
}