# 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/cpp/sdk_executable.gni")
import("//build/host.gni")
import("//build/package.gni")

sdk_executable("bin") {
  output_name = "far"

  category = "partner"

  sources = [
    "main.cc",
  ]

  deps = [
    "//garnet/lib/far",
    "//garnet/public/lib/fxl",
  ]
}

package("far") {
  deps = [
    ":bin",
  ]

  binaries = [
    {
      shell = true
      name = "far"
    },
  ]
}

install_host_tools("host") {
  deps = [
    ":bin",
  ]
  outputs = [
    "far",
  ]
}
