# Copyright 2018 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/fidl/fidl.gni")

fidl("fuchsia.bluetooth.sys") {
  # TODO(fxb/35879): Remove lint exclusions by fixing known FIDL lint violations in this target
  excluded_checks = [
    "string-bounds-not-specified",
    "vector-bounds-not-specified",
  ]

  sdk_category = "partner"

  sources = [
    "access.fidl",
    "bootstrap.fidl",
    "host_watcher.fidl",
    "identity.fidl",
    "pairing_delegate.fidl",
    "peer.fidl",
  ]

  public_deps = [
    "//sdk/fidl/fuchsia.bluetooth",
    "//zircon/vdso/zx",
  ]
}
