# 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/package.gni")
import("//build/rust/rustc_binary.gni")

rustc_binary("bin") {
  name = "tcp_file_sender"
  edition = "2018"

  deps = [
    "//garnet/public/rust/fuchsia-syslog",
    "//third_party/rust_crates:failure",
    "//third_party/rust_crates:structopt",
  ]
}

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

  binaries = [
    {
      name = "tcp_file_sender"
    },
  ]

  meta = [
    {
      path = rebase_path("meta/tcp_file_sender.cmx")
      dest = "tcp_file_sender.cmx"
    },
  ]
}
