apex: only mount required apex files
Since recent kernels seem to limit the number of loopback
devices to 7, we now just mount the required apex files in TWRP.
To mount additional apex files specify TW_ADDITIONAL_APEX_FILES
in your BoardConfig, for example:
TW_ADDITIONAL_APEX_FILES := "apex1 apex2"
To disable Apex in your builds use:
TW_EXLUCDE_APEX := true
Change-Id: Ib55529a4dc17ce2b737b01b86100dca3dc75e6c9
Change-Id: I3b4dfbb164838ffb126016b0d862f67d3f170bf3
diff --git a/Android.mk b/Android.mk
index 038daaa..c7998ac 100755
--- a/Android.mk
+++ b/Android.mk
@@ -71,9 +71,14 @@
openrecoveryscript.cpp \
tarWrite.c \
twrpAdbBuFifo.cpp \
- twrpApex.cpp \
twrpRepacker.cpp
+ifeq ($(TW_EXCLUDE_APEX),)
+ LOCAL_SRC_FILES += twrpApex.cpp
+else
+ LOCAL_CFLAGS += -DTW_EXCLUDE_APEX
+endif
+
LOCAL_STATIC_LIBRARIES += libavb libtwrpinstall libminadbd_services libinit
LOCAL_SHARED_LIBRARIES += libfs_mgr
LOCAL_C_INCLUDES += \
@@ -284,6 +289,9 @@
ifeq ($(TW_INCLUDE_L_CRYPTO), true)
TW_INCLUDE_CRYPTO := true
endif
+ifneq ($(TW_ADDITIONAL_APEX_FILES),)
+ LOCAL_CFLAGS += -DTW_ADDITIONAL_APEX_FILES=$(TW_ADDITIONAL_APEX_FILES)
+endif
ifeq ($(TW_INCLUDE_CRYPTO), true)
LOCAL_CFLAGS += -DTW_INCLUDE_CRYPTO -DUSE_FSCRYPT -Wno-macro-redefined
LOCAL_SHARED_LIBRARIES += libcryptfsfde