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

import("//build/zircon/zx_library.gni")

# This library requires an environment with mtd/mtd-user.h and MTD support.

zx_library("mtd") {
  sdk = "source"
  sdk_headers = [
    "lib/mtd/mtd-interface.h",
    "lib/mtd/nand-interface.h",
  ]

  sources = []
  if (current_os == "linux") {
    sources += [ "mtd-interface.cc" ]
  }

  public_deps = [ "//zircon/system/ulib/fbl" ]

  deps = [
    "//zircon/system/ulib/fbl",
    "//zircon/system/ulib/log",
  ]

  defines = []

  if (current_cpu == "arm64") {
    defines += [ "SPARE_SIZE=8" ]
  } else {
    defines += [ "MEMWRITE_NOT_SUPPORTED" ]
  }
}
