From 371fe6e8bc18384f6328edc589ff3a83f0fd04b0 Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Wed, 11 Oct 2017 20:25:36 -0700 Subject: [PATCH] Move stuff from recovery into librecovery. Move most source files into librecovery so they become testable. Only recovery_main.cpp and logging.cpp are built into recovery module, as they perform one-time setup (e.g. setting up logger). Test: `mmma -j bootable/recovery` with aosp_{angler,bullhead,fugu,dragon,marlin}-userdebug Test: recovery_host_test; recovery_unit_test; recovery_component_test; recovery_manual_test Test: Build and boot into recovery image on angler. Change-Id: Ic4444f87a2f123557c71085f81dc2b2764c05ed8 Merged-In: Ic4444f87a2f123557c71085f81dc2b2764c05ed8 --- Android.mk | 109 +++++++++++++++++++++++------------------------ tests/Android.mk | 2 +- 2 files changed, 54 insertions(+), 57 deletions(-) diff --git a/Android.mk b/Android.mk index 214d028d..fef5846a 100644 --- a/Android.mk +++ b/Android.mk @@ -97,61 +97,7 @@ endif include $(BUILD_STATIC_LIBRARY) -# librecovery (static library) -# =============================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := \ - install.cpp - -LOCAL_CFLAGS := $(recovery_common_cflags) - -ifeq ($(AB_OTA_UPDATER),true) - LOCAL_CFLAGS += -DAB_OTA_UPDATER=1 -endif - -LOCAL_MODULE := librecovery - -LOCAL_STATIC_LIBRARIES := \ - libminui \ - libotautil \ - libvintf_recovery \ - libcrypto_utils \ - libcrypto \ - libbase \ - libziparchive \ - -include $(BUILD_STATIC_LIBRARY) - -# recovery (static executable) -# =============================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := \ - adb_install.cpp \ - fuse_sdcard_provider.cpp \ - logging.cpp \ - recovery.cpp \ - recovery_main.cpp \ - roots.cpp \ - -LOCAL_MODULE := recovery - -LOCAL_FORCE_STATIC_EXECUTABLE := true - -LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin - -# Cannot link with LLD: undefined symbol: UsbNoPermissionsLongHelpText -# http://b/77543887, lld does not handle -Wl,--gc-sections as well as ld. -LOCAL_USE_CLANG_LLD := false - -LOCAL_CFLAGS := $(recovery_common_cflags) - -LOCAL_C_INCLUDES += \ - system/vold \ - -LOCAL_STATIC_LIBRARIES := \ - librecovery \ +librecovery_static_libraries := \ $(TARGET_RECOVERY_UI_LIB) \ libbootloader_message \ libfusesideload \ @@ -174,12 +120,63 @@ LOCAL_STATIC_LIBRARIES := \ libtinyxml2 \ libziparchive \ libbase \ - libcutils \ libutils \ + libcutils \ liblog \ libselinux \ libz \ +# librecovery (static library) +# =============================== +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := \ + adb_install.cpp \ + fuse_sdcard_provider.cpp \ + install.cpp \ + recovery.cpp \ + roots.cpp \ + +LOCAL_C_INCLUDES := \ + system/vold \ + +LOCAL_CFLAGS := $(recovery_common_cflags) + +ifeq ($(AB_OTA_UPDATER),true) + LOCAL_CFLAGS += -DAB_OTA_UPDATER=1 +endif + +LOCAL_MODULE := librecovery + +LOCAL_STATIC_LIBRARIES := \ + $(librecovery_static_libraries) + +include $(BUILD_STATIC_LIBRARY) + +# recovery (static executable) +# =============================== +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := \ + logging.cpp \ + recovery_main.cpp \ + +LOCAL_MODULE := recovery + +LOCAL_FORCE_STATIC_EXECUTABLE := true + +LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin + +# Cannot link with LLD: undefined symbol: UsbNoPermissionsLongHelpText +# http://b/77543887, lld does not handle -Wl,--gc-sections as well as ld. +LOCAL_USE_CLANG_LLD := false + +LOCAL_CFLAGS := $(recovery_common_cflags) + +LOCAL_STATIC_LIBRARIES := \ + librecovery \ + $(librecovery_static_libraries) + LOCAL_HAL_STATIC_LIBRARIES := libhealthd LOCAL_REQUIRED_MODULES := \ diff --git a/tests/Android.mk b/tests/Android.mk index cdc5b523..853ca273 100644 --- a/tests/Android.mk +++ b/tests/Android.mk @@ -174,8 +174,8 @@ librecovery_static_libraries := \ libtinyxml2 \ libziparchive \ libbase \ - libcutils \ libutils \ + libcutils \ liblog \ libselinux \ libz \