blob: 6797f682b6f3c1f81fff64758fbbd1ea5a65b0bd [file] [log] [blame]
# Copyright 2021 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/fidl/fidl.gni")
import("//build/icu/icu_fuchsia_component.gni")
import("//build/icu/icu_fuchsia_package.gni")
import("//build/icu/icu_rustc_binary.gni")
icu_rustc_binary("scene_manager_bin") {
output_name = "scene_manager"
with_unit_tests = true
edition = "2021"
icu_deps = [
"//src/lib/icu_data/rust/icu_data:icu_data",
"//src/ui/lib/input_pipeline:input_pipeline",
"//src/ui/lib/scene_management:scene_management",
]
deps = [
":scene_manager_structured_config",
"//sdk/fidl/fuchsia.accessibility:fuchsia.accessibility_rust",
"//sdk/fidl/fuchsia.accessibility.scene:fuchsia.accessibility.scene_rust",
"//sdk/fidl/fuchsia.element:fuchsia.element_rust",
"//sdk/fidl/fuchsia.factory:fuchsia.factory_rust",
"//sdk/fidl/fuchsia.input.injection:fuchsia.input.injection_rust",
"//sdk/fidl/fuchsia.input.interaction:fuchsia.input.interaction_rust",
"//sdk/fidl/fuchsia.input.interaction.observation:fuchsia.input.interaction.observation_rust",
"//sdk/fidl/fuchsia.lightsensor:fuchsia.lightsensor_rust",
"//sdk/fidl/fuchsia.recovery.policy:fuchsia.recovery.policy_rust",
"//sdk/fidl/fuchsia.recovery.ui:fuchsia.recovery.ui_rust",
"//sdk/fidl/fuchsia.session.scene:fuchsia.session.scene_rust",
"//sdk/fidl/fuchsia.settings:fuchsia.settings_rust",
"//sdk/fidl/fuchsia.ui.brightness:fuchsia.ui.brightness_rust",
"//sdk/fidl/fuchsia.ui.composition:fuchsia.ui.composition_rust",
"//sdk/fidl/fuchsia.ui.composition.internal:fuchsia.ui.composition.internal_rust",
"//sdk/fidl/fuchsia.ui.display.color:fuchsia.ui.display.color_rust",
"//sdk/fidl/fuchsia.ui.display.singleton:fuchsia.ui.display.singleton_rust",
"//sdk/fidl/fuchsia.ui.focus:fuchsia.ui.focus_rust",
"//sdk/fidl/fuchsia.ui.pointerinjector.configuration:fuchsia.ui.pointerinjector.configuration_rust",
"//sdk/fidl/fuchsia.ui.policy:fuchsia.ui.policy_rust",
"//src/lib/diagnostics/inspect/runtime/rust",
"//src/lib/diagnostics/inspect/rust",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/trace/rust:trace-provider",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/ui/lib/focus_chain_provider:lib_with_includes",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:serde_json",
"//third_party/rust_crates:tracing",
]
test_deps = [
"//src/lib/ui/fuchsia-scenic",
"//src/ui/lib/scene_management:scene_management_mocks",
"//third_party/rust_crates:assert_matches",
]
sources = [
"src/color_transform_manager.rs",
"src/factory_reset_countdown_server.rs",
"src/factory_reset_device_server.rs",
"src/input_device_registry_server.rs",
"src/input_pipeline.rs",
"src/light_sensor_server.rs",
"src/main.rs",
"src/media_buttons_listener_registry_server.rs",
]
}
fuchsia_component_manifest("manifest") {
component_name = "scene_manager"
manifest = "meta/scene_manager.cml"
}
icu_fuchsia_component("scene_manager_component") {
cm_label = ":manifest"
icu_deps = [
":scene_manager_bin",
"//src/lib/icu:icudtl",
]
}
# TODO(https://fxbug.dev/42057898): Remove test-only target when
# default config values are available.
group("scene_manager_component_for_test") {
deps = [
":config_for_test",
":scene_manager_component",
]
}
icu_fuchsia_package("scene_manager") {
validate_structured_config = false
icu_deps = [ ":scene_manager_component" ]
}
fuchsia_unittest_package("scene_manager_tests") {
deps = [ ":scene_manager_bin_test" ]
test_type = "system"
}
fuchsia_structured_config_rust_lib("scene_manager_structured_config") {
cm_label = ":manifest"
}
fuchsia_structured_config_values("config_for_test") {
visibility = [ ":scene_manager_component_for_test" ]
cm_label = ":manifest"
values = {
idle_threshold_ms = 5000
supported_input_devices = [
"button",
"keyboard",
"lightsensor",
"mouse",
"touchscreen",
]
display_rotation = 270
display_pixel_density = "4.1668"
viewing_distance = "near"
}
}