# 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("examples") {
  deps = [
    "bt-le-battery-service",
    "bt-le-heart-rate-peripheral",

    # "bt_beacon_reader",
  ]

  binaries = [
    {
      name = "bt_le_battery_service"
      dest = "bt-le-battery-service"
      shell = true
    },
    {
      name = "bt-le-heart-rate-peripheral"
      shell = true
    },

    # {
    #   name = "bt_beacon_reader"
    # },
  ]
}
