# 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 = "ril_ctl"
  edition = "2018"

  deps = [
    "//sdk/fidl/fuchsia.net:fuchsia.net-rustc",
    "//sdk/fidl/fuchsia.net.dhcp:fuchsia.net.dhcp-rustc",
    "//sdk/fidl/fuchsia.net.stack:fuchsia.net.stack-rustc",
    "//sdk/fidl/fuchsia.netstack:fuchsia.netstack-rustc",
    "//sdk/fidl/fuchsia.telephony.manager:fuchsia.telephony.manager-rustc",
    "//sdk/fidl/fuchsia.telephony.ril:fuchsia.telephony.ril-rustc",
    "//src/connectivity/telephony/lib/qmi",
    "//src/lib/fidl/rust/fidl",
    "//src/lib/fuchsia-async",
    "//src/lib/fuchsia-component",
    "//src/lib/network/fidl_fuchsia_net_stack_ext",
    "//src/lib/zircon/rust:fuchsia-zircon",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:log",
    "//third_party/rust_crates:parking_lot",
    "//third_party/rust_crates:pin-utils",
    "//third_party/rust_crates:structopt",
    "//third_party/rust_crates:thiserror",
    "//third_party/rust_crates/transitional/rustyline",
  ]

  sources = [
    "src/commands.rs",
    "src/main.rs",
    "src/repl.rs",
  ]
}

package("ril-ctl") {
  deps = [ ":bin" ]

  binaries = [
    {
      name = "ril_ctl"
      dest = "ril-ctl"
      path = "ril_ctl"
      shell = true
    },
  ]
}
