# 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/go/go_binary.gni")
import("//build/go/go_library.gni")
import("//build/host.gni")

go_library("make-efi_lib") {
  deps = [ "//garnet/go/src/thinfs:thinfs_lib" ]
  sources = [ "make-efi.go" ]
}

go_binary("make-efi") {
  gopackage = "go.fuchsia.dev/fuchsia/tools/make-efi"

  deps = [ ":make-efi_lib" ]
}

install_host_tools("host") {
  deps = [ ":make-efi" ]
  outputs = [ "make-efi" ]
}
