blob: d903764b53fe1f20010eb083e8b09519c9d5277b [file] [log] [blame]
# Copyright 2016 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("//third_party/flatbuffers/flatbuffer.gni")
visibility = [ "//peridot/bin/ledger/*" ]
group("impl") {
deps = [
":lib",
"//peridot/bin/ledger/storage/impl/btree",
]
}
flatbuffer("object_identifier") {
sources = [
"object_identifier.fbs",
]
extra_configs = [ "//peridot/bin/ledger:ledger_config" ]
}
flatbuffer("commit_storage") {
sources = [
"commit.fbs",
]
public_deps = [
":object_identifier",
]
extra_configs = [ "//peridot/bin/ledger:ledger_config" ]
}
flatbuffer("file_index") {
sources = [
"file_index.fbs",
]
extra_configs = [ "//peridot/bin/ledger:ledger_config" ]
}
source_set("object_identifier_lib") {
sources = [
"constants.h",
"object_digest.cc",
"object_digest.h",
"object_identifier_encoding.cc",
"object_identifier_encoding.h",
]
deps = [
"//peridot/bin/ledger/encryption/primitives",
"//peridot/bin/ledger/encryption/public",
]
public_deps = [
":object_identifier",
"//peridot/bin/ledger/storage/public",
]
configs += [ "//peridot/bin/ledger:ledger_config" ]
}
source_set("lib") {
sources = [
"commit_impl.cc",
"commit_impl.h",
"data_serialization.h",
"db_serialization.cc",
"db_serialization.h",
"file_index.cc",
"file_index.h",
"journal_impl.cc",
"journal_impl.h",
"ledger_storage_impl.cc",
"ledger_storage_impl.h",
"leveldb.cc",
"leveldb.h",
"leveldb_factory.cc",
"leveldb_factory.h",
"object_impl.cc",
"object_impl.h",
"page_db.h",
"page_db_batch_impl.cc",
"page_db_batch_impl.h",
"page_db_impl.cc",
"page_db_impl.h",
"page_storage_impl.cc",
"page_storage_impl.h",
"split.cc",
"split.h",
]
deps = [
":commit_storage",
":file_index",
":object_identifier_lib",
"//garnet/public/lib/callback",
"//garnet/public/lib/fidl/cpp",
"//garnet/public/lib/fxl",
"//peridot/bin/ledger/cobalt",
"//peridot/bin/ledger/encryption/impl",
"//peridot/bin/ledger/encryption/primitives",
"//peridot/bin/ledger/encryption/public",
"//peridot/bin/ledger/environment",
"//peridot/bin/ledger/filesystem",
"//peridot/bin/ledger/lock",
"//peridot/bin/ledger/storage/impl/btree:lib",
"//peridot/bin/ledger/storage/public",
"//peridot/lib/base64url",
"//zircon/public/lib/trace",
]
public_deps = [
":object_identifier_lib",
"//peridot/bin/ledger/coroutine",
"//peridot/lib/convert",
"//peridot/third_party/bup",
"//third_party/leveldb",
]
configs += [ "//peridot/bin/ledger:ledger_config" ]
}
source_set("test_utils") {
testonly = true
sources = [
"storage_test_utils.cc",
"storage_test_utils.h",
]
deps = [
":lib",
"//garnet/public/lib/callback",
"//peridot/bin/ledger/encryption/fake",
"//peridot/bin/ledger/encryption/primitives",
]
public_deps = [
"//garnet/public/lib/fsl",
"//garnet/public/lib/fxl",
"//peridot/bin/ledger/storage/impl/btree:lib",
"//peridot/bin/ledger/storage/public",
"//peridot/bin/ledger/testing:lib",
"//peridot/lib/rng",
]
configs += [ "//peridot/bin/ledger:ledger_config" ]
}
source_set("unittests") {
testonly = true
sources = [
"commit_impl_unittest.cc",
"commit_random_impl.cc",
"commit_random_impl.h",
"file_index_unittest.cc",
"ledger_storage_unittest.cc",
"leveldb_factory_unittest.cc",
"object_digest_unittest.cc",
"object_impl_unittest.cc",
"page_db_empty_impl.cc",
"page_db_empty_impl.h",
"page_db_unittest.cc",
"page_storage_unittest.cc",
"split_unittest.cc",
]
deps = [
":file_index",
":lib",
":test_utils",
"//garnet/public/lib/fsl",
"//garnet/public/lib/fxl",
"//garnet/public/lib/fxl/test",
"//peridot/bin/ledger/cloud_sync/impl",
"//peridot/bin/ledger/encryption/fake",
"//peridot/bin/ledger/encryption/primitives",
"//peridot/bin/ledger/storage/fake:lib",
"//peridot/bin/ledger/storage/impl/btree:lib",
"//peridot/bin/ledger/storage/public",
"//peridot/bin/ledger/storage/testing",
"//peridot/bin/ledger/testing:lib",
"//peridot/lib/rng",
"//peridot/lib/scoped_tmpfs",
"//third_party/googletest:gtest",
]
configs += [ "//peridot/bin/ledger:ledger_config" ]
}