blob: b9675d0d2cb3dbc95d106e33c238ed57f7540e13 [file]
# 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/rust/rustc_binary.gni")
rustc_binary("bin") {
output_name = "flatland_view_provider"
with_unit_tests = true
version = "0.1.0"
edition = "2024"
source_root = "src/main.rs"
sources = [
"src/ash_extensions/fuchsia/buffer_collection.rs",
"src/ash_extensions/fuchsia/mod.rs",
"src/ash_extensions/mod.rs",
"src/internal_message.rs",
"src/main.rs",
"src/mouse.rs",
"src/render.rs",
"src/render_cpu.rs",
"src/render_vk.rs",
"src/touch.rs",
]
deps = [
"//sdk/fidl/fuchsia.element:fuchsia.element_rust",
"//sdk/fidl/fuchsia.images2:fuchsia.images2_rust",
"//sdk/fidl/fuchsia.math:fuchsia.math_rust",
"//sdk/fidl/fuchsia.scenic.scheduling:fuchsia.scenic.scheduling_rust",
"//sdk/fidl/fuchsia.sysmem2:fuchsia.sysmem2_rust",
"//sdk/fidl/fuchsia.ui.app:fuchsia.ui.app_rust",
"//sdk/fidl/fuchsia.ui.composition:fuchsia.ui.composition_rust",
"//sdk/fidl/fuchsia.ui.pointer:fuchsia.ui.pointer_rust",
"//sdk/fidl/fuchsia.ui.views:fuchsia.ui.views_rust",
"//sdk/rust/zx",
"//src/lib/async-utils",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-runtime",
"//src/lib/mapped-vmo",
"//src/lib/trace/rust:trace",
"//src/lib/trace/rust:trace-provider",
"//src/lib/ui/flatland-frame-scheduling:flatland-frame-scheduling-lib",
"//src/lib/ui/fuchsia-framebuffer",
"//src/lib/ui/fuchsia-scenic",
"//src/lib/vulkan",
"//src/lib/vulkan:vulkan_validation_layers",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:argh",
"//third_party/rust_crates:ash",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
]
test_deps = [
"//src/lib/fuchsia",
"//third_party/rust_crates:anyhow",
]
}
fuchsia_component("flatland-rainbow") {
component_name = "flatland-rainbow"
manifest = "meta/flatland-rainbow.cml"
deps = [ ":bin" ]
}
fuchsia_component("flatland-rainbow-vulkan") {
component_name = "flatland-rainbow-vulkan"
manifest = "meta/flatland-rainbow-vulkan.cml"
deps = [ ":bin" ]
}
fuchsia_unittest_package("flatland-rainbow-tests") {
manifest = "meta/flatland-rainbow-tests.cml"
deps = [ ":bin_test" ]
}