Verify the package compatibility with libvintf.
verify_package_compatibility() is added to parse the compatibility entry
(compatibility.zip) in a given OTA package. If entry is present, the
information is sent to libvintf to check the compatibility.
This CL doesn't actually call libvintf, since the API there is not
available yet.
Bug: 36597505
Test: Doesn't break the install with existing packages (i.e. w/o the
compatibility entry).
Test: recovery_component_test
Change-Id: I3903ffa5f6ba33a5c0d761602ade6290c6752596
diff --git a/Android.mk b/Android.mk
index 58b8a22..03adf32 100644
--- a/Android.mk
+++ b/Android.mk
@@ -14,6 +14,10 @@
LOCAL_PATH := $(call my-dir)
+# Needed by build/make/core/Makefile.
+RECOVERY_API_VERSION := 3
+RECOVERY_FSTAB_VERSION := 2
+
# libfusesideload (static library)
# ===============================
include $(CLEAR_VARS)
@@ -34,6 +38,22 @@
LOCAL_MODULE := libmounts
include $(BUILD_STATIC_LIBRARY)
+# librecovery (static library)
+# ===============================
+include $(CLEAR_VARS)
+LOCAL_SRC_FILES := \
+ install.cpp
+LOCAL_CFLAGS := -Wno-unused-parameter -Werror
+LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
+LOCAL_MODULE := librecovery
+LOCAL_STATIC_LIBRARIES := \
+ libminui \
+ libcrypto_utils \
+ libcrypto \
+ libbase
+
+include $(BUILD_STATIC_LIBRARY)
+
# recovery (static executable)
# ===============================
include $(CLEAR_VARS)
@@ -43,7 +63,6 @@
asn1_decoder.cpp \
device.cpp \
fuse_sdcard_provider.cpp \
- install.cpp \
recovery.cpp \
roots.cpp \
rotate_logs.cpp \
@@ -63,8 +82,6 @@
endif
endif
-RECOVERY_API_VERSION := 3
-RECOVERY_FSTAB_VERSION := 2
LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
LOCAL_CFLAGS += -Wno-unused-parameter -Werror
LOCAL_CLANG := true
@@ -74,6 +91,7 @@
system/core/adb \
LOCAL_STATIC_LIBRARIES := \
+ librecovery \
libbatterymonitor \
libbootloader_message \
libext4_utils \