mirror of
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
synced 2024-11-23 01:53:47 +08:00
AOSP: e2fsdroid and mke2fs are dynamic executable in recovery partition
The two utilities are now converted to dynamic executables as shared libraries are supported in recovery mode. As part of the conversion, shared libraries that are depended from them are also marked as recovery_available: true. Bug: 79146551 Test: adb reboot recovery, and select 'Wipe data/factory reset'. The data partition is formatted and there is no selinux denial. Signed-off-by: Theodore Ts'o <tytso@mit.edu> Change-Id: I22fbc83a4ff0496096efca90721b0db1237c32cd From AOSP commit: df1f088849ed3336bb4f6f200c29b30682f15948
This commit is contained in:
parent
8cec4acdc0
commit
722b9ca4ca
@ -49,3 +49,4 @@
|
||||
# ************************************************
|
||||
|
||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libext2_uuid_intermediates)
|
||||
$(call add-clean-step, rm -rf $(TARGET_RECOVERY_OUT)/root/sbin)
|
||||
|
@ -6,6 +6,7 @@
|
||||
cc_binary {
|
||||
name: "e2fsdroid",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
|
||||
srcs: [
|
||||
|
@ -1,41 +0,0 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
#########################################################################
|
||||
# Build statically linked e2fsdroid for recovery
|
||||
e2fsdroid_src_files := \
|
||||
e2fsdroid.c \
|
||||
block_range.c \
|
||||
fsmap.c \
|
||||
block_list.c \
|
||||
base_fs.c \
|
||||
perms.c \
|
||||
basefs_allocator.c \
|
||||
|
||||
e2fsdroid_cflags := -W -Wall -Werror -Wno-error=macro-redefined
|
||||
|
||||
e2fsdroid_static_libraries := \
|
||||
libext2_com_err \
|
||||
libext2_misc \
|
||||
libcutils \
|
||||
libselinux \
|
||||
libcrypto \
|
||||
libsparse \
|
||||
liblog \
|
||||
libz \
|
||||
|
||||
e2fsdroid_whole_static_libraries := \
|
||||
libbase \
|
||||
libext2fs \
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SRC_FILES := $(e2fsdroid_src_files)
|
||||
LOCAL_CFLAGS := $(e2fsdroid_cflags)
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := $(e2fsdroid_whole_static_libraries)
|
||||
LOCAL_STATIC_LIBRARIES := $(e2fsdroid_static_libraries)
|
||||
LOCAL_MODULE := e2fsdroid_static
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
|
||||
LOCAL_FORCE_STATIC_EXECUTABLE := true
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
@ -3,6 +3,7 @@
|
||||
cc_library {
|
||||
name: "libext2_blkid",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
unique_host_soname: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
srcs: [
|
||||
|
@ -3,6 +3,7 @@
|
||||
cc_library {
|
||||
name: "libext2_e2p",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
unique_host_soname: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
srcs: [
|
||||
|
@ -3,6 +3,7 @@
|
||||
cc_library {
|
||||
name: "libext2_com_err",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
unique_host_soname: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
srcs: [
|
||||
|
@ -3,6 +3,7 @@
|
||||
cc_library {
|
||||
name: "libext2fs",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
unique_host_soname: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
srcs: [
|
||||
|
@ -3,6 +3,7 @@
|
||||
cc_library {
|
||||
name: "libext2_quota",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
unique_host_soname: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
srcs: [
|
||||
|
@ -5,6 +5,7 @@
|
||||
cc_library {
|
||||
name: "libext2_misc",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
|
||||
target: {
|
||||
@ -33,6 +34,7 @@ cc_library {
|
||||
cc_binary {
|
||||
name: "mke2fs",
|
||||
host_supported: true,
|
||||
recovery_available: true,
|
||||
defaults: ["e2fsprogs-defaults"],
|
||||
|
||||
srcs: [
|
||||
|
@ -1,42 +0,0 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
#########################################################################
|
||||
# Build statically linked mke2fs for recovery
|
||||
mke2fs_src_files := \
|
||||
mke2fs.c \
|
||||
util.c \
|
||||
mk_hugefiles.c \
|
||||
default_profile.c \
|
||||
create_inode.c \
|
||||
|
||||
mke2fs_c_includes := \
|
||||
external/e2fsprogs/e2fsck
|
||||
|
||||
mke2fs_cflags := -W -Wall -Werror -Wno-macro-redefined
|
||||
|
||||
mke2fs_static_libraries := \
|
||||
libext2_blkid \
|
||||
libext2_uuid \
|
||||
libext2_quota \
|
||||
libext2_com_err \
|
||||
libext2_e2p \
|
||||
libsparse \
|
||||
libz \
|
||||
|
||||
mke2fs_whole_static_libraries := \
|
||||
libbase \
|
||||
libext2fs \
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SRC_FILES := $(mke2fs_src_files)
|
||||
LOCAL_C_INCLUDES := $(mke2fs_c_includes)
|
||||
LOCAL_CFLAGS := $(mke2fs_cflags)
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := $(mke2fs_whole_static_libraries)
|
||||
LOCAL_STATIC_LIBRARIES := $(mke2fs_static_libraries)
|
||||
LOCAL_MODULE := mke2fs_static
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
|
||||
LOCAL_FORCE_STATIC_EXECUTABLE := true
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
Loading…
Reference in New Issue
Block a user