# 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("minfs") {
  sources = [
    "main.cc",
  ]
  deps = [
    "$zx/system/fidl/fuchsia-hardware-block:c",
    "$zx/system/fidl/fuchsia-io:c",
    "$zx/system/fidl/fuchsia-minfs:c",
    "$zx/system/ulib/async",
    "$zx/system/ulib/async:async-cpp",
    "$zx/system/ulib/async:async-default",
    "$zx/system/ulib/async-loop",
    "$zx/system/ulib/async-loop:async-loop-cpp",
    "$zx/system/ulib/async-loop:async-loop-default.static",
    "$zx/system/ulib/bitmap",
    "$zx/system/ulib/block-client",
    "$zx/system/ulib/disk-inspector",
    "$zx/system/ulib/fbl",
    "$zx/system/ulib/fdio",
    "$zx/system/ulib/fs",
    "$zx/system/ulib/fzl",
    "$zx/system/ulib/minfs",
    "$zx/system/ulib/sync",
    "$zx/system/ulib/trace",
    "$zx/system/ulib/trace-engine",
    "$zx/system/ulib/trace-provider:trace-provider-with-fdio",
    "$zx/system/ulib/zircon",
    "$zx/system/ulib/zx",
  ]
}
