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

executable("storage-metrics") {
  configs += [
    "//build/unification/config:zircon-migrated",
    "//build/config:all_source",
  ]
  sources = [ "main.cc" ]
  deps = [
    "//sdk/fidl/fuchsia.hardware.block:fuchsia.hardware.block_c",
    "//sdk/fidl/fuchsia.io:fuchsia.io_c",
    "//sdk/fidl/fuchsia.minfs:fuchsia.minfs_c",
    "//sdk/fidl/fuchsia.minfs:fuchsia.minfs_llcpp",
    "//sdk/lib/fdio",
    "//src/storage/minfs",
    "//zircon/public/lib/fbl",
    "//zircon/public/lib/zx",
    "//zircon/system/ulib/fdio-caller",
    "//zircon/system/ulib/fzl",
  ]
}
