blob: b8412fe4332f3fd16932a53247cb4e9ae4dbbd63 [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")
group("tests") {
testonly = true
deps = [ ":driver_tools_tests" ]
}
rustc_library("lib") {
edition = "2021"
name = "driver_tools"
with_unit_tests = true
deps = [
"//sdk/fidl/fuchsia.device:fuchsia.device-rustc",
"//sdk/fidl/fuchsia.device.manager:fuchsia.device.manager-rustc",
"//sdk/fidl/fuchsia.driver.development:fuchsia.driver.development-rustc",
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework-rustc",
"//sdk/fidl/fuchsia.driver.playground:fuchsia.driver.playground-rustc",
"//sdk/fidl/fuchsia.driver.registrar:fuchsia.driver.registrar-rustc",
"//sdk/fidl/fuchsia.hardware.block:fuchsia.hardware.block-rustc",
"//sdk/fidl/fuchsia.hardware.block.partition:fuchsia.hardware.block.partition-rustc",
"//sdk/fidl/fuchsia.hardware.i2c:fuchsia.hardware.i2c-rustc",
"//sdk/fidl/fuchsia.hardware.pci:fuchsia.hardware.pci-rustc",
"//sdk/fidl/fuchsia.hardware.skipblock:fuchsia.hardware.skipblock-rustc",
"//sdk/fidl/fuchsia.input:fuchsia.input-rustc",
"//sdk/fidl/fuchsia.input.report:fuchsia.input.report-rustc",
"//sdk/fidl/fuchsia.io:fuchsia.io-rustc",
"//sdk/fidl/fuchsia.pkg:fuchsia.pkg-rustc",
"//sdk/lib/device-watcher/rust",
"//src/developer/ffx/lib/errors:lib",
"//src/devices/lib/bind",
"//src/devices/pci/bin/lspci:lib",
"//src/devices/usb/bin/lsusb:lib",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-fs",
"//src/lib/fuchsia-fs",
"//src/lib/storage/fuchsia-vfs-watcher",
"//src/lib/zircon/rust:fuchsia-zircon-status",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:argh",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:blocking",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:lazy_static",
"//third_party/rust_crates:log",
"//third_party/rust_crates:uuid",
"//third_party/rust_crates:zstd",
"//third_party/zstd",
]
test_deps = [
"//src/lib/fdio/rust:fdio",
"//src/lib/fuchsia-component",
"//src/lib/zircon/rust:fuchsia-zircon",
]
sources = [
"src/args.rs",
"src/common.rs",
"src/lib.rs",
"src/subcommands/debug_bind/args.rs",
"src/subcommands/debug_bind/mod.rs",
"src/subcommands/device/args.rs",
"src/subcommands/device/mod.rs",
"src/subcommands/dump/args.rs",
"src/subcommands/dump/mod.rs",
"src/subcommands/i2c/args.rs",
"src/subcommands/i2c/mod.rs",
"src/subcommands/i2c/subcommands/mod.rs",
"src/subcommands/i2c/subcommands/ping/args.rs",
"src/subcommands/i2c/subcommands/ping/mod.rs",
"src/subcommands/i2c/subcommands/read/args.rs",
"src/subcommands/i2c/subcommands/read/mod.rs",
"src/subcommands/i2c/subcommands/transact/args.rs",
"src/subcommands/i2c/subcommands/transact/mod.rs",
"src/subcommands/i2c/subcommands/write/args.rs",
"src/subcommands/i2c/subcommands/write/mod.rs",
"src/subcommands/list/args.rs",
"src/subcommands/list/mod.rs",
"src/subcommands/list_devices/args.rs",
"src/subcommands/list_devices/mod.rs",
"src/subcommands/list_hosts/args.rs",
"src/subcommands/list_hosts/mod.rs",
"src/subcommands/lsblk/args.rs",
"src/subcommands/lsblk/guids.rs",
"src/subcommands/lsblk/mod.rs",
"src/subcommands/lspci/args.rs",
"src/subcommands/lspci/mod.rs",
"src/subcommands/lsusb/args.rs",
"src/subcommands/lsusb/mod.rs",
"src/subcommands/mod.rs",
"src/subcommands/print_input_report/args.rs",
"src/subcommands/print_input_report/mod.rs",
"src/subcommands/print_input_report/subcommands/descriptor/args.rs",
"src/subcommands/print_input_report/subcommands/descriptor/mod.rs",
"src/subcommands/print_input_report/subcommands/feature/args.rs",
"src/subcommands/print_input_report/subcommands/feature/mod.rs",
"src/subcommands/print_input_report/subcommands/get/args.rs",
"src/subcommands/print_input_report/subcommands/get/mod.rs",
"src/subcommands/print_input_report/subcommands/mod.rs",
"src/subcommands/print_input_report/subcommands/read/args.rs",
"src/subcommands/print_input_report/subcommands/read/mod.rs",
"src/subcommands/register/args.rs",
"src/subcommands/register/mod.rs",
"src/subcommands/restart/args.rs",
"src/subcommands/restart/mod.rs",
"src/subcommands/runtool/args.rs",
"src/subcommands/runtool/mod.rs",
]
inputs = [ "//third_party/pciids/pci.ids.zst" ]
}
fuchsia_unittest_package("driver_tools_tests") {
deps = [ ":lib_test" ]
}
rustc_binary("driver_tools") {
edition = "2021"
name = "driver"
with_unit_tests = false
deps = [
":lib",
"//sdk/fidl/fuchsia.device.manager:fuchsia.device.manager-rustc",
"//sdk/fidl/fuchsia.driver.development:fuchsia.driver.development-rustc",
"//sdk/fidl/fuchsia.driver.playground:fuchsia.driver.playground-rustc",
"//sdk/fidl/fuchsia.driver.registrar:fuchsia.driver.registrar-rustc",
"//sdk/fidl/fuchsia.io:fuchsia.io-rustc",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:argh",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:futures",
]
sources = [ "src/main.rs" ]
}