From 13168ba15b63ccdd4b34e0a20bcb4deb37ab29f3 Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Fri, 1 Jun 2018 13:21:30 +0200 Subject: Add build config option to disable startup cache precompilation. This resolves #418. --- old-configure.in | 16 ++++++++++++++++ toolkit/mozapps/installer/packager.py | 19 ++++++++++--------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/old-configure.in b/old-configure.in index 13f6915b4..120abdf8a 100644 --- a/old-configure.in +++ b/old-configure.in @@ -4339,6 +4339,22 @@ MOZ_ARG_ENABLE_BOOL(debug-js-modules, AC_SUBST(DEBUG_JS_MODULES) +dnl ======================================================== +dnl = Don't precompile the startup cache +dnl ======================================================== +MOZ_DISABLE_PRECOMPILED_STARTUPCACHE= + +MOZ_ARG_DISABLE_BOOL(precompiled-startupcache, +[ --disable-precompiled-startupcache Don't precompile the startup cache ], + MOZ_DISABLE_PRECOMPILED_STARTUPCACHE=1, + MOZ_DISABLE_PRECOMPILED_STARTUPCACHE= ) + +if test -n "$MOZ_DISABLE_PRECOMPILED_STARTUPCACHE"; then + AC_DEFINE(MOZ_DISABLE_PRECOMPILED_STARTUPCACHE) +fi + +AC_SUBST(MOZ_DISABLE_PRECOMPILED_STARTUPCACHE) + dnl ======================================================== dnl = dnl = Profiling and Instrumenting diff --git a/toolkit/mozapps/installer/packager.py b/toolkit/mozapps/installer/packager.py index f2dc3fac6..40f31646a 100644 --- a/toolkit/mozapps/installer/packager.py +++ b/toolkit/mozapps/installer/packager.py @@ -156,15 +156,16 @@ def precompile_cache(registry, source_path, gre_path, app_path): extra_env['TSAN_OPTIONS'] = 'report_bugs=0' if buildconfig.substs.get('MOZ_ASAN'): extra_env['ASAN_OPTIONS'] = 'detect_leaks=0' - if launcher.launch(['xpcshell', '-g', gre_path, '-a', app_path, - '-f', os.path.join(os.path.dirname(__file__), - 'precompile_cache.js'), - '-e', 'precompile_startupcache("resource://%s/");' - % resource], - extra_linker_path=gre_path, - extra_env=extra_env): - errors.fatal('Error while running startup cache precompilation') - return + if buildconfig.substs.get('MOZ_DISABLE_PRECOMPILED_STARTUPCACHE') != '1': + if launcher.launch(['xpcshell', '-g', gre_path, '-a', app_path, + '-f', os.path.join(os.path.dirname(__file__), + 'precompile_cache.js'), + '-e', 'precompile_startupcache("resource://%s/");' + % resource], + extra_linker_path=gre_path, + extra_env=extra_env): + errors.fatal('Error while running startup cache precompilation') + return from mozpack.mozjar import JarReader jar = JarReader(cache) resource = '/resource/%s/' % resource -- cgit v1.2.3