AOSP10 TWRP Merge: fix conflicts and update libraries needed

This allows flame to boot TWRP. Still will need to work on
super partition for vendor and system access.

The plan will be to cherry-pick any updates to android-9.0
through gerrit.twrp.me to this branch as a WIP.
diff --git a/Android.mk b/Android.mk
index 4e7d7cc..30d5981 100755
--- a/Android.mk
+++ b/Android.mk
@@ -15,7 +15,6 @@
 LOCAL_PATH := $(call my-dir)
 commands_TWRP_local_path := $(LOCAL_PATH)
 
-<<<<<<< HEAD
 ifneq ($(project-path-for),)
     ifeq ($(LOCAL_PATH),$(call project-path-for,recovery))
         PROJECT_PATH_AGREES := true
@@ -123,13 +122,25 @@
     system/core/adb \
     system/core/libsparse \
     external/zlib \
-    $(LOCAL_PATH)/bootloader_message_twrp/include
+    system/core/libpixelflinger/include \
+    external/freetype/include \
+    $(LOCAL_PATH)/bootloader_message_twrp/include \
+    $(LOCAL_PATH)/recovery_ui/include \
+    $(LOCAL_PATH)/otautil/include \
+    $(LOCAL_PATH)/install/include
 
 LOCAL_C_INCLUDES += bionic
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
     LOCAL_C_INCLUDES += external/stlport/stlport external/openssl/include
     LOCAL_CFLAGS += -DUSE_FUSE_SIDELOAD22
 else
+    ifeq ($shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/fuse_sideload28/
+    else
+        LOCAL_C_FLAGS += -DUSE_OLD_LOAD_KEYS
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/fuse_sideload/include \
+                            $(LOCAL_PATH)/install/include
+    endif
     LOCAL_C_INCLUDES += external/boringssl/include external/libcxx/include
 endif
 
@@ -137,8 +148,8 @@
 LOCAL_SHARED_LIBRARIES :=
 
 LOCAL_STATIC_LIBRARIES += libguitwrp
-LOCAL_SHARED_LIBRARIES += libaosprecovery libz libc libcutils libstdc++ libtar libblkid libminuitwrp libminadbd libmtdutils libtwadbbu libbootloader_message_twrp
-LOCAL_SHARED_LIBRARIES += libcrecovery libtwadbbu libtwrpdigest libc++
+LOCAL_SHARED_LIBRARIES += libz libc libcutils libstdc++ libtar libblkid libminuitwrp libminadbd libmtdutils libtwadbbu libbootloader_message_twrp
+LOCAL_SHARED_LIBRARIES += libcrecovery libtwadbbu libtwrpdigest libc++ libaosprecovery
 
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
     LOCAL_SHARED_LIBRARIES += libstlport
@@ -149,6 +160,12 @@
     LOCAL_C_INCLUDES += $(LOCAL_PATH)/libmincrypt/includes
     LOCAL_CFLAGS += -DUSE_OLD_VERIFIER
 else
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -le 29; echo $$?),0)
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/verifier28/
+        LOCAL_CFLAGS += -DUSE_28_VERIFIER
+    else
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/install/include
+    endif
     LOCAL_SHARED_LIBRARIES += libcrypto
 endif
 
@@ -157,8 +174,14 @@
 endif
 
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 26; echo $$?),0)
-   LOCAL_SHARED_LIBRARIES += libziparchive
-   LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+        LOCAL_SHARED_LIBRARIES += libziparchive
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include system/core/libziparchive/include
+    else
+        LOCAL_SHARED_LIBRARIES += libziparchive
+        LOCAL_C_INCLUDES += system/core/libziparchive/include
+        LOCAL_C_FLAGS += -DUSE_
+    endif
 else
     LOCAL_SHARED_LIBRARIES += libminzip
     LOCAL_CFLAGS += -DUSE_MINZIP
@@ -212,34 +235,9 @@
 tw_git_revision := $(shell git -C $(LOCAL_PATH) rev-parse --short=8 HEAD 2>/dev/null)
 ifeq ($(shell git -C $(LOCAL_PATH) diff --quiet; echo $$?),1)
     tw_git_revision := $(tw_git_revision)-dirty
-=======
-# Needed by build/make/core/Makefile. Must be consistent with the value in Android.bp.
-RECOVERY_API_VERSION := 3
-RECOVERY_FSTAB_VERSION := 2
-
-# TARGET_RECOVERY_UI_LIB should be one of librecovery_ui_{default,wear,vr} or a device-specific
-# module that defines make_device() and the exact RecoveryUI class for the target. It defaults to
-# librecovery_ui_default, which uses ScreenRecoveryUI.
-TARGET_RECOVERY_UI_LIB ?= librecovery_ui_default
-
-# librecovery_ui_ext (shared library)
-# ===================================
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := librecovery_ui_ext
-
-# LOCAL_MODULE_PATH for shared libraries is unsupported in multiarch builds.
-LOCAL_MULTILIB := first
-
-ifeq ($(TARGET_IS_64_BIT),true)
-LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/lib64
-else
-LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/lib
->>>>>>> android-10.0.0_r25
 endif
 LOCAL_CFLAGS += -DTW_GIT_REVISION='"$(tw_git_revision)"'
 
-<<<<<<< HEAD
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 28; echo $$?),0)
 ifeq ($(TW_EXCLUDE_MTP),)
     LOCAL_SHARED_LIBRARIES += libtwrpmtp-ffs
@@ -425,13 +423,14 @@
 	LOCAL_CFLAGS += -DTW_CLOCK_OFFSET=$(TW_CLOCK_OFFSET)
 endif
 TWRP_REQUIRED_MODULES += \
+    relink \
+    relink_init \
     dump_image \
     erase_image \
     flash_image \
     mke2fs.conf \
     pigz \
     teamwin \
-    toolbox_symlinks \
     twrp \
     fsck.fat \
     fatlabel \
@@ -537,16 +536,30 @@
         mkfs.f2fs
 endif
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 28; echo $$?),0)
-    TWRP_REQUIRED_MODULES += sload.f2fs
+    TWRP_REQUIRED_MODULES += sload.f2fs \
+        libfs_mgr \
+        fs_mgr \
+        libinit
 endif
 endif
 
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 26; echo $$?),0)
     TWRP_REQUIRED_MODULES += ld.config.txt
-    TWRP_REQUIRED_MODULES += init.recovery.ldconfig.rc
-    LOCAL_POST_INSTALL_CMD += \
-        sed 's/\(namespace.default.search.paths\)\s\{1,\}=/namespace.default.search.paths  = \/sbin\n\1 +=/' \
-            $(TARGET_OUT_ETC)/ld.config*.txt > $(TARGET_RECOVERY_ROOT_OUT)/sbin/ld.config.txt;
+    ifeq ($(BOARD_VNDK_RUNTIME_DISABLE),true)
+        LOCAL_POST_INSTALL_CMD += \
+	    sed 's/\(namespace.default.search.paths\)\s\{1,\}=/namespace.default.search.paths  = \/sbin\n\1 +=/' \
+                $(TARGET_OUT_ETC)/ld.config.vndk_lite.txt > $(TARGET_RECOVERY_ROOT_OUT)/sbin/ld.config.txt;
+    else
+        ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 28; echo $$?),0)
+            LOCAL_POST_INSTALL_CMD += \
+            sed 's/\(namespace.default.search.paths\)\s\{1,\}=/namespace.default.search.paths  = \/sbin\n\1 +=/' \
+                    $(TARGET_RECOVERY_ROOT_OUT)/system/etc/ld.config.txt > $(TARGET_RECOVERY_ROOT_OUT)/sbin/ld.config.txt;
+        else
+            LOCAL_POST_INSTALL_CMD += \
+            sed 's/\(namespace.default.search.paths\)\s\{1,\}=/namespace.default.search.paths  = \/sbin\n\1 +=/' \
+                    $(TARGET_OUT_ETC)/ld.config.txt > $(TARGET_RECOVERY_ROOT_OUT)/sbin/ld.config.txt;
+        endif
+    endif
 endif
 
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 25; echo $$?),0)
@@ -580,7 +593,7 @@
 LOCAL_POST_INSTALL_CMD := \
     $(hide) cp -f $(PRODUCT_OUT)/obj/ETC/file_contexts.bin_intermediates/file_contexts.concat.tmp $(TARGET_RECOVERY_ROOT_OUT)/file_contexts
 
-include $(BUILD_PHONY_PACKAGE)
+#include $(BUILD_PHONY_PACKAGE)
 
 ifneq ($(TW_USE_TOOLBOX), true)
 include $(CLEAR_VARS)
@@ -620,7 +633,7 @@
 ifneq (,$(filter $(PLATFORM_SDK_VERSION),16 17 18))
 ALL_DEFAULT_INSTALLED_MODULES += $(RECOVERY_BUSYBOX_SYMLINKS)
 endif
-include $(BUILD_PHONY_PACKAGE)
+#include $(BUILD_PHONY_PACKAGE)
 RECOVERY_BUSYBOX_SYMLINKS :=
 endif # !TW_USE_TOOLBOX
 
@@ -629,10 +642,15 @@
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 24; echo $$?),0)
     include $(CLEAR_VARS)
     LOCAL_SRC_FILES := \
-        recovery-persist.cpp \
-        rotate_logs.cpp
+        recovery-persist.cpp 
     LOCAL_MODULE := recovery-persist
-    LOCAL_SHARED_LIBRARIES := liblog libbase
+    LOCAL_SHARED_LIBRARIES := liblog libbase libmetricslogger
+    LOCAL_STATIC_LIBRARIES := libotautil
+    LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 29; echo $$?),0)
+        LOCAL_C_INCLUDES += system/core/libmetricslogger/include \
+            system/core/libstats/include
+    endif
     LOCAL_CFLAGS := -Werror
     LOCAL_INIT_RC := recovery-persist.rc
     include $(BUILD_EXECUTABLE)
@@ -643,10 +661,11 @@
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 24; echo $$?),0)
     include $(CLEAR_VARS)
     LOCAL_SRC_FILES := \
-        recovery-refresh.cpp \
-        rotate_logs.cpp
+        recovery-refresh.cpp 
     LOCAL_MODULE := recovery-refresh
     LOCAL_SHARED_LIBRARIES := liblog libbase
+    LOCAL_STATIC_LIBRARIES := libotautil
+    LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
     LOCAL_CFLAGS := -Werror
     LOCAL_INIT_RC := recovery-refresh.rc
     include $(BUILD_EXECUTABLE)
@@ -654,90 +673,61 @@
 
 # shared libfusesideload
 # ===============================
-include $(CLEAR_VARS)
-LOCAL_CLANG := true
-LOCAL_CFLAGS := -Wall -Werror -Wno-unused-parameter
-LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+    include $(CLEAR_VARS)
+    LOCAL_CLANG := true
+    LOCAL_CFLAGS := -Wall -Werror -Wno-unused-parameter
+    LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
 
-LOCAL_MODULE_TAGS := optional
-LOCAL_MODULE := libfusesideload
-LOCAL_SHARED_LIBRARIES := libcutils libc
-ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 24; echo $$?),0)
-    LOCAL_C_INCLUDES := $(LOCAL_PATH)/libmincrypt/includes
-    LOCAL_SHARED_LIBRARIES += libmincrypttwrp
-    LOCAL_CFLAGS += -DUSE_MINCRYPT
-else
-    LOCAL_SHARED_LIBRARIES += libcrypto
+    LOCAL_MODULE_TAGS := optional
+    LOCAL_MODULE := libfusesideload
+    LOCAL_SHARED_LIBRARIES := libcutils libc
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 24; echo $$?),0)
+        LOCAL_C_INCLUDES := $(LOCAL_PATH)/libmincrypt/includes
+        LOCAL_SHARED_LIBRARIES += libmincrypttwrp
+        LOCAL_CFLAGS += -DUSE_MINCRYPT
+    else
+        LOCAL_SHARED_LIBRARIES += libcrypto libbase
+    endif
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
+        LOCAL_SRC_FILES := fuse_sideload22.cpp
+        LOCAL_CFLAGS += -DUSE_FUSE_SIDELOAD22
+    else
+        # ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+        LOCAL_SRC_FILES := fuse_sideload28/fuse_sideload.cpp
+        # else
+            # LOCAL_SRC_FILES := fuse_sideload/fuse_sideload.cpp \
+                fuse_sideload/fuse_provider.cpp
+        # endif
+    endif
+    include $(BUILD_SHARED_LIBRARY)
 endif
-ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
-    LOCAL_SRC_FILES := fuse_sideload22.cpp
-    LOCAL_CFLAGS += -DUSE_FUSE_SIDELOAD22
-else
-    LOCAL_SRC_FILES := fuse_sideload.cpp
-=======
-LOCAL_WHOLE_STATIC_LIBRARIES := \
-    $(TARGET_RECOVERY_UI_LIB)
 
-LOCAL_SHARED_LIBRARIES := \
-    libbase \
-    liblog \
-    librecovery_ui.recovery
+# # static libfusesideload
+# # =============================== (required to fix build errors in 8.1 due to use by tests)
+# include $(CLEAR_VARS)
+# LOCAL_CLANG := true
+# LOCAL_CFLAGS := -Wall -Werror -Wno-unused-parameter
+# LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
 
-include $(BUILD_SHARED_LIBRARY)
+# LOCAL_MODULE_TAGS := optional
+# LOCAL_MODULE := libfusesideload
+# LOCAL_SHARED_LIBRARIES := libcutils libc
+# ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 24; echo $$?),0)
+#     LOCAL_C_INCLUDES := $(LOCAL_PATH)/libmincrypt/includes
+#     LOCAL_STATIC_LIBRARIES += libmincrypttwrp
+#     LOCAL_CFLAGS += -DUSE_MINCRYPT
+# else
+#     LOCAL_STATIC_LIBRARIES += libcrypto_static
+# endif
+# ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
+#     LOCAL_SRC_FILES := fuse_sideload22.cpp
+#     LOCAL_CFLAGS += -DUSE_FUSE_SIDELOAD22
+# else
+#     LOCAL_SRC_FILES := fuse_sideload.cpp
+# endif
+# include $(BUILD_STATIC_LIBRARY)
 
-# recovery_deps: A phony target that's depended on by `recovery`, which
-# builds additional modules conditionally based on Makefile variables.
-# ======================================================================
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := recovery_deps
-
-ifeq ($(TARGET_USERIMAGES_USE_F2FS),true)
-ifeq ($(HOST_OS),linux)
-LOCAL_REQUIRED_MODULES += \
-    make_f2fs.recovery \
-    sload_f2fs.recovery
-endif
->>>>>>> android-10.0.0_r25
-endif
-include $(BUILD_SHARED_LIBRARY)
-
-# static libfusesideload
-# =============================== (required to fix build errors in 8.1 due to use by tests)
-include $(CLEAR_VARS)
-LOCAL_CLANG := true
-LOCAL_CFLAGS := -Wall -Werror -Wno-unused-parameter
-LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
-
-<<<<<<< HEAD
-LOCAL_MODULE_TAGS := optional
-LOCAL_MODULE := libfusesideload
-LOCAL_SHARED_LIBRARIES := libcutils libc
-ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 24; echo $$?),0)
-    LOCAL_C_INCLUDES := $(LOCAL_PATH)/libmincrypt/includes
-    LOCAL_STATIC_LIBRARIES += libmincrypttwrp
-    LOCAL_CFLAGS += -DUSE_MINCRYPT
-else
-    LOCAL_STATIC_LIBRARIES += libcrypto_static
-=======
-# On A/B devices recovery-persist reads the recovery related file from the persist storage and
-# copies them into /data/misc/recovery. Then, for both A/B and non-A/B devices, recovery-persist
-# parses the last_install file and reports the embedded update metrics. Also, the last_install file
-# will be deteleted after the report.
-LOCAL_REQUIRED_MODULES += recovery-persist
-ifeq ($(BOARD_CACHEIMAGE_PARTITION_SIZE),)
-LOCAL_REQUIRED_MODULES += recovery-refresh
->>>>>>> android-10.0.0_r25
-endif
-ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
-    LOCAL_SRC_FILES := fuse_sideload22.cpp
-    LOCAL_CFLAGS += -DUSE_FUSE_SIDELOAD22
-else
-    LOCAL_SRC_FILES := fuse_sideload.cpp
-endif
-include $(BUILD_STATIC_LIBRARY)
-
-<<<<<<< HEAD
 # libmounts (static library)
 # ===============================
 include $(CLEAR_VARS)
@@ -779,10 +769,19 @@
 
 
 LOCAL_MODULE := libaosprecovery
-LOCAL_MODULE_TAGS := eng optional
-LOCAL_CFLAGS := -std=gnu++0x
-LOCAL_SRC_FILES := adb_install.cpp legacy_property_service.cpp set_metadata.cpp tw_atomic.cpp installcommand.cpp zipwrap.cpp
-LOCAL_SHARED_LIBRARIES += libc liblog libcutils libmtdutils libfusesideload libselinux libminzip
+LOCAL_MODULE_TAGS := optional
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+    LOCAL_SRC_FILES := install28/adb_install.cpp legacy_property_service.cpp set_metadata.cpp tw_atomic.cpp \
+        installcommand.cpp zipwrap.cpp
+else
+    LOCAL_SRC_FILES := install/adb_install.cpp install/asn1_decoder.cpp install/fuse_sdcard_install.cpp\
+        install/install.cpp install/installcommand.cpp install/legacy_property_service.cpp \
+        install/package.cpp install/verifier.cpp install/wipe_data.cpp install/tw_atomic.cpp \
+        install/set_metadata.cpp verifier28/verifier.cpp install/zipwrap.cpp install/ZipUtil.cpp
+endif
+LOCAL_SHARED_LIBRARIES += libbase libbootloader_message libcrypto libext4_utils \
+    libfs_mgr libfusesideload libhidl-gen-utils libhidlbase libhidltransport \
+    liblog libselinux libtinyxml2 libutils libz libziparchive libcutils
 LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
     LOCAL_SHARED_LIBRARIES += libstdc++ libstlport
@@ -797,30 +796,51 @@
     LOCAL_SRC_FILES += verifier24/verifier.cpp verifier24/asn1_decoder.cpp
     LOCAL_CFLAGS += -DUSE_OLD_VERIFIER
 else
-    LOCAL_SHARED_LIBRARIES += libcrypto libbase
-    LOCAL_SRC_FILES += verifier.cpp asn1_decoder.cpp
-    LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 24; echo $$?),0)
+        ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 28; echo $$?),0)
+            LOCAL_CFLAGS := -std=gnu++2a
+            LOCAL_C_INCLUDES += $(commands_TWRP_local_path)/install/include \
+                                $(commands_TWRP_local_path)/recovery_ui/include \
+                                $(commands_TWRP_local_path)/otautil/include \
+                                $(commands_TWRP_local_path)/minadbd \
+                                $(commands_TWRP_local_path)/minzip \
+                                system/libvintf/include
+            LOCAL_STATIC_LIBRARIES += libotautil libvintf_recovery libvintf 
+        else
+            LOCAL_C_INCLUDES += $(commands_TWRP_local_path)/install28/
+            LOCAL_CFLAGS += -DUSE_28_INSTALL
+        endif
+        LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
+    else
+        LOCAL_SHARED_LIBRARIES += libcrypto libbase
+        LOCAL_SRC_FILES += verifier28/verifier.cpp verifier28/asn1_decoder.cpp
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include $(LOCAL_PATH)/verifier28 \
+            system/libvintf/include
+        LOCAL_CFLAGS += -DUSE_28_VERIFIER
+    endif
 endif
 
 ifeq ($(AB_OTA_UPDATER),true)
     LOCAL_CFLAGS += -DAB_OTA_UPDATER=1
 endif
+
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 26; echo $$?),0)
-    LOCAL_SRC_FILES += otautil/ZipUtil.cpp otautil/SysUtil.cpp otautil/DirUtil.cpp
-    LOCAL_SHARED_LIBRARIES += libziparchive libext4_utils libcrypto libcrypto_utils
-    LOCAL_STATIC_LIBRARIES += libvintf_recovery libfs_mgr liblogwrap libavb libvintf libtinyxml2 libz
-    LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
-    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 27; echo $$?),0)
-        # Android 9.0 needs c++17 for libvintf
-        LOCAL_CPPFLAGS += -std=c++17
-        # Android 9.0's libvintf also needs this library
-        LOCAL_STATIC_LIBRARIES += libhidl-gen-utils
+    ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 29; echo $$?),0)
+        # LOCAL_SRC_FILES += otautil/ZipUtil.cpp otautil/SysUtil.cpp otautil/DirUtil.cpp
+        LOCAL_SHARED_LIBRARIES += libziparchive libext4_utils libcrypto libcrypto_utils libfs_mgr
+        LOCAL_STATIC_LIBRARIES += libvintf_recovery liblogwrap libavb libvintf libtinyxml2 libz
+        LOCAL_C_INCLUDES += $(LOCAL_PATH)/otautil/include
+        ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 27; echo $$?),0)
+            # Android 9.0's libvintf also needs this library
+            LOCAL_STATIC_LIBRARIES += libhidl-gen-utils
+        endif
     endif
 else
     LOCAL_CFLAGS += -DUSE_MINZIP
 endif
 
 include $(BUILD_SHARED_LIBRARY)
+
 # libverifier (static library)
 # ===============================
 include $(CLEAR_VARS)
@@ -837,44 +857,41 @@
 LOCAL_CFLAGS := -Wall -Werror
 include $(BUILD_STATIC_LIBRARY)
 
-# Wear default device
-# ===============================
-include $(CLEAR_VARS)
-LOCAL_SRC_FILES := wear_device.cpp
-LOCAL_CFLAGS := -Wall -Werror
+# # Wear default device
+# # ===============================
+# include $(CLEAR_VARS)
+# LOCAL_SRC_FILES := wear_device.cpp
+# LOCAL_CFLAGS := -Wall -Werror
 
-# Should match TARGET_RECOVERY_UI_LIB in BoardConfig.mk.
-LOCAL_MODULE := librecovery_ui_wear
+# # Should match TARGET_RECOVERY_UI_LIB in BoardConfig.mk.
+# LOCAL_MODULE := librecovery_ui_wear
 
-include $(BUILD_STATIC_LIBRARY)
+# include $(BUILD_STATIC_LIBRARY)
 
-# vr headset default device
-# ===============================
-include $(CLEAR_VARS)
+# # vr headset default device
+# # ===============================
+# include $(CLEAR_VARS)
 
-LOCAL_SRC_FILES := vr_device.cpp
-LOCAL_CFLAGS := -Wall -Werror
+# LOCAL_SRC_FILES := vr_device.cpp
+# LOCAL_CFLAGS := -Wall -Werror
 
-# should match TARGET_RECOVERY_UI_LIB set in BoardConfig.mk
-LOCAL_MODULE := librecovery_ui_vr
+# # should match TARGET_RECOVERY_UI_LIB set in BoardConfig.mk
+# LOCAL_MODULE := librecovery_ui_vr
 
-include $(BUILD_STATIC_LIBRARY)
-=======
-include $(BUILD_PHONY_PACKAGE)
->>>>>>> android-10.0.0_r25
+# include $(BUILD_STATIC_LIBRARY)
 
 commands_recovery_local_path := $(LOCAL_PATH)
 
 #    $(LOCAL_PATH)/edify/Android.mk
 #    $(LOCAL_PATH)/otafault/Android.mk
 #    $(LOCAL_PATH)/bootloader_message/Android.mk
+
+    # $(commands_TWRP_local_path)/boot_control/Android.bp 
+    # $(commands_TWRP_local_path)/tests/Android.mk 
+    # $(commands_TWRP_local_path)/tools/Android.mk 
+    # $(commands_TWRP_local_path)/update_verifier/Android.mk
 include \
-<<<<<<< HEAD
-    $(commands_TWRP_local_path)/boot_control/Android.mk \
-    $(commands_TWRP_local_path)/tests/Android.mk \
-    $(commands_TWRP_local_path)/tools/Android.mk \
     $(commands_TWRP_local_path)/updater/Android.mk \
-    $(commands_TWRP_local_path)/update_verifier/Android.mk \
     $(commands_TWRP_local_path)/bootloader_message_twrp/Android.mk
 
 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -le 25; echo $$?),0)
@@ -904,7 +921,8 @@
         $(commands_TWRP_local_path)/minui21/Android.mk
 endif
 
-#$(commands_TWRP_local_path)/otautil/Android.mk
+    # $(commands_TWRP_local_path)/otautil/Android.mk \
+
 #includes for TWRP
 include $(commands_TWRP_local_path)/injecttwrp/Android.mk \
     $(commands_TWRP_local_path)/htcdumlock/Android.mk \
@@ -920,7 +938,6 @@
     $(commands_TWRP_local_path)/libblkid/Android.mk \
     $(commands_TWRP_local_path)/minuitwrp/Android.mk \
     $(commands_TWRP_local_path)/openaes/Android.mk \
-    $(commands_TWRP_local_path)/toolbox/Android.mk \
     $(commands_TWRP_local_path)/twrpTarMain/Android.mk \
     $(commands_TWRP_local_path)/minzip/Android.mk \
     $(commands_TWRP_local_path)/dosfstools/Android.mk \
@@ -973,6 +990,3 @@
 endif
 
 commands_TWRP_local_path :=
-=======
-    $(LOCAL_PATH)/updater/Android.mk \
->>>>>>> android-10.0.0_r25