blob: 6aa27f45e0d00103f1ed3f9b3a63b450e51ee421 [file] [log] [blame]
# 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 fxb/36548. #
##########################################
assert(!defined(zx) || zx != "/",
"This file can only be used in the Fuchsia GN build.")
import("//build/unification/zx_library.gni")
# Metrics which depend on cobalt only.
zx_library("metrics-cobalt") {
sdk = "source"
sdk_headers = [ "fs/metrics/cobalt_metrics.h" ]
sources = [
"cobalt_metrics.cc",
"include/fs/metrics/events.h",
]
public_deps = [
"//zircon/public/lib/fbl",
"//zircon/system/ulib/cobalt-client",
]
deps = [
"//zircon/public/lib/fbl",
"//zircon/system/ulib/cobalt-client",
]
}
# Metrics which are logged by inspect vmo only.
zx_library("metrics-inspect") {
sdk = "source"
sdk_headers = [
"fs/metrics/events.h",
"fs/metrics/histograms.h",
"fs/metrics/internal",
"fs/metrics/internal/object_generator.h",
"fs/metrics/internal/object_offsets.h",
"fs/metrics/internal/offsets.h",
"fs/metrics/internal/attributes.h",
]
sources = [ "histograms.cc" ]
public_deps = [
"//zircon/public/lib/fbl",
"//zircon/public/lib/zx",
"//zircon/system/ulib/fzl",
"//zircon/system/ulib/inspect",
]
deps = [
"//zircon/public/lib/fbl",
"//zircon/public/lib/zx",
"//zircon/system/ulib/fzl",
"//zircon/system/ulib/inspect",
]
configs += [ "//build/config:Wno-unused-function" ]
}
# Helper library that uses both cobalt and inspect to record metrics.
# TODO(ZX-3150): Remove once inspect broker service is complete.
zx_library("metrics-composite-latency-event") {
sdk = "source"
sdk_headers = [ "fs/metrics/composite_latency_event.h" ]
sources = [ "composite_latency_event.cc" ]
public_deps = [
":metrics-cobalt",
":metrics-inspect",
"//zircon/system/ulib/cobalt-client",
]
deps = [
":metrics-cobalt",
":metrics-inspect",
"//zircon/public/lib/fbl",
"//zircon/system/ulib/cobalt-client",
"//zircon/system/ulib/fzl",
]
}
# Group of all metric targets.
group("metrics") {
deps = [
":metrics-cobalt",
":metrics-composite-latency-event",
":metrics-inspect",
]
}