Use Treble boot HAL for update_engine_sideload
Build update_engine_sideload using the Treble HAL instead of
statically linking a legacy boot_control implementation.
Bug: 78598708
Test: adb sideload succeeds
Change-Id: I3b95849974488c642eb1b638c6cc1bb4143c5843
Signed-off-by: Connor O'Brien <connoro@google.com>
diff --git a/Android.mk b/Android.mk
index 4b06c27..e9c716d 100644
--- a/Android.mk
+++ b/Android.mk
@@ -492,7 +492,6 @@
LOCAL_C_INCLUDES += \
external/cros/system_api/dbus
LOCAL_SRC_FILES := \
- boot_control_recovery.cc \
hardware_android.cc \
metrics_reporter_stub.cc \
metrics_utils.cc \
@@ -507,11 +506,12 @@
# will be used and installed.
LOCAL_SHARED_LIBRARIES := \
libbase.recovery \
- libbootloader_message.recovery \
liblog.recovery \
+ $(filter-out libprotobuf-cpp-lite.recovery libhwbinder.recovery,$(ue_libupdate_engine_boot_control_exported_shared_libraries:=.recovery)) \
$(filter-out libprotobuf-cpp-lite.recovery,$(ue_libpayload_consumer_exported_shared_libraries:=.recovery))
LOCAL_STATIC_LIBRARIES := \
libpayload_consumer \
+ libupdate_engine_boot_control \
update_metadata-protos \
$(ue_common_static_libraries) \
$(ue_libpayload_consumer_exported_static_libraries) \
@@ -527,19 +527,9 @@
libgtest_prod \
libprotobuf-cpp-lite
-ifeq ($(strip $(PRODUCT_STATIC_BOOT_CONTROL_HAL)),)
-# No static boot_control HAL defined, so no sideload support. We use a fake
-# boot_control HAL to allow compiling update_engine_sideload for test purposes.
-ifeq ($(strip $(AB_OTA_UPDATER)),true)
-$(warning No PRODUCT_STATIC_BOOT_CONTROL_HAL configured but AB_OTA_UPDATER is \
-true, no update sideload support.)
-endif # AB_OTA_UPDATER == true
-LOCAL_SRC_FILES += \
- boot_control_recovery_stub.cc
-else # PRODUCT_STATIC_BOOT_CONTROL_HAL != ""
-LOCAL_STATIC_LIBRARIES += \
- $(PRODUCT_STATIC_BOOT_CONTROL_HAL)
-endif # PRODUCT_STATIC_BOOT_CONTROL_HAL != ""
+ifneq ($(strip $(PRODUCT_STATIC_BOOT_CONTROL_HAL)),)
+LOCAL_REQUIRED_MODULES += android.hardware.boot@1.0-impl-wrapper.recovery
+endif
include $(BUILD_EXECUTABLE)