blob: 4b1b5298dbb114e30300e55b917907ad69dfd259 [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 = [ "//src/ledger/*" ]
group("impl") {
deps = [
":lib",
"//src/ledger/bin/storage/impl/btree",
]
}
flatbuffer("object_identifier") {
sources = [
"object_identifier.fbs",
]
extra_configs = [ "//src/ledger:ledger_config" ]
}
flatbuffer("commit_storage") {
sources = [
"commit.fbs",
]
public_deps = [
":object_identifier",
]
extra_configs = [ "//src/ledger:ledger_config" ]
}
flatbuffer("file_index") {
sources = [
"file_index.fbs",
]
extra_configs = [ "//src/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 = [
"//src/ledger/bin/encryption/primitives",
"//src/ledger/bin/encryption/public",
]
public_deps = [
":object_identifier",
"//src/ledger/bin/storage/public",
]
configs += [ "//src/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",
"live_commit_tracker.cc",
"live_commit_tracker.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/async_promise",
"//garnet/public/lib/callback",
"//peridot/lib/base64url",
"//sdk/lib/fidl/cpp",
"//src/ledger/bin/cobalt",
"//src/ledger/bin/encryption/impl",
"//src/ledger/bin/encryption/primitives",
"//src/ledger/bin/encryption/public",
"//src/ledger/bin/environment",
"//src/ledger/bin/filesystem",
"//src/ledger/bin/lock",
"//src/ledger/bin/storage/impl/btree:lib",
"//src/ledger/bin/storage/public",
"//src/lib/fxl",
"//zircon/public/lib/trace",
]
public_deps = [
":object_identifier_lib",
"//peridot/lib/convert",
"//src/ledger/lib/coroutine",
"//src/ledger/third_party/bup",
"//third_party/leveldb",
]
configs += [ "//src/ledger:ledger_config" ]
}
source_set("test_utils") {
testonly = true
sources = [
"storage_test_utils.cc",
"storage_test_utils.h",
]
deps = [
":lib",
"//garnet/public/lib/callback",
"//src/ledger/bin/encryption/fake",
"//src/ledger/bin/encryption/primitives",
]
public_deps = [
"//garnet/public/lib/fsl",
"//peridot/lib/rng",
"//src/ledger/bin/storage/impl/btree:lib",
"//src/ledger/bin/storage/public",
"//src/ledger/bin/testing:lib",
"//src/lib/fxl",
]
configs += [ "//src/ledger:ledger_config" ]
}
source_set("unittests") {
testonly = true
sources = [
"commit_impl_unittest.cc",
"commit_random_impl.cc",
"commit_random_impl.h",
"db_serialization_unittest.cc",
"file_index_unittest.cc",
"journal_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",
"//peridot/lib/rng",
"//peridot/lib/scoped_tmpfs",
"//src/ledger/bin/cloud_sync/impl",
"//src/ledger/bin/encryption/fake",
"//src/ledger/bin/encryption/primitives",
"//src/ledger/bin/storage/fake:lib",
"//src/ledger/bin/storage/impl/btree:lib",
"//src/ledger/bin/storage/public",
"//src/ledger/bin/storage/testing",
"//src/ledger/bin/testing:lib",
"//src/lib/fxl",
"//third_party/googletest:gmock",
"//third_party/googletest:gtest",
]
configs += [ "//src/ledger:ledger_config" ]
}