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

go_library("fidlmerge_lib") {
  name = "fidlmerge"

  deps = [
    "//garnet/go/src/fidl:fidl_lib"
  ]
}

go_binary("fidlmerge") {
  gopackage = "fidlmerge"

  deps = [ ":fidlmerge_lib" ]
}

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