Loading core/Makefile +40 −9 Original line number Diff line number Diff line Loading @@ -4207,6 +4207,13 @@ INSTALLED_CUSTOMIMAGES_TARGET := ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) INTERNAL_AVB_CUSTOMIMAGES_SIGNING_ARGS := BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST := # If BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH is set, the image will be included in # BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST, otherwise the image won't be AVB signed. $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(if $(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH), \ $(eval BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST += $(partition)) \ $(eval BOARD_$(call to-upper,$(partition))_IMAGE_LIST := $(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST)))) # Sign custom image. # $(1): the prebuilt custom image. Loading @@ -4231,9 +4238,26 @@ endif INSTALLED_CUSTOMIMAGES_TARGET += $(3) endef $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ # Copy unsigned custom image. # $(1): the prebuilt custom image. # $(2): the signed custom image target. define copy_custom_image $(2): $(1) $(INTERNAL_USERIMAGES_DEPS) @echo Target custom image: $(2) mkdir -p $(dir $(2)) cp $(1) $(2) INSTALLED_CUSTOMIMAGES_TARGET += $(2) endef # Add AVB custom image to droid target $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST), \ $(eval $(call sign_custom_image,$(image),$(partition),$(PRODUCT_OUT)/$(notdir $(image)))))) # Add unsigned custom image to droid target $(foreach partition,$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST)), \ $(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST), \ $(eval $(call copy_custom_image,$(image),$(PRODUCT_OUT)/$(notdir $(image)))))) endif # ----------------------------------------------------------------- Loading Loading @@ -4510,7 +4534,9 @@ define check-and-set-custom-avb-chain-args $(eval part := $(1)) $(eval PART=$(call to-upper,$(part))) $(eval _rollback_index_location := BOARD_AVB_$(PART)_ROLLBACK_INDEX_LOCATION) $(eval _key_path := BOARD_AVB_$(PART)_KEY_PATH) $(if $($(_rollback_index_location)),,$(error $(_rollback_index_location) is not defined)) $(if $($(_key_path)),,$(error $(_key_path) is not defined)) INTERNAL_AVB_MAKE_VBMETA_IMAGE_ARGS += \ --chain_partition $(part):$($(_rollback_index_location)):$(AVB_CHAIN_KEY_DIR)/$(part).avbpubkey Loading Loading @@ -4590,8 +4616,8 @@ $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),$(eval $(call check-an $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),$(eval BOARD_AVB_MAKE_VBMETA_$(call to-upper,$(partition))_IMAGE_ARGS += --padding_size 4096)) endif ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ ifneq ($(strip $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST)),) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(eval $(call check-and-set-custom-avb-chain-args,$(partition)))) endif Loading Loading @@ -4678,8 +4704,8 @@ define extract-avb-chain-public-keys $(if $(BOARD_AVB_VBMETA_VENDOR_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_VBMETA_VENDOR_KEY_PATH) \ --output $(1)/vbmeta_vendor.avbpubkey) $(if $(BOARD_CUSTOMIMAGES_PARTITION_LIST),\ $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(if $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST),\ $(hide) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(AVBTOOL) extract_public_key --key $(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH) \ --output $(1)/$(partition).avbpubkey;)) \ $(if $(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),\ Loading Loading @@ -5599,15 +5625,20 @@ ifdef BOARD_AVB_RECOVERY_KEY_PATH $(hide) echo "avb_recovery_rollback_index_location=$(BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION)" >> $@ endif # BOARD_AVB_RECOVERY_KEY_PATH ifneq (,$(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST))) $(hide) echo "avb_custom_images_partition_list=$(BOARD_CUSTOMIMAGES_PARTITION_LIST)" >> $@ $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(hide) echo "custom_images_partition_list=$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST))" >> $@ $(hide) $(foreach partition,$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST)), \ echo "$(partition)_image_list=$(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST),$(notdir $(image)))" >> $@;) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST ifneq (,$(strip $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST))) $(hide) echo "avb_custom_images_partition_list=$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST)" >> $@ $(hide) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ echo "avb_$(partition)_key_path=$(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH)" >> $@; \ echo "avb_$(partition)_algorithm=$(BOARD_AVB_$(call to-upper,$(partition))_ALGORITHM)" >> $@; \ echo "avb_$(partition)_add_hashtree_footer_args=$(BOARD_AVB_$(call to-upper,$(partition))_ADD_HASHTREE_FOOTER_ARGS)" >> $@; \ echo "avb_$(partition)_rollback_index_location=$(BOARD_AVB_$(call to-upper,$(partition))_ROLLBACK_INDEX_LOCATION)" >> $@; \ echo "avb_$(partition)_partition_size=$(BOARD_AVB_$(call to-upper,$(partition))_PARTITION_SIZE)" >> $@; \ echo "avb_$(partition)_image_list=$(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST),$(notdir $(image)))" >> $@;) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST endif # BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST ifneq (,$(strip $(BOARD_AVB_VBMETA_SYSTEM))) $(hide) echo "avb_vbmeta_system=$(BOARD_AVB_VBMETA_SYSTEM)" >> $@ $(hide) echo "avb_vbmeta_system_args=$(BOARD_AVB_MAKE_VBMETA_SYSTEM_IMAGE_ARGS)" >> $@ Loading Loading @@ -6430,7 +6461,7 @@ endif ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) $(hide) mkdir -p $(zip_root)/PREBUILT_IMAGES $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST),cp $(image) $(zip_root)/PREBUILT_IMAGES/;)) $(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST),cp $(image) $(zip_root)/PREBUILT_IMAGES/;)) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST @# The radio images in BOARD_PACK_RADIOIMAGES will be additionally copied from RADIO/ into @# IMAGES/, which then will be added into <product>-img.zip. Such images must be listed in Loading tools/releasetools/add_img_to_target_files.py +32 −18 Original line number Diff line number Diff line Loading @@ -517,12 +517,14 @@ def AddPvmfw(output_zip): return img.name def AddCustomImages(output_zip, partition_name): """Adds and signs custom images in IMAGES/. def AddCustomImages(output_zip, partition_name, image_list): """Adds and signs avb custom images as needed in IMAGES/. Args: output_zip: The output zip file (needs to be already open), or None to write images to OPTIONS.input_tmp/. partition_name: The custom image partition name. image_list: The image list of the custom image partition. Uses the image under IMAGES/ if it already exists. Otherwise looks for the image under PREBUILT_IMAGES/, signs it as needed, and returns the image name. Loading @@ -531,7 +533,9 @@ def AddCustomImages(output_zip, partition_name): AssertionError: If image can't be found. """ builder = None key_path = OPTIONS.info_dict.get("avb_{}_key_path".format(partition_name)) if key_path is not None: algorithm = OPTIONS.info_dict.get("avb_{}_algorithm".format(partition_name)) extra_args = OPTIONS.info_dict.get( "avb_{}_add_hashtree_footer_args".format(partition_name)) Loading @@ -542,8 +546,7 @@ def AddCustomImages(output_zip, partition_name): OPTIONS.info_dict, partition_name, partition_size, key_path, algorithm, extra_args) for img_name in OPTIONS.info_dict.get( "avb_{}_image_list".format(partition_name)).split(): for img_name in image_list: custom_image = OutputFile( output_zip, OPTIONS.input_tmp, "IMAGES", img_name) if os.path.exists(custom_image.name): Loading Loading @@ -1066,18 +1069,29 @@ def AddImagesToTargetFiles(filename): # Custom images. custom_partitions = OPTIONS.info_dict.get( "avb_custom_images_partition_list", "").strip().split() "custom_images_partition_list", "").strip().split() for partition_name in custom_partitions: partition_name = partition_name.strip() banner("custom images for " + partition_name) partitions[partition_name] = AddCustomImages(output_zip, partition_name) image_list = OPTIONS.info_dict.get( "{}_image_list".format(partition_name)).split() partitions[partition_name] = AddCustomImages(output_zip, partition_name, image_list) avb_custom_partitions = OPTIONS.info_dict.get( "avb_custom_images_partition_list", "").strip().split() for partition_name in avb_custom_partitions: partition_name = partition_name.strip() banner("avb custom images for " + partition_name) image_list = OPTIONS.info_dict.get( "avb_{}_image_list".format(partition_name)).split() partitions[partition_name] = AddCustomImages(output_zip, partition_name, image_list) if OPTIONS.info_dict.get("avb_enable") == "true": # vbmeta_partitions includes the partitions that should be included into # top-level vbmeta.img, which are the ones that are not included in any # chained VBMeta image plus the chained VBMeta images themselves. # Currently custom_partitions are all chained to VBMeta image. vbmeta_partitions = common.AVB_PARTITIONS[:] + tuple(custom_partitions) # Currently avb_custom_partitions are all chained to VBMeta image. vbmeta_partitions = common.AVB_PARTITIONS[:] + tuple(avb_custom_partitions) vbmeta_system = OPTIONS.info_dict.get("avb_vbmeta_system", "").strip() if vbmeta_system: Loading tools/releasetools/sign_target_files_apks.py +2 −1 Original line number Diff line number Diff line Loading @@ -1236,8 +1236,9 @@ def BuildVendorPartitions(output_zip_path): vendor_misc_info["has_dtbo"] = "false" # dtbo vendor_misc_info["has_pvmfw"] = "false" # pvmfw vendor_misc_info["avb_custom_images_partition_list"] = "" # custom images vendor_misc_info["avb_custom_images_partition_list"] = "" # avb custom images vendor_misc_info["avb_building_vbmeta_image"] = "false" # skip building vbmeta vendor_misc_info["custom_images_partition_list"] = "" # custom images vendor_misc_info["use_dynamic_partitions"] = "false" # super_empty vendor_misc_info["build_super_partition"] = "false" # super split vendor_misc_info["avb_vbmeta_system"] = "" # skip building vbmeta_system Loading Loading
core/Makefile +40 −9 Original line number Diff line number Diff line Loading @@ -4207,6 +4207,13 @@ INSTALLED_CUSTOMIMAGES_TARGET := ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) INTERNAL_AVB_CUSTOMIMAGES_SIGNING_ARGS := BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST := # If BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH is set, the image will be included in # BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST, otherwise the image won't be AVB signed. $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(if $(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH), \ $(eval BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST += $(partition)) \ $(eval BOARD_$(call to-upper,$(partition))_IMAGE_LIST := $(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST)))) # Sign custom image. # $(1): the prebuilt custom image. Loading @@ -4231,9 +4238,26 @@ endif INSTALLED_CUSTOMIMAGES_TARGET += $(3) endef $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ # Copy unsigned custom image. # $(1): the prebuilt custom image. # $(2): the signed custom image target. define copy_custom_image $(2): $(1) $(INTERNAL_USERIMAGES_DEPS) @echo Target custom image: $(2) mkdir -p $(dir $(2)) cp $(1) $(2) INSTALLED_CUSTOMIMAGES_TARGET += $(2) endef # Add AVB custom image to droid target $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST), \ $(eval $(call sign_custom_image,$(image),$(partition),$(PRODUCT_OUT)/$(notdir $(image)))))) # Add unsigned custom image to droid target $(foreach partition,$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST)), \ $(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST), \ $(eval $(call copy_custom_image,$(image),$(PRODUCT_OUT)/$(notdir $(image)))))) endif # ----------------------------------------------------------------- Loading Loading @@ -4510,7 +4534,9 @@ define check-and-set-custom-avb-chain-args $(eval part := $(1)) $(eval PART=$(call to-upper,$(part))) $(eval _rollback_index_location := BOARD_AVB_$(PART)_ROLLBACK_INDEX_LOCATION) $(eval _key_path := BOARD_AVB_$(PART)_KEY_PATH) $(if $($(_rollback_index_location)),,$(error $(_rollback_index_location) is not defined)) $(if $($(_key_path)),,$(error $(_key_path) is not defined)) INTERNAL_AVB_MAKE_VBMETA_IMAGE_ARGS += \ --chain_partition $(part):$($(_rollback_index_location)):$(AVB_CHAIN_KEY_DIR)/$(part).avbpubkey Loading Loading @@ -4590,8 +4616,8 @@ $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),$(eval $(call check-an $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),$(eval BOARD_AVB_MAKE_VBMETA_$(call to-upper,$(partition))_IMAGE_ARGS += --padding_size 4096)) endif ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ ifneq ($(strip $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST)),) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(eval $(call check-and-set-custom-avb-chain-args,$(partition)))) endif Loading Loading @@ -4678,8 +4704,8 @@ define extract-avb-chain-public-keys $(if $(BOARD_AVB_VBMETA_VENDOR_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_VBMETA_VENDOR_KEY_PATH) \ --output $(1)/vbmeta_vendor.avbpubkey) $(if $(BOARD_CUSTOMIMAGES_PARTITION_LIST),\ $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(if $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST),\ $(hide) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ $(AVBTOOL) extract_public_key --key $(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH) \ --output $(1)/$(partition).avbpubkey;)) \ $(if $(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS),\ Loading Loading @@ -5599,15 +5625,20 @@ ifdef BOARD_AVB_RECOVERY_KEY_PATH $(hide) echo "avb_recovery_rollback_index_location=$(BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION)" >> $@ endif # BOARD_AVB_RECOVERY_KEY_PATH ifneq (,$(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST))) $(hide) echo "avb_custom_images_partition_list=$(BOARD_CUSTOMIMAGES_PARTITION_LIST)" >> $@ $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(hide) echo "custom_images_partition_list=$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST))" >> $@ $(hide) $(foreach partition,$(filter-out $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), $(BOARD_CUSTOMIMAGES_PARTITION_LIST)), \ echo "$(partition)_image_list=$(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST),$(notdir $(image)))" >> $@;) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST ifneq (,$(strip $(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST))) $(hide) echo "avb_custom_images_partition_list=$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST)" >> $@ $(hide) $(foreach partition,$(BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST), \ echo "avb_$(partition)_key_path=$(BOARD_AVB_$(call to-upper,$(partition))_KEY_PATH)" >> $@; \ echo "avb_$(partition)_algorithm=$(BOARD_AVB_$(call to-upper,$(partition))_ALGORITHM)" >> $@; \ echo "avb_$(partition)_add_hashtree_footer_args=$(BOARD_AVB_$(call to-upper,$(partition))_ADD_HASHTREE_FOOTER_ARGS)" >> $@; \ echo "avb_$(partition)_rollback_index_location=$(BOARD_AVB_$(call to-upper,$(partition))_ROLLBACK_INDEX_LOCATION)" >> $@; \ echo "avb_$(partition)_partition_size=$(BOARD_AVB_$(call to-upper,$(partition))_PARTITION_SIZE)" >> $@; \ echo "avb_$(partition)_image_list=$(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST),$(notdir $(image)))" >> $@;) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST endif # BOARD_AVB_CUSTOMIMAGES_PARTITION_LIST ifneq (,$(strip $(BOARD_AVB_VBMETA_SYSTEM))) $(hide) echo "avb_vbmeta_system=$(BOARD_AVB_VBMETA_SYSTEM)" >> $@ $(hide) echo "avb_vbmeta_system_args=$(BOARD_AVB_MAKE_VBMETA_SYSTEM_IMAGE_ARGS)" >> $@ Loading Loading @@ -6430,7 +6461,7 @@ endif ifneq ($(strip $(BOARD_CUSTOMIMAGES_PARTITION_LIST)),) $(hide) mkdir -p $(zip_root)/PREBUILT_IMAGES $(hide) $(foreach partition,$(BOARD_CUSTOMIMAGES_PARTITION_LIST), \ $(foreach image,$(BOARD_AVB_$(call to-upper,$(partition))_IMAGE_LIST),cp $(image) $(zip_root)/PREBUILT_IMAGES/;)) $(foreach image,$(BOARD_$(call to-upper,$(partition))_IMAGE_LIST),cp $(image) $(zip_root)/PREBUILT_IMAGES/;)) endif # BOARD_CUSTOMIMAGES_PARTITION_LIST @# The radio images in BOARD_PACK_RADIOIMAGES will be additionally copied from RADIO/ into @# IMAGES/, which then will be added into <product>-img.zip. Such images must be listed in Loading
tools/releasetools/add_img_to_target_files.py +32 −18 Original line number Diff line number Diff line Loading @@ -517,12 +517,14 @@ def AddPvmfw(output_zip): return img.name def AddCustomImages(output_zip, partition_name): """Adds and signs custom images in IMAGES/. def AddCustomImages(output_zip, partition_name, image_list): """Adds and signs avb custom images as needed in IMAGES/. Args: output_zip: The output zip file (needs to be already open), or None to write images to OPTIONS.input_tmp/. partition_name: The custom image partition name. image_list: The image list of the custom image partition. Uses the image under IMAGES/ if it already exists. Otherwise looks for the image under PREBUILT_IMAGES/, signs it as needed, and returns the image name. Loading @@ -531,7 +533,9 @@ def AddCustomImages(output_zip, partition_name): AssertionError: If image can't be found. """ builder = None key_path = OPTIONS.info_dict.get("avb_{}_key_path".format(partition_name)) if key_path is not None: algorithm = OPTIONS.info_dict.get("avb_{}_algorithm".format(partition_name)) extra_args = OPTIONS.info_dict.get( "avb_{}_add_hashtree_footer_args".format(partition_name)) Loading @@ -542,8 +546,7 @@ def AddCustomImages(output_zip, partition_name): OPTIONS.info_dict, partition_name, partition_size, key_path, algorithm, extra_args) for img_name in OPTIONS.info_dict.get( "avb_{}_image_list".format(partition_name)).split(): for img_name in image_list: custom_image = OutputFile( output_zip, OPTIONS.input_tmp, "IMAGES", img_name) if os.path.exists(custom_image.name): Loading Loading @@ -1066,18 +1069,29 @@ def AddImagesToTargetFiles(filename): # Custom images. custom_partitions = OPTIONS.info_dict.get( "avb_custom_images_partition_list", "").strip().split() "custom_images_partition_list", "").strip().split() for partition_name in custom_partitions: partition_name = partition_name.strip() banner("custom images for " + partition_name) partitions[partition_name] = AddCustomImages(output_zip, partition_name) image_list = OPTIONS.info_dict.get( "{}_image_list".format(partition_name)).split() partitions[partition_name] = AddCustomImages(output_zip, partition_name, image_list) avb_custom_partitions = OPTIONS.info_dict.get( "avb_custom_images_partition_list", "").strip().split() for partition_name in avb_custom_partitions: partition_name = partition_name.strip() banner("avb custom images for " + partition_name) image_list = OPTIONS.info_dict.get( "avb_{}_image_list".format(partition_name)).split() partitions[partition_name] = AddCustomImages(output_zip, partition_name, image_list) if OPTIONS.info_dict.get("avb_enable") == "true": # vbmeta_partitions includes the partitions that should be included into # top-level vbmeta.img, which are the ones that are not included in any # chained VBMeta image plus the chained VBMeta images themselves. # Currently custom_partitions are all chained to VBMeta image. vbmeta_partitions = common.AVB_PARTITIONS[:] + tuple(custom_partitions) # Currently avb_custom_partitions are all chained to VBMeta image. vbmeta_partitions = common.AVB_PARTITIONS[:] + tuple(avb_custom_partitions) vbmeta_system = OPTIONS.info_dict.get("avb_vbmeta_system", "").strip() if vbmeta_system: Loading
tools/releasetools/sign_target_files_apks.py +2 −1 Original line number Diff line number Diff line Loading @@ -1236,8 +1236,9 @@ def BuildVendorPartitions(output_zip_path): vendor_misc_info["has_dtbo"] = "false" # dtbo vendor_misc_info["has_pvmfw"] = "false" # pvmfw vendor_misc_info["avb_custom_images_partition_list"] = "" # custom images vendor_misc_info["avb_custom_images_partition_list"] = "" # avb custom images vendor_misc_info["avb_building_vbmeta_image"] = "false" # skip building vbmeta vendor_misc_info["custom_images_partition_list"] = "" # custom images vendor_misc_info["use_dynamic_partitions"] = "false" # super_empty vendor_misc_info["build_super_partition"] = "false" # super split vendor_misc_info["avb_vbmeta_system"] = "" # skip building vbmeta_system Loading