Bug 1475071 - Enable --no-sync and --debug-logging when running tup; r=chmanchester

The --no-sync flag turns off the SQLite synchronous pragma, so we don't
force the disk to sync on every 'mach build'. Since mach always touches
a few files (eg: warnings.json, .purgecaches, etc), there is always a
minor amount of updates to the database, and syncing them every time
just forces an unnecessary delay.

The --debug-logging flag saves logs under .tup/log to show what files
changes or were deleted, as well as the corresponding build DAG. This
can be helpful when trying to investigate why something was rebuilt.

MozReview-Commit-ID: L0m7IsYlFUI

--HG--
extra : rebase_source : 0a26bf49778dfa13644f200be3e7061491b135c0
This commit is contained in:
Mike Shal 2018-07-31 10:07:57 -04:00
parent ee320f1dec
commit f78ff6326c

View File

@ -291,6 +291,8 @@ class TupBackend(CommonBackend):
args = [self.environment.substs['TUP'], 'upd'] + what
if self.environment.substs.get('MOZ_AUTOMATION'):
args += ['--quiet']
else:
args += ['--debug-logging']
if verbose:
args += ['--verbose']
if jobs > 0:
@ -671,7 +673,7 @@ class TupBackend(CommonBackend):
# Run 'tup init' if necessary.
if not os.path.exists(mozpath.join(self.environment.topsrcdir, ".tup")):
tup = self.environment.substs.get('TUP', 'tup')
self._cmd.run_process(cwd=self.environment.topsrcdir, log_name='tup', args=[tup, 'init'])
self._cmd.run_process(cwd=self.environment.topsrcdir, log_name='tup', args=[tup, 'init', '--no-sync'])
def _get_cargo_flags(self, obj):