blob: 98887e9c9e32a25386f8f6fd2ac226e5d751be40 [file] [log] [blame] [edit]
# Copyright 2022 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/components.gni")
import("//build/rust/rustc_binary.gni")
rustc_binary("bin") {
name = "metrics_logger"
edition = "2021"
with_unit_tests = true
deps = [
"//sdk/fidl/fuchsia.boot:fuchsia.boot_rust",
"//sdk/fidl/fuchsia.device:fuchsia.device_rust",
"//sdk/fidl/fuchsia.gpu.magma:fuchsia.gpu.magma_rust",
"//sdk/fidl/fuchsia.hardware.network:fuchsia.hardware.network_rust",
"//sdk/fidl/fuchsia.hardware.power.sensor:fuchsia.hardware.power.sensor_rust",
"//sdk/fidl/fuchsia.hardware.temperature:fuchsia.hardware.temperature_rust",
"//sdk/fidl/fuchsia.kernel:fuchsia.kernel_rust",
"//sdk/fidl/fuchsia.power.metrics:fuchsia.power.metrics_rust",
"//sdk/fidl/fuchsia.ui.activity:fuchsia.ui.activity_rust",
"//sdk/rust/zx",
"//src/lib/diagnostics/hierarchy/rust",
"//src/lib/diagnostics/inspect/runtime/rust",
"//src/lib/diagnostics/inspect/rust",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-fs",
"//src/lib/trace/rust:trace",
"//src/lib/trace/rust:trace-provider",
"//src/starnix/lib/magma",
"//src/sys/lib/fuchsia-zbi/abi",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:argh",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
"//third_party/rust_crates:num-traits",
"//third_party/rust_crates:serde",
"//third_party/rust_crates:serde_derive",
"//third_party/rust_crates:serde_json",
"//third_party/rust_crates:zerocopy",
]
test_deps = [
"//src/lib/diagnostics/testing/diagnostics-assertions/rust:diagnostics-assertions",
"//third_party/rust_crates:assert_matches",
]
sources = [
"src/cpu_load_logger.rs",
"src/driver_utils.rs",
"src/gpu_usage_logger.rs",
"src/main.rs",
"src/network_activity_logger.rs",
"src/sensor_logger.rs",
]
}
fuchsia_package_with_single_component("metrics-logger-standalone-pkg") {
manifest = "meta/metrics-logger-standalone.cml"
package_name = "metrics-logger-standalone"
deps = [ ":bin" ]
}
fuchsia_package_with_single_component("metrics-logger-pkg") {
manifest = "meta/metrics-logger.cml"
package_name = "metrics-logger"
deps = [ ":bin" ]
}
fuchsia_unittest_package("metrics-logger-tests") {
manifest = "meta/metrics-logger-tests.cml"
deps = [ ":bin_test" ]
}
group("tests") {
testonly = true
deps = [ ":metrics-logger-tests" ]
}