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

group("input") {
  deps = [ "drivers" ]
}

group("drivers") {
  testonly = true
  deps = [
    "drivers/cypress",
    "drivers/focaltech",
    "drivers/focaltech:focaltech-sherlock",
    "drivers/goldfish_sensor:sensor_driver",
    "drivers/goodix",
    "drivers/gt6853:gt6853-module",
    "drivers/hid",
    "drivers/hid-buttons",
    "drivers/hid-input-report",
    "drivers/hid-input-report:hid-input-report-v2",
    "drivers/hidctl",
    "drivers/i2c-hid",
    "drivers/usb-hid:usb-hid",
    "drivers/usb-hid:usb-one-endpoint-hid-fake-usb",
    "drivers/usb-hid:usb-two-endpoint-hid-fake-usb",
    "drivers/virtio:virtio_input",
  ]

  if (current_cpu == "x64") {
    deps += [ "drivers/pc-ps2" ]
  }
}

group("tests") {
  testonly = true

  deps = [
    "drivers:tests",
    "lib:tests",
    "tests",
    "text:tests",
  ]
}
