# Copyright 2020 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/rust/rustc_library.gni")

if (is_host) {
  rustc_library("lib") {
    name = "ffx_core"
    version = "0.1.0"
    edition = "2021"
    with_unit_tests = true

    deps = [
      "macro:lib",
      "//sdk/fidl/fuchsia.developer.ffx:fuchsia.developer.ffx-rustc",
      "//sdk/fidl/fuchsia.developer.remotecontrol:fuchsia.developer.remotecontrol-rustc",
      "//src/developer/ffx/lib/writer:lib",
      "//third_party/rust_crates:anyhow",
      "//third_party/rust_crates:async-trait",
    ]

    sources = [ "src/lib.rs" ]
  }
}

group("tests") {
  testonly = true
  deps = [
    ":lib_test($host_toolchain)",
    "macro:tests($host_toolchain)",
  ]
}
