Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5341445b authored by Jackeagle's avatar Jackeagle
Browse files

build: Conditionalize addition of img files to recovery zip



- Optimize and let maintainers decide what img files are required for recovery to boot on their devices

Signed-off-by: default avatarJackeagle <jackeagle102@gmail.com>
parent 35ff6240
Loading
Loading
Loading
Loading
+36 −21
Original line number Diff line number Diff line
@@ -317,22 +317,27 @@ if [ -n "${BRANCH_NAME}" ] && [ -n "${DEVICE}" ]; then
        fi

        if [ "$RECOVERY_IMG" = true ]; then

            RECOVERY_IMG_NAME="recovery-${build%.*}.img"
            BOOT_IMG_NAME="boot-${build%.*}.img"
          DTBO_IMG_NAME="dtbo-${build%.*}.img"
          SUPER_EMPTY_IMG_NAME="super_empty-${build%.*}.img"
          VBMETA_IMG_NAME="vbmeta-${build%.*}.img"
          VENDOR_BOOT_IMG_NAME="vendor_boot-${build%.*}.img"
          RECOVERY_IMG_NAME="recovery-${build%.*}.img"
          RECOVERY_ZIP_NAME="recovery-IMG-${build%.*}.zip"

            if [ "$RECOVERY_NEEDS_SUPPORT_IMG" = true ]; then
                # Copy the files specified by the flags
                if [ "$RECOVERY_NEEDS_DTBO_IMG" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/dtbo.img "$DTBO_IMG_NAME"
                fi
                if [ "$RECOVERY_NEEDS_VBMETA_IMG" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/vbmeta.img "$VBMETA_IMG_NAME"

                fi
                if [ "$RECOVERY_NEEDS_VENDOR_BOOT_IMG" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/vendor_boot.img "$VENDOR_BOOT_IMG_NAME"
                fi
                if [ "$RECOVERY_NEEDS_SUPER_IMG" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/super_empty.img "$SUPER_EMPTY_IMG_NAME"
                fi

                if [ "$VBOOT_IS_RECOVERY" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/vendor_boot.img "$RECOVERY_IMG_NAME"
@@ -342,28 +347,38 @@ if [ -n "${BRANCH_NAME}" ] && [ -n "${DEVICE}" ]; then
                    cp -a boot.img "$RECOVERY_IMG_NAME"
                fi

                # Conditionally include vendor_boot.img only when RECOVERY_NEEDS_VENDOR_BOOT_IMG is set.
                # Conditionally include files in zip command based on flags
                files_to_zip=("$RECOVERY_IMG_NAME")
                if [ "$RECOVERY_NEEDS_DTBO_IMG" = true ]; then
                    files_to_zip+=("$DTBO_IMG_NAME")
                fi
                if [ "$RECOVERY_NEEDS_VBMETA_IMG" = true ]; then
                    files_to_zip+=("$VBMETA_IMG_NAME")
                fi
                if [ "$RECOVERY_NEEDS_VENDOR_BOOT_IMG" = true ]; then
                    zip "$RECOVERY_ZIP_NAME" "$DTBO_IMG_NAME" "$VBMETA_IMG_NAME" $RECOVERY_IMG_NAME "$VENDOR_BOOT_IMG_NAME"
                else
                    zip "$RECOVERY_ZIP_NAME" "$DTBO_IMG_NAME" "$VBMETA_IMG_NAME" $RECOVERY_IMG_NAME
                    files_to_zip+=("$VENDOR_BOOT_IMG_NAME")
                fi
                if [ "$RECOVERY_NEEDS_SUPER_IMG" = true ]; then
                    files_to_zip+=("$SUPER_EMPTY_IMG_NAME")
                fi

                # Zip command
                zip "$RECOVERY_ZIP_NAME" "${files_to_zip[@]}"
                sha256sum "$RECOVERY_ZIP_NAME" > "$RECOVERY_ZIP_NAME.sha256sum"
                mv "$RECOVERY_ZIP_NAME"* "$ZIP_DIR/$zipsubdir/"
                mv "$RECOVERY_ZIP_NAME" "$ZIP_DIR/$zipsubdir/"
            else
                if [ "$VBOOT_IS_RECOVERY" = true ]; then
                    cp -a obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/vendor_boot.img "$RECOVERY_IMG_NAME"
                    cp -a "obj/PACKAGING/target_files_intermediates/lineage_*/IMAGES/vendor_boot.img" "$RECOVERY_IMG_NAME"
                elif [ -f "recovery.img" ]; then
                    cp -a recovery.img "$RECOVERY_IMG_NAME"
                    RECOVERY_IMG_NAME="recovery.img"
                else
                    cp -a boot.img "$RECOVERY_IMG_NAME"
                    RECOVERY_IMG_NAME="boot.img"
                fi

                # Calculate sha256sum and move file
                sha256sum "$RECOVERY_IMG_NAME" > "$RECOVERY_IMG_NAME.sha256sum"
                mv "$RECOVERY_IMG_NAME"* "$ZIP_DIR/$zipsubdir/"
                mv "$RECOVERY_IMG_NAME" "$ZIP_DIR/$zipsubdir/"
            fi

        fi
      done