Issue #1859 - Part 6: Update mach mar to accept --bz2 for old style MAR

So we can build bzip2 MARs for selectively updating older versions of
the applications that don't understand xz.
This commit is contained in:
Moonchild 2022-04-17 19:19:34 +02:00 committed by roytam1
commit 6c1c2339bc
3 changed files with 29 additions and 3 deletions

View file

@ -1137,8 +1137,13 @@ class Mar(MachCommandBase):
@Command('mar', category='post-build', @Command('mar', category='post-build',
description='Create the mar file for the built product for distribution.') description='Create the mar file for the built product for distribution.')
def mar(self): @CommandArgument('--bz2', action='store_true',
return self._run_make(directory="./tools/update-packaging/", target='', ensure_exit_code=False) help='Compress the mar package with old-style bz2 instead of xz')
def mar(self, bz2):
if bz2:
return self._run_make(directory="./tools/update-packaging/", target='mar-package-bz2', ensure_exit_code=False)
else:
return self._run_make(directory="./tools/update-packaging/", target='mar-package', ensure_exit_code=False)
@CommandProvider @CommandProvider
class Install(MachCommandBase): class Install(MachCommandBase):

View file

@ -80,6 +80,7 @@ PKG_UPDATE_BASENAME = $(PKG_BASENAME)
CHECKSUMS_FILE_BASENAME = $(PKG_BASENAME) CHECKSUMS_FILE_BASENAME = $(PKG_BASENAME)
MOZ_INFO_BASENAME = $(PKG_BASENAME) MOZ_INFO_BASENAME = $(PKG_BASENAME)
PKG_UPDATE_PATH = $(PKG_PATH) PKG_UPDATE_PATH = $(PKG_PATH)
BARE_MAR = $(PKG_UPDATE_PATH)$(PKG_UPDATE_BASENAME).mar
COMPLETE_MAR = $(PKG_UPDATE_PATH)$(PKG_UPDATE_BASENAME).complete.mar COMPLETE_MAR = $(PKG_UPDATE_PATH)$(PKG_UPDATE_BASENAME).complete.mar
# PARTIAL_MAR needs to be processed by $(wildcard) before you use it. # PARTIAL_MAR needs to be processed by $(wildcard) before you use it.
PARTIAL_MAR = $(PKG_UPDATE_PATH)$(PKG_UPDATE_BASENAME).partial.*.mar PARTIAL_MAR = $(PKG_UPDATE_PATH)$(PKG_UPDATE_BASENAME).partial.*.mar

View file

@ -31,7 +31,7 @@ MAR_BIN = $(DIST)/host/bin/mar$(HOST_BIN_SUFFIX)
MBSDIFF_BIN = $(DIST)/host/bin/mbsdiff$(HOST_BIN_SUFFIX) MBSDIFF_BIN = $(DIST)/host/bin/mbsdiff$(HOST_BIN_SUFFIX)
OVERRIDE_DEFAULT_GOAL := full-update OVERRIDE_DEFAULT_GOAL := full-update
full-update:: complete-patch full-update:: mar-package
ifeq ($(OS_TARGET), WINNT) ifeq ($(OS_TARGET), WINNT)
ifdef AB_CD ifdef AB_CD
@ -70,3 +70,23 @@ partial-patch:: $(dir-stage)
ifdef MOZ_SIGN_CMD ifdef MOZ_SIGN_CMD
$(MOZ_SIGN_CMD) -f mar '$(STAGE_DIR)/$(PKG_UPDATE_BASENAME).partial.$(SRC_BUILD_ID)-$(DST_BUILD_ID).mar' $(MOZ_SIGN_CMD) -f mar '$(STAGE_DIR)/$(PKG_UPDATE_BASENAME).partial.$(SRC_BUILD_ID)-$(DST_BUILD_ID).mar'
endif endif
mar-package: $(call mkdir_deps,$(ABS_DIST)/$(PKG_STAGE_DIR))
@echo 'Creating update mar (xz compressed)...'
MAR=$(MAR_BIN) \
$(srcdir)/make_full_update.sh \
'$(DIST)/$(BARE_MAR)' \
'$(PACKAGE_DIR)'
ifdef MOZ_SIGN_CMD
$(MOZ_SIGN_CMD) -f mar '$(DIST)/$(BARE_MAR)'
endif
mar-package-bz2: $(call mkdir_deps,$(ABS_DIST)/$(PKG_STAGE_DIR))
@echo 'Creating update mar (bz2 compressed)...'
MAR_OLD_FORMAT=1 MAR=$(MAR_BIN) \
$(srcdir)/make_full_update.sh \
'$(DIST)/$(COMPLETE_MAR)' \
'$(PACKAGE_DIR)'
ifdef MOZ_SIGN_CMD
$(MOZ_SIGN_CMD) -f mar '$(DIST)/$(COMPLETE_MAR)'
endif