From 251a02f2f05126c2c44e15309e16f61237b813eb Mon Sep 17 00:00:00 2001 From: Yifan Hong Date: Wed, 22 Aug 2018 11:58:35 -0700 Subject: [PATCH] Create build-superimage-target. Combine INSTALLED_SUPERIMAGE_TARGET with INSTALLED_SUPERIMAGE_EMPTY_TARGET. Also fixes inconsistent UUIDs for super_empty.img because PRIVATE_SUPER_PARTITION_SUFFIX is not defined. Test: flash and inspect device mapper Change-Id: I7f00c4e21ebdd21e94fa387c6e2fbea06a6e75b7 --- core/Makefile | 45 ++++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/core/Makefile b/core/Makefile index 08767bbf6..74b72b920 100644 --- a/core/Makefile +++ b/core/Makefile @@ -2812,32 +2812,35 @@ $(INSTALLED_SUPERIMAGE_TARGET): $(call images-for-partitions,$(BOARD_SUPER_PARTI # bootloader fastboot should always mark _a slot as bootable. ifeq ($(AB_OTA_UPDATER),true) $(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_PARTITION_SUFFIX=_a -$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_METADATA_SLOTS=2 -else -$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_METADATA_SLOTS=1 endif # AB_OTA_UPDATER -$(INSTALLED_SUPERIMAGE_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake - $< \ - --sparse \ - --metadata-size 65536 \ - --metadata-slots $(PRIVATE_METADATA_SLOTS) \ - --device-size $(BOARD_SUPER_PARTITION_SIZE) \ - --output $@ \ - $(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \ - --partition $(name)$(PRIVATE_PARTITION_SUFFIX):$$($(UUIDGEN) $(name)$(PRIVATE_PARTITION_SUFFIX)):readonly:$(call read-size-of-partitions,$(name)) \ - --image $(name)$(PRIVATE_PARTITION_SUFFIX)=$(call images-for-partitions,$(name))) +$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake + +# $(1): output image path +# $(2): slot A suffix (_a or empty) +# $(3): include images or not (true or empty) +define build-superimage-target + $(HOST_OUT_EXECUTABLES)/lpmake \ + $(if $(3), --sparse) \ + --metadata-size 65536 \ + --metadata-slots $(if $(2),2,1) \ + --device-size $(BOARD_SUPER_PARTITION_SIZE) \ + --output $(1) \ + $(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \ + --partition $(name)$(2):$$($(UUIDGEN) $(name)$(2)):readonly:$(if $(3),$(call read-size-of-partitions,$(name)),0) \ + $(if $(3), --image $(name)$(2)=$(call images-for-partitions,$(name))) \ + ) +endef + +$(INSTALLED_SUPERIMAGE_TARGET): + $(call pretty,"Target super fs image: $@") + $(call build-superimage-target,$@,$(PRIVATE_PARTITION_SUFFIX),true) $(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_TARGET)) -$(INSTALLED_SUPERIMAGE_EMPTY_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake - $< \ - --metadata-size 65536 \ - --metadata-slots $(PRIVATE_METADATA_SLOTS) \ - --device-size $(BOARD_SUPER_PARTITION_SIZE) \ - --output $@ \ - $(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \ - --partition $(name)$(PRIVATE_PARTITION_SUFFIX):$$($(UUIDGEN) $(name)$(PRIVATE_SUPER_PARTITION_SUFFIX)):readonly:0) +$(INSTALLED_SUPERIMAGE_EMPTY_TARGET): + $(call pretty,"Target empty super fs image: $@") + $(call build-superimage-target,$@,$(PRIVATE_PARTITION_SUFFIX)) $(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_EMPTY_TARGET))