# 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.

zx_executable("nand-util") {
  sources = [
    "aml.cc",
    "commands.cc",
    "ftl.cc",
    "main.cc",
  ]
  deps = [
    ":common",
    "$zx/system/fidl/fuchsia-hardware-nand:c",
    "$zx/system/ulib/fbl",
    "$zx/system/ulib/fdio",
    "$zx/system/ulib/fzl",
    "$zx/system/ulib/pretty",
    "$zx/system/ulib/zircon",
    "$zx/system/ulib/zx",
    "$zx/third_party/ulib/cksum",
  ]
}

source_set("common") {
  visibility = [ ":*" ]
  sources = [
    "ftl_internal.cc",
    "nand-broker.cc",
  ]
  deps = [
    "$zx/system/ulib/pretty",
  ]
  public_deps = [
    "$zx/system/fidl/fuchsia-device:c",
    "$zx/system/fidl/fuchsia-device:llcpp",
    "$zx/system/fidl/fuchsia-hardware-nand:c",
    "$zx/system/fidl/fuchsia-nand:c",
    "$zx/system/ulib/fbl",
    "$zx/system/ulib/fzl",
  ]
}

zx_test("nand-util-test") {
  output_name = "nand-util-test"
  sources = [
    "test/ftl_internal_test.cc",
  ]
  include_dirs = [ "." ]
  deps = [
    ":common",
    "$zx/system/ulib/fdio",
    "$zx/system/ulib/zxtest",
  ]
}
