# Copyright 2019 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")

go_library("lib") {
  deps = [
    "//src/connectivity/network/netstack:netstack_lib",
    "//src/connectivity/network/netstack/ifconfig:ifconfig_lib",
    "//src/sys/pkg/bin/amber:lib",
    "//src/sys/pkg/bin/pkgfs:pmd",
  ]
  sources = [ "gub.go" ]
}

go_binary("grand_unified_binary") {
  gopackage = "go.fuchsia.dev/fuchsia/src/go/grand_unified_binary"

  deps = [ ":lib" ]
}
