blob: 10c4c25a7c9fc5ac7505e9de13a3159316ab963d [file] [log] [blame]
# Copyright 2020 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/config.gni")
import("//build/json/validate_json.gni")
import("//build/rust/rustc_binary.gni")
template("temperature_logger_config") {
config_data("${target_name}_config_data") {
for_pkg = "temperature-logger"
sources = [ "${invoker.source}" ]
outputs = [ "config.json" ]
}
validate_json("${target_name}_validate_json") {
data = "${invoker.source}"
schema = "config/config.schema.json"
}
group(target_name) {
deps = [
":${target_name}_config_data",
":${target_name}_validate_json",
]
}
}
temperature_logger_config("astro_config") {
source = "config/astro_config.json"
}
temperature_logger_config("sherlock_config") {
source = "config/sherlock_config.json"
}
temperature_logger_config("nelson_config") {
source = "config/nelson_config.json"
}
rustc_binary("bin") {
name = "temperature_logger"
edition = "2021"
with_unit_tests = true
deps = [
"//sdk/fidl/fuchsia.device:fuchsia.device-rustc",
"//sdk/fidl/fuchsia.hardware.temperature:fuchsia.hardware.temperature-rustc",
"//src/lib/diagnostics/inspect/runtime/rust",
"//src/lib/diagnostics/inspect/rust",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-fs",
"//src/lib/syslog/rust:syslog",
"//src/lib/trace/rust:trace",
"//src/lib/trace/rust:trace-provider",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/power/temperature-logger/fuchsia.thermal.test:fuchsia.thermal.test-rustc",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:assert_matches",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
"//third_party/rust_crates:serde",
"//third_party/rust_crates:serde_derive",
"//third_party/rust_crates:serde_json",
]
sources = [ "src/main.rs" ]
}
fuchsia_package_with_single_component("temperature-logger") {
manifest = "meta/temperature-logger.cml"
deps = [ ":bin" ]
}
fuchsia_unittest_package("temperature-logger-tests") {
manifest = "meta/temperature_logger_bin_test.cml"
deps = [ ":bin_test" ]
}
group("tests") {
testonly = true
deps = [ ":temperature-logger-tests" ]
}