37ba125205
Several partners have been requesting exFAT support. Android doesn't natively support exFAT, but we're at least willing to try mounting an exFAT filesystem if we detect the Linux kernel supports it, and if helper binaries are present. This CL is simple scaffolding, and it provides no actual implementation of exFAT. Test: builds, boots Bug: 67822822 Change-Id: Id4f8ec3967b32de6e1c0e3c4b47fe6e43a6291ab
220 lines
4.3 KiB
Text
220 lines
4.3 KiB
Text
cc_defaults {
|
|
name: "vold_default_flags",
|
|
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wextra",
|
|
"-Wno-missing-field-initializers",
|
|
"-Wno-unused-parameter",
|
|
"-Wno-unused-variable",
|
|
],
|
|
|
|
clang: true,
|
|
|
|
tidy: true,
|
|
tidy_checks: [
|
|
"-*",
|
|
"cert-*",
|
|
"clang-analyzer-security*",
|
|
],
|
|
tidy_flags: [
|
|
"-warnings-as-errors=clang-analyzer-security*,cert-*",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "vold_default_libs",
|
|
|
|
static_libs: [
|
|
"libavb",
|
|
"libbootloader_message",
|
|
"libfec",
|
|
"libfec_rs",
|
|
"libfs_mgr",
|
|
"libscrypt_static",
|
|
"libsquashfs_utils",
|
|
"libvold_binder",
|
|
],
|
|
shared_libs: [
|
|
"android.hardware.keymaster@3.0",
|
|
"libbase",
|
|
"libbinder",
|
|
"libcrypto",
|
|
"libcrypto_utils",
|
|
"libcutils",
|
|
"libdiskconfig",
|
|
"libext4_utils",
|
|
"libf2fs_sparseblock",
|
|
"libhardware",
|
|
"libhardware_legacy",
|
|
"libhidlbase",
|
|
"libhwbinder",
|
|
"libkeyutils",
|
|
"liblog",
|
|
"liblogwrap",
|
|
"libselinux",
|
|
"libsysutils",
|
|
"libutils",
|
|
],
|
|
}
|
|
|
|
cc_library_static {
|
|
name: "libvold_binder",
|
|
defaults: ["vold_default_flags"],
|
|
|
|
srcs: [
|
|
":vold_aidl",
|
|
],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libutils",
|
|
],
|
|
aidl: {
|
|
local_include_dirs: ["binder"],
|
|
include_dirs: ["frameworks/native/aidl/binder"],
|
|
export_aidl_headers: true,
|
|
},
|
|
}
|
|
|
|
cc_library_headers {
|
|
name: "libvold_headers",
|
|
export_include_dirs: ["."],
|
|
}
|
|
|
|
// Static library factored out to support testing
|
|
cc_library_static {
|
|
name: "libvold",
|
|
defaults: [
|
|
"vold_default_flags",
|
|
"vold_default_libs",
|
|
],
|
|
|
|
srcs: [
|
|
"Benchmark.cpp",
|
|
"CheckEncryption.cpp",
|
|
"Devmapper.cpp",
|
|
"EncryptInplace.cpp",
|
|
"Ext4Crypt.cpp",
|
|
"FileDeviceUtils.cpp",
|
|
"IdleMaint.cpp",
|
|
"KeyBuffer.cpp",
|
|
"KeyStorage.cpp",
|
|
"KeyUtil.cpp",
|
|
"Keymaster.cpp",
|
|
"Loop.cpp",
|
|
"MetadataCrypt.cpp",
|
|
"MoveStorage.cpp",
|
|
"NetlinkHandler.cpp",
|
|
"NetlinkManager.cpp",
|
|
"Process.cpp",
|
|
"ScryptParameters.cpp",
|
|
"Utils.cpp",
|
|
"VoldNativeService.cpp",
|
|
"VoldUtil.cpp",
|
|
"VolumeManager.cpp",
|
|
"authorization_set.cpp",
|
|
"cryptfs.cpp",
|
|
"fs/Exfat.cpp",
|
|
"fs/Ext4.cpp",
|
|
"fs/F2fs.cpp",
|
|
"fs/Vfat.cpp",
|
|
"model/Disk.cpp",
|
|
"model/EmulatedVolume.cpp",
|
|
"model/ObbVolume.cpp",
|
|
"model/PrivateVolume.cpp",
|
|
"model/PublicVolume.cpp",
|
|
"model/VolumeBase.cpp",
|
|
"secontext.cpp",
|
|
],
|
|
product_variables: {
|
|
arc: {
|
|
exclude_srcs: [
|
|
"model/ObbVolume.cpp",
|
|
],
|
|
static_libs: [
|
|
"libarcobbvolume",
|
|
],
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_binary {
|
|
name: "vold",
|
|
defaults: [
|
|
"vold_default_flags",
|
|
"vold_default_libs",
|
|
],
|
|
|
|
srcs: ["main.cpp"],
|
|
static_libs: ["libvold"],
|
|
product_variables: {
|
|
arc: {
|
|
static_libs: [
|
|
"libarcobbvolume",
|
|
]
|
|
},
|
|
},
|
|
init_rc: ["vold.rc"],
|
|
|
|
required: [
|
|
"mke2fs",
|
|
"vold_prepare_subdirs",
|
|
],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "vdc",
|
|
defaults: ["vold_default_flags"],
|
|
|
|
srcs: ["vdc.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"libcutils",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libvold_binder",
|
|
],
|
|
init_rc: ["vdc.rc"],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "secdiscard",
|
|
defaults: ["vold_default_flags"],
|
|
|
|
srcs: [
|
|
"FileDeviceUtils.cpp",
|
|
"secdiscard.cpp",
|
|
],
|
|
shared_libs: ["libbase"],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "vold_prepare_subdirs",
|
|
defaults: ["vold_default_flags"],
|
|
|
|
srcs: ["vold_prepare_subdirs.cpp", "Utils.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libcutils",
|
|
"liblogwrap",
|
|
"libselinux",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libvold_binder",
|
|
],
|
|
}
|
|
|
|
filegroup {
|
|
name: "vold_aidl",
|
|
srcs: [
|
|
"binder/android/os/IVold.aidl",
|
|
"binder/android/os/IVoldListener.aidl",
|
|
"binder/android/os/IVoldTaskListener.aidl",
|
|
],
|
|
}
|
|
|
|
subdirs = ["tests"]
|