# Copyright 2022 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/components.gni")
import("//build/rust/rustc_library.gni")

rustc_library("mem_util") {
  edition = "2021"
  with_unit_tests = true
  sources = [ "src/lib.rs" ]
  deps = [
    "//sdk/fidl/fuchsia.io:fuchsia.io_rust",
    "//sdk/fidl/fuchsia.mem:fuchsia.mem_rust",
    "//src/lib/fidl/rust/fidl",
    "//src/lib/fuchsia-fs",
    "//src/lib/zircon/rust:fuchsia-zircon-status",
    "//third_party/rust_crates:thiserror",
    "//third_party/rust_crates:tracing",
  ]
  test_deps = [
    "//src/lib/fuchsia",
    "//src/storage/lib/vfs/rust:vfs",
    "//third_party/rust_crates:async-trait",
    "//third_party/rust_crates:futures",
  ]
  configs += [ "//build/config/rust/lints:clippy_warn_all" ]
}

fuchsia_unittest_package("mem_util_tests") {
  deps = [ ":mem_util_test" ]
}

group("tests") {
  testonly = true
  deps = [ ":mem_util_tests" ]
}
