android_system_core/fs_mgr/liblp/Android.bp
David Anderson 7a6c511a6d liblp: Add an abstraction layer for opening partitions.
This change introduces an IPartitionOpener abstraction. Methods that
interact with live metadata, such as ReadMetadata, UpdatePartitionTable,
and FlashPartitionTable, now require an IPartitionOpener object. Its
purpose is dependency injection: it will make these methods much easier
to test when the super partition spans multiple block devices.

All non-test consumers should be using PartitionOpener, and as such,
some helper methods have been added that automatically create one.

Bug: 116802789
Test: liblp_test gtest
      device with super partition boots
Change-Id: I76725a5830ef643c5007c152c00ccaad8085151f
2018-10-24 14:18:38 -07:00

66 lines
1.6 KiB
Text

//
// Copyright (C) 2018 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
cc_library {
name: "liblp",
host_supported: true,
recovery_available: true,
defaults: ["fs_mgr_defaults"],
cppflags: [
"-D_FILE_OFFSET_BITS=64",
],
srcs: [
"builder.cpp",
"images.cpp",
"partition_opener.cpp",
"reader.cpp",
"utility.cpp",
"writer.cpp",
],
shared_libs: [
"libbase",
"liblog",
"libcrypto",
"libcrypto_utils",
"libsparse",
"libext4_utils",
"libz",
],
export_include_dirs: ["include"],
}
cc_test {
name: "liblp_test",
defaults: ["fs_mgr_defaults"],
cppflags: [
"-Wno-unused-parameter",
],
static_libs: [
"libgmock",
],
shared_libs: [
"liblp",
"libbase",
"libfs_mgr",
"libsparse",
],
srcs: [
"builder_test.cpp",
"io_test.cpp",
"test_partition_opener.cpp",
"utility_test.cpp",
],
}