# Copyright 2023 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//third_party/protobuf/proto_library.gni")
# Core structured metrics library to be shared with other repos. This
# library can only have dependencies that are part of libchrome.
# See README.md for more details.
source_set("lib") {
sources = [
"arena_persistent_proto.h",
"event_buffer.h",
"event_storage.h",
"histogram_util.cc",
"histogram_util.h",
"key_data.cc",
"key_data.h",
"key_data_file_delegate.cc",
"key_data_file_delegate.h",
"key_data_provider.cc",
"key_data_provider.h",
"key_util.cc",
"key_util.h",
"persistent_proto.h",
"persistent_proto_internal.cc",
"persistent_proto_internal.h",
"resource_info.cc",
"resource_info.h",
]
public_deps = [ ":proto" ]
deps = [
"//base",
"//crypto",
"//third_party/protobuf:protobuf_lite",
]
}
proto_library("proto") {
visibility = [ "//components/metrics/structured/*" ]
proto_in_dir = "//"
generate_python = false
sources = [ "proto/key.proto" ]
}
source_set("unit_tests") {
testonly = true
sources = [
"key_data_file_delegate_unittest.cc",
"persistent_proto_unittest.cc",
]
deps = [
":lib",
":proto",
"//base",
"//base/test:test_support",
"//testing/gtest",
]
}