# 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/rust/rustc_library.gni")
import("//build/rust/rustc_test.gni")

rustc_library("lib") {
  name = "usb_bulk"
  edition = "2018"
  with_unit_tests = true

  deps = [
    "//src/lib/fuchsia-async",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:lazy_static",
  ]
  non_rust_deps = [ "//src/lib/usb_bulk/cpp:usb_bulk" ]

  # The tests require a zedmon device attached to the host, and should not run
  # in the infrastructure currently.
  test_environments = []

  sources = [
    "src/lib.rs",
    "src/usb.rs",
  ]
}

group("tests") {
  public_deps = [ ":lib_test($host_toolchain)" ]
  testonly = true
}
