blob: 81b9cc14e68a8925a7f766887b3ae3ad14fe620b [file]
# Copyright 2025 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//tools/metrics/private_metrics/gen_private_metrics_builders.gni")
source_set("private_metrics_features") {
sources = [ "private_metrics_features.cc" ]
public = [ "private_metrics_features.h" ]
deps = [ "//base" ]
}
component("dwa_recorder") {
sources = [
"//components/metrics/dwa/dwa_recorder.cc",
"//components/metrics/dwa/dwa_recorder.h",
]
defines = [ "IS_DWA_RECORDER_IMPL" ]
public_deps = [
"//components/metrics/dwa/mojom",
"//third_party/metrics_proto",
]
deps = [
":private_metrics_features",
"//base",
]
}
component("private_metrics_recorders") {
sources = [
"dkm_recorder.cc",
"dkm_recorder.h",
]
defines = [ "IS_PRIVATE_METRICS_RECORDERS_IMPL" ]
public_deps = [
"//components/metrics/private_metrics/mojom",
"//third_party/metrics_proto",
]
deps = [
":private_metrics_features",
"//base",
]
}
# TODO(crbug.com/433729993): Build dwa static library under private_metrics static library.
static_library("private_metrics") {
sources = [
"//components/metrics/dwa/dwa_entry_builder.cc",
"//components/metrics/dwa/dwa_entry_builder.h",
"//components/metrics/dwa/dwa_entry_builder_base.cc",
"//components/metrics/dwa/dwa_entry_builder_base.h",
"//components/metrics/dwa/dwa_pref_names.cc",
"//components/metrics/dwa/dwa_pref_names.h",
"//components/metrics/dwa/dwa_recorder_factory_impl.cc",
"//components/metrics/dwa/dwa_recorder_factory_impl.h",
"//components/metrics/dwa/dwa_recorder_interface.cc",
"//components/metrics/dwa/dwa_recorder_interface.h",
"//components/metrics/dwa/dwa_rotation_scheduler.cc",
"//components/metrics/dwa/dwa_rotation_scheduler.h",
"//components/metrics/dwa/dwa_service.cc",
"//components/metrics/dwa/dwa_service.h",
"data_upload_config_downloader.cc",
"data_upload_config_downloader.h",
"dkm_entry_builder.cc",
"dkm_entry_builder.h",
"dkm_entry_builder_base.cc",
"dkm_entry_builder_base.h",
"private_metrics_pref_names.cc",
"private_metrics_pref_names.h",
"private_metrics_reporting_service.cc",
"private_metrics_reporting_service.h",
"private_metrics_unsent_log_store_metrics.cc",
"private_metrics_unsent_log_store_metrics.h",
"puma_histogram_encoder.cc",
"puma_histogram_encoder.h",
]
public_deps = [
":dwa_recorder",
":private_metrics_recorders",
"//components/metrics/dwa/mojom",
"//components/metrics/private_metrics/mojom",
"//third_party/federated_compute:confidential_compute_proto",
"//third_party/metrics_proto",
]
defines = [ "IS_DWA_IMPL" ]
deps = [
":private_metrics_features",
"//base",
"//build:buildflag_header_h",
"//components/metrics",
"//components/metrics:library_support",
"//components/metrics:metrics_pref_names",
"//components/prefs",
"//components/version_info",
"//mojo/public/cpp/bindings",
"//net",
"//services/metrics/public/cpp:metrics_cpp",
"//services/network/public/cpp",
"//third_party/federated_compute:confidential_compute",
"//third_party/oak:oak_proto",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"//components/metrics/dwa/dwa_entry_builder_unittest.cc",
"//components/metrics/dwa/dwa_recorder_unittest.cc",
"//components/metrics/dwa/dwa_service_unittest.cc",
"//components/metrics/private_metrics/puma_histogram_encoder_unittest.cc",
"data_upload_config_downloader_unittest.cc",
"dkm_entry_builder_unittest.cc",
]
deps = [
":private_metrics",
":private_metrics_features",
"//base",
"//base/test:test_support",
"//components/metrics",
"//components/metrics:test_support",
"//components/prefs",
"//components/prefs:test_support",
"//services/metrics/public/cpp:metrics_cpp",
"//services/network:test_support",
"//services/network/public/cpp",
"//testing/gmock",
"//testing/gtest",
"//third_party/federated_compute:confidential_compute",
"//third_party/federated_compute:confidential_compute_proto",
"//third_party/metrics_proto",
"//third_party/oak:oak_proto",
]
}
private_metrics_builders("dkm_builders") {
type = "dkm"
}