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

##########################################
# Though under //zircon, this build file #
# is meant to be used in the Fuchsia GN  #
# build.                                 #
# See fxbug.dev/36139.                   #
##########################################

executable("mtd-redundant-storage") {
  if (current_os == "linux") {
    sources = [ "mtd-rs-tool.cc" ]
  }
  deps = [
    "//zircon/system/ulib/nand-redundant-storage",
    "//zircon/system/ulib/zx-panic-libc",
    "//zircon/third_party/ulib/cksum",
  ]

  # TODO(fxbug.dev/58162): delete the below and fix compiler warnings
  configs += [ "//build/config:Wno-conversion" ]
}
