# Copyright 2017 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/package.gni")

package("tools") {
  deps = [
    "bt-cli:bin",
    "bt-snoop-cli:bin",
    "bt-fake-hci",
    "bt-hci-tool",
    "bt-intel-tool",
    "bt-le-central",
    "bt-le-peripheral",
    "bt-pairing-tool",
  ]

  binaries = [
    {
      name = "bt_cli"
      dest = "bt-cli"
      shell = true
    },
    {
      name = "bt_snoop_cli"
      dest = "bt-snoop-cli"
      shell = true
    },
    {
      name = "bt_fake_hci"
      dest = "bt-fake-hci"
      shell = true
    },
    {
      name = "bt-hci-tool"
      shell = true
    },
    {
      name = "bt-intel-tool"
      shell = true
    },
    {
      name = "bt_le_central"
      dest = "bt-le-central"
      shell = true
    },
    {
      name = "bt_le_peripheral"
      dest = "bt-le-peripheral"
      shell = true
    },
    {
      name = "bt_pairing_tool"
      dest = "bt-pairing-tool"
      shell = true
    },
  ]
}
