blob: 600d9b454cdde6f36456fa8154f69ad94212464c [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/config/fuchsia/rules.gni")
import("//build/dist/component_manifest_resources.gni")
import("//build/rust/rustc_binary.gni")
import("//build/rust/rustc_library.gni")
group("bootfs") {
deps = [
":bin",
":meta",
]
}
group("tests") {
testonly = true
deps = [ ":virtual_console_tests" ]
}
component_manifest_resources("meta") {
sources = [ "meta/virtual-console.cml" ]
}
resource("robotoslab") {
sources = [ "//prebuilt/third_party/fonts/robotoslab/RobotoSlab-Regular.ttf" ]
outputs = [ "data/fonts/{{source_file_part}}" ]
}
rustc_library("lib") {
name = "virtual_console_lib"
edition = "2018"
with_unit_tests = true
sources = [
"src/app.rs",
"src/lib.rs",
"src/session_manager.rs",
"src/view.rs",
]
deps = [
":robotoslab",
"//sdk/fidl/fuchsia.hardware.pty:fuchsia.hardware.pty-rustc",
"//sdk/fidl/fuchsia.virtualconsole:fuchsia.virtualconsole-rustc",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/pty",
"//src/lib/ui/carnelian",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/sys/lib/stdout-to-debuglog/rust",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:euclid",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:libc",
]
}
rustc_binary("bin") {
name = "virtual_console"
edition = "2018"
source_root = "src/main.rs"
sources = [ "src/main.rs" ]
deps = [
":lib",
"//src/lib/ui/carnelian",
"//src/lib/ui/carnelian:virtcon_config",
"//third_party/rust_crates:anyhow",
]
}
fuchsia_test_component("virtual_console_tests_component") {
deps = [ ":lib_test" ]
manifest = "meta/virtual-console-tests.cmx"
}
fuchsia_test_package("virtual_console_tests") {
test_components = [ ":virtual_console_tests_component" ]
}