# 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/config.gni")
import("//build/package.gni")

source_set("metrics") {
  sources = [
    "capture.cc",
    "capture.h",
    "digest.cc",
    "digest.h",
    "printer.cc",
    "printer.h",
    "summary.cc",
    "summary.h",
    "watcher.cc",
    "watcher.h",
  ]

  public_deps = [ "//sdk/fidl/fuchsia.kernel:fuchsia.kernel_llcpp" ]

  deps = [
    "//src/lib/fsl",
    "//src/lib/fxl",
    "//zircon/public/lib/trace",
    "//zircon/system/fidl/fuchsia-boot:c",
    "//zircon/system/ulib/task-utils",
  ]
}
