blob: efd5a16dedfcf656ff554d7de2f85cb3977176de [file] [log] [blame] [edit]
# Copyright 2021 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//common-mk/pkg_config.gni")
import("//common-mk/proto_library.gni")
pkg_config("target_defaults") {
pkg_deps = [
"libbrillo",
"libchrome",
]
if (use.fuzzer) {
pkg_deps += [ "protobuf" ]
} else {
pkg_deps += [ "protobuf-lite" ]
}
}
static_library("storage_configuration") {
sources = [ "storage_configuration.cc" ]
configs += [ ":target_defaults" ]
deps = [
"//missive/proto:libmissiveprotorecordconstants",
# Temporary replacement for `Priority_Name` that does
# not work in certain CQ.
# TODO(b/294756107): Remove this function once fixed.
"//missive/proto:priority_name",
"//missive/resources:resource_manager",
]
}
static_library("storage_uploader_interface") {
sources = [ "storage_uploader_interface.cc" ]
configs += [ ":target_defaults" ]
deps = [
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/proto:libmissiveprotostatus",
"//missive/util:status",
]
}
static_library("storage_queue") {
sources = [ "storage_queue.cc" ]
configs += [ ":target_defaults" ]
deps = [
":storage_configuration",
":storage_uploader_interface",
"//missive/compression:compression_module",
"//missive/encryption:encryption_module_interface",
"//missive/encryption:verification",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/resources:resource_managed_buffer",
"//missive/resources:resource_manager",
"//missive/util:file",
"//missive/util:refcounted_closure_list",
"//missive/util:status",
"//missive/util:status_macros",
"//missive/util:task_runner_context",
]
}
static_library("missive_storage_module") {
sources = [
"missive_storage_module.cc",
"missive_storage_module.h",
"missive_storage_module_delegate_impl.cc",
"missive_storage_module_delegate_impl.h",
]
configs += [ ":target_defaults" ]
deps = [
":storage_module_interface",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/util:status",
]
}
static_library("storage_module") {
sources = [ "storage_module.cc" ]
configs += [ ":target_defaults" ]
public_deps = [ ":storage_configuration" ]
deps = [
":storage",
":storage_module_interface",
":storage_uploader_interface",
"//missive/encryption:encryption_module",
"//missive/encryption:encryption_module_interface",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/util:status",
]
}
static_library("storage_module_interface") {
sources = [ "storage_module_interface.cc" ]
configs += [ ":target_defaults" ]
deps = [
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/util:status",
]
}
static_library("storage_test_support") {
sources = [ "test_storage_module.cc" ]
configs += [ ":target_defaults" ]
public_deps = [
":storage_module_interface",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/util:file",
"//missive/util:status",
]
}
static_library("storage_util") {
sources = [ "storage_util.cc" ]
configs += [ ":target_defaults" ]
deps = [ ":storage_queue" ]
}
static_library("key_delivery") {
sources = [
"key_delivery.cc",
"key_delivery.h",
]
configs += [ ":target_defaults" ]
deps = [
":storage_uploader_interface",
"//missive/encryption:encryption_module_interface",
"//missive/util:status",
]
}
static_library("storage") {
sources = [ "storage.cc" ]
configs += [ ":target_defaults" ]
public_deps = [ ":storage_configuration" ]
deps = [
":storage_base",
":storage_queue",
":storage_uploader_interface",
":storage_util",
"//missive/compression:compression_module",
"//missive/encryption:encryption_module",
"//missive/encryption:encryption_module_interface",
"//missive/encryption:verification",
"//missive/health:health_module_impl",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
# Temporary replacement for `Priority_Name` that does
# not work in certain CQ.
# TODO(b/294756107): Remove this function once fixed.
"//missive/proto:priority_name",
"//missive/util:file",
"//missive/util:status",
"//missive/util:status_macros",
"//missive/util:task_runner_context",
]
}
static_library("storage_base") {
sources = [ "storage_base.cc" ]
configs += [ ":target_defaults" ]
deps = [
":key_delivery",
":storage_uploader_interface",
"//missive/encryption:encryption_module_interface",
"//missive/encryption:verification",
"//missive/proto:libmissiveprotorecord",
"//missive/proto:libmissiveprotorecordconstants",
"//missive/util:file",
"//missive/util:status",
"//missive/util:status_macros",
"//missive/util:task_runner_context",
]
}