blob: 99288cee68da23d8785956a932df835385d5c422 [file] [log] [blame]
# Copyright 2020 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("network-device_bind") {
rules = "network_device.bind"
bind_output = "network-device.bindbc"
tests = "bind-tests.json"
deps = [
"//sdk/fidl/fuchsia.hardware.network.driver:fuchsia.hardware.network.driver_bindlib",
"//src/devices/bind/fuchsia.network",
]
}
source_set("src") {
sources = [
"network_device.cc",
"network_device.h",
]
public_deps = [
":network-device_bind",
"device:banjo_shims_ddk",
"device:device_ddk",
"//sdk/fidl/fuchsia.hardware.network.driver:fuchsia.hardware.network.driver_cpp",
"//src/devices/lib/driver:driver_runtime",
"//src/lib/ddk",
"//src/lib/ddktl",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/sync:sync-cpp",
]
}
fuchsia_driver("network-device-driver") {
output_name = "network-device"
configs += [ "//build/config/fuchsia:enable_zircon_asserts" ]
deps = [
":src",
"//src/devices/lib/driver",
]
}
fuchsia_driver_component("network-device") {
visibility = [ ":*" ]
component_name = "network-device"
deps = [ ":network-device-driver" ]
info = "network-device-info.json"
manifest = "meta/network-device.cml"
}
fuchsia_driver_package("package") {
package_name = "network-device"
driver_components = [ ":network-device" ]
}
group("tests") {
testonly = true
deps = [
":network-device-test",
":network-device_bind_test",
"device:tests",
"mac:tests",
]
}
test("driver-test") {
output_name = "network-device-test"
sources = [
"device/test_session.cc",
"device/test_session.h",
"device/test_util.h",
"device/test_util_banjo.cc",
"device/test_util_banjo.h",
"mac/test_util.h",
"mac/test_util_banjo.cc",
"mac/test_util_banjo.h",
"network_device_test.cc",
]
deps = [
":src",
"//src/devices/lib/driver",
"//src/devices/testing/fake-bti",
"//src/devices/testing/mock-ddk",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/predicates",
"//zircon/system/ulib/zx",
]
# TODO(https://fxbug.dev/42176699): This target uses mutable tables which are deprecated,
# rather than builders.
configs += [ "//build/cpp:fidl-wire-deprecated-mutable-tables" ]
}
fuchsia_unittest_package("network-device-test") {
deps = [ ":driver-test" ]
}