# 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")
import("//tools/fidl/measure-tape/measure_tape.gni")

fidl("fuchsia.bluetooth.le") {
  sdk_category = "partner"
  sdk_area = "Unknown"

  sources = [
    "advertising_data.fidl",
    "central.fidl",
    "codec_delay.fidl",
    "connection_options.fidl",
    "iso.fidl",
    "overview.fidl",
    "peer.fidl",
    "peripheral.fidl",
    "types_deprecated.fidl",
  ]

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

  enable_hlcpp = true
}

measure_tape("hlcpp_measure_tape_for_peer") {
  target_binding = "hlcpp"
  target_types = [ "fuchsia.bluetooth.le/Peer" ]
  fidls = [
    "//sdk/fidl/fuchsia.bluetooth",
    "//sdk/fidl/fuchsia.bluetooth.le",
  ]
}
