# Copyright 2019 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.

driver("ethernet") {
  sources = [
    "ethernet.cpp",
  ]
  deps = [
    "$zx/system/banjo/ddk.protocol.ethernet",
    "$zx/system/fidl/fuchsia-hardware-ethernet:c",
    "$zx/system/ulib/ddk",
    "$zx/system/ulib/ddktl",
    "$zx/system/ulib/fbl",
    "$zx/system/ulib/fidl",
    "$zx/system/ulib/fidl-utils",
    "$zx/system/ulib/fzl",
    "$zx/system/ulib/zircon",
  ]
}

test("ethernet-unittest") {
  testonly = true
  output_name = "ethernet-unittest"
  sources = [
    "ethernet-test.cpp",
    "ethernet.cpp",
  ]
  deps = [
    "$zx/system/banjo/ddk.protocol.ethernet",
    "$zx/system/fidl/fuchsia-hardware-ethernet:c",
    "$zx/system/ulib/ddk",
    "$zx/system/dev/lib/fake_ddk",
    "$zx/system/ulib/ddktl",
    "$zx/system/ulib/fidl-utils",
    "$zx/system/ulib/fzl",
    "$zx/system/ulib/zxtest",
    "$zx/system/ulib/zircon",
  ]
}