Avoid using soong_zip's "-e" flag for boot.zip.

aosp/23658853 changes boot.zip, which need to be cherry-picked to UDC.
It uses soong_zip's "-e" flag to specify the filename to use in boot.zip
for METADATA.txt. However, the "-e" flag doesn't exist on UDC. This
change uses an alternative approach to avoid using the "-e" flag.

Before this change, the contents were written to
out/dist/boot.zip.METADATA.txt and then passed to soong_zip with "-e" to
rename to file to "METADATA.txt".

After this change, the contents are written to
out/dist/boot_zip/METADATA.txt and then passed to soong_zip with "-j" to
remove the directory name.

Bug: 286381070
Test: m dist out/dist/boot.zip (on udc-dev)
Change-Id: I769de5194b5716f05e5352f4efd635a70ba0b891
This commit is contained in:
Jiakai Zhang 2023-06-12 11:18:12 +01:00
parent a5551c5d91
commit 34914f620b

View file

@ -95,7 +95,7 @@ booclasspath_locations_arg := $(subst $(space),:,$(DEXPREOPT_BOOTCLASSPATH_DEX_L
boot_images := $(subst :,$(space),$(DEXPREOPT_IMAGE_LOCATIONS_ON_DEVICE$(DEXPREOPT_INFIX)))
boot_image_arg := $(subst $(space),:,$(patsubst /%,%,$(boot_images)))
boot_zip_metadata_txt := $(boot_zip).METADATA.txt
boot_zip_metadata_txt := $(dir $(boot_zip))boot_zip/METADATA.txt
$(boot_zip_metadata_txt):
rm -f $@
echo "booclasspath = $(booclasspath_arg)" >> $@
@ -112,7 +112,7 @@ $(boot_zip): $(bootclasspath_jars) $(system_server_jars) $(SOONG_ZIP) $(MERGE_ZI
$(SOONG_ZIP) -o $@.tmp \
-C $(dir $(firstword $(PRIVATE_BOOTCLASSPATH_JARS)))/.. $(addprefix -f ,$(PRIVATE_BOOTCLASSPATH_JARS)) \
-C $(PRODUCT_OUT) $(addprefix -f ,$(PRIVATE_SYSTEM_SERVER_JARS)) \
-e METADATA.txt -f $(boot_zip_metadata_txt)
-j -f $(boot_zip_metadata_txt)
$(MERGE_ZIPS) $@ $@.tmp $(DEXPREOPT_IMAGE_ZIP_boot) $(DEXPREOPT_IMAGE_ZIP_art) $(DEXPREOPT_IMAGE_ZIP_mainline)
rm -f $@.tmp