summaryrefslogtreecommitdiffstats
path: root/toolkit
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2020-11-14 01:03:27 +0000
committerMoonchild <moonchild@palemoon.org>2020-11-18 10:58:48 +0000
commit8b3375e2c202c04935ca056cc8dc389a08e47bb6 (patch)
tree6dbbbdfd28f5b70f7d9b7fad0af7a8fee7e5019f /toolkit
parent8fefeee3c3e4ff5195a98496c3855d8aabce4ffa (diff)
downloadUXP-8b3375e2c202c04935ca056cc8dc389a08e47bb6.tar
UXP-8b3375e2c202c04935ca056cc8dc389a08e47bb6.tar.gz
UXP-8b3375e2c202c04935ca056cc8dc389a08e47bb6.tar.lz
UXP-8b3375e2c202c04935ca056cc8dc389a08e47bb6.tar.xz
UXP-8b3375e2c202c04935ca056cc8dc389a08e47bb6.zip
[packager] Optimize archive accesses.
Diffstat (limited to 'toolkit')
-rw-r--r--toolkit/mozapps/installer/packager.mk2
-rw-r--r--toolkit/mozapps/installer/packager.py17
-rw-r--r--toolkit/mozapps/installer/upload-files.mk2
3 files changed, 14 insertions, 7 deletions
diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk
index e700b5162..6cae15658 100644
--- a/toolkit/mozapps/installer/packager.mk
+++ b/toolkit/mozapps/installer/packager.mk
@@ -50,7 +50,7 @@ stage-package: $(MOZ_PKG_MANIFEST) $(MOZ_PKG_MANIFEST_DEPS)
) \
$(if $(JARLOG_DIR),$(addprefix --jarlog ,$(wildcard $(JARLOG_FILE_AB_CD)))) \
$(if $(OPTIMIZEJARS),--optimizejars) \
- $(if $(DISABLE_JAR_COMPRESSION),--disable-compression) \
+ $(addprefix --compress ,$(JAR_COMPRESSION)) \
$(addprefix --unify ,$(UNIFY_DIST)) \
$(MOZ_PKG_MANIFEST) '$(DIST)' '$(DIST)'/$(STAGEPATH)$(MOZ_PKG_DIR)$(if $(MOZ_PKG_MANIFEST),,$(_BINPATH)) \
$(if $(filter omni,$(MOZ_PACKAGER_FORMAT)),$(if $(NON_OMNIJAR_FILES),--non-resource $(NON_OMNIJAR_FILES)))
diff --git a/toolkit/mozapps/installer/packager.py b/toolkit/mozapps/installer/packager.py
index 1a144823c..3b90e97c2 100644
--- a/toolkit/mozapps/installer/packager.py
+++ b/toolkit/mozapps/installer/packager.py
@@ -23,6 +23,7 @@ from mozpack.copier import (
Jarrer,
)
from mozpack.errors import errors
+from mozpack.mozjar import JAR_BROTLI
from mozpack.unify import UnifiedBuildFinder
import mozpack.path as mozpath
import buildconfig
@@ -270,9 +271,9 @@ def main():
help='Enable jar optimizations')
parser.add_argument('--unify', default='',
help='Base directory of another build to unify with')
- parser.add_argument('--disable-compression', action='store_false',
- dest='compress', default=True,
- help='Disable jar compression')
+ parser.add_argument('--compress', choices=('none', 'deflate', 'brotli'),
+ default='deflate',
+ help='Use given jar compression (default: deflate)')
parser.add_argument('manifest', default=None, nargs='?',
help='Manifest file name')
parser.add_argument('source', help='Source directory')
@@ -290,15 +291,21 @@ def main():
for name, value in [split_define(d) for d in args.defines]:
defines[name] = value
+ compress = {
+ 'none': False,
+ 'deflate': True,
+ 'brotli': JAR_BROTLI,
+ }[args.compress]
+
copier = FileCopier()
if args.format == 'flat':
formatter = FlatFormatter(copier)
elif args.format == 'jar':
- formatter = JarFormatter(copier, compress=args.compress, optimize=args.optimizejars)
+ formatter = JarFormatter(copier, compress=compress, optimize=args.optimizejars)
elif args.format == 'omni':
formatter = OmniJarFormatter(copier,
buildconfig.substs['OMNIJAR_NAME'],
- compress=args.compress,
+ compress=compress,
optimize=args.optimizejars,
non_resources=args.non_resource)
else:
diff --git a/toolkit/mozapps/installer/upload-files.mk b/toolkit/mozapps/installer/upload-files.mk
index 82b550fb4..865d2cf6a 100644
--- a/toolkit/mozapps/installer/upload-files.mk
+++ b/toolkit/mozapps/installer/upload-files.mk
@@ -385,7 +385,7 @@ ifneq (android,$(MOZ_WIDGET_TOOLKIT))
OPTIMIZEJARS = 1
ifneq (gonk,$(MOZ_WIDGET_TOOLKIT))
ifdef NIGHTLY_BUILD
- DISABLE_JAR_COMPRESSION = 1
+ JAR_COMPRESSION ?= none
endif
endif
endif