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

group("dev") {
  testonly = true
  deps = [
    "$zx/system/ulib/ddktl:ddktl-test",
    "$zx/third_party/dev/ethernet/e1000",
    "audio",
    "backlight",
    "block",
    "bluetooth",
    "board",
    "bus",
    "camera",
    "clk",
    "codec",
    "display",
    "ethernet",
    "fw",
    "gpio",
    "gpu",
    "i2c",
    "input",
    "light",
    "light-sensor",
    "misc",
    "mlg",
    "nand",
    "pci",
    "power",
    "rtc",
    "sample",
    "scpi",
    "serial",
    "sysmem",
    "tee",
    "test/isolateddevmgr:isolateddevmgr-test",
    "test/mock-device",
    "test/sysdev",
    "thermal",
    "usb",
    "virtual_camera",
  ]
}
