blob: ddb639515182fe2150131a5fedb4de574e1c89b5 [file] [edit]
# Copyright 2023 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/bind/bind.gni")
import("//build/components.gni")
import("//build/drivers.gni")
import("//build/test.gni")
driver_bind_rules("usb_vsock_service_bind") {
rules = "meta/usb_vsock_service.bind"
bind_output = "usb-vsock-service.bindbc"
tests = "meta/bind_tests.json"
deps =
[ "//sdk/fidl/fuchsia.hardware.overnet:fuchsia.hardware.overnet_bindlib" ]
}
fuchsia_rust_driver("usb-vsock-service-driver") {
edition = "2024"
output_name = "usb-vsock-service"
with_unit_tests = true
sources = [
"src/lib.rs",
"src/vsock_service.rs",
]
deps = [
":usb_vsock_service_bind",
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework_rust",
"//sdk/fidl/fuchsia.hardware.overnet:fuchsia.hardware.overnet_rust",
"//sdk/fidl/fuchsia.hardware.vsock:fuchsia.hardware.vsock_rust",
"//sdk/fidl/fuchsia.io:fuchsia.io_rust",
"//sdk/lib/driver/component/rust",
"//sdk/lib/driver/runtime/rust",
"//sdk/rust/zx",
"//src/developer/lib/usb_vsock",
"//src/devices/bind/fuchsia.test:fuchsia.test_rust",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/sys/lib/cm_types",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
"//third_party/rust_crates:zerocopy",
]
test_deps = [
"//sdk/fidl/fuchsia.vsock:fuchsia.vsock_rust",
"//src/lib/fuchsia",
"//src/paravirtualization/vsock:lib",
]
}
fuchsia_unittest_package("usb-vsock-service-driver-unit-test") {
deps = [ ":usb-vsock-service-driver_test" ]
}
fuchsia_driver_component("usb-vsock-service") {
component_name = "usb-vsock-service"
deps = [ ":usb-vsock-service-driver" ]
info = "meta/usb_vsock_service_info.json"
manifest = "meta/usb-vsock-service.cml"
}
group("tests") {
testonly = true
deps = [
":usb-vsock-service-driver-unit-test",
":usb_vsock_service_bind_test",
]
}