Bug 1485174 - Prevent using an objdir to build with tup that was previously used to build with make. r=firefox-build-system-reviewers,froydnj

Differential Revision: https://phabricator.services.mozilla.com/D4154

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Chris Manchester 2018-08-24 18:13:20 +00:00
Родитель 2b03865bc5
Коммит 986a8ae47f
1 изменённых файлов: 11 добавлений и 0 удалений

Просмотреть файл

@ -6,6 +6,7 @@ from __future__ import absolute_import, unicode_literals
import errno
import getpass
import glob
import io
import json
import logging
@ -1047,6 +1048,16 @@ class BuildDriver(MozbuildObject):
status = None
active_backend = config.substs.get('BUILD_BACKENDS', [None])[0]
if active_backend and 'Make' not in active_backend:
for backend_file in glob.iglob(mozpath.join(self.topobjdir,
'backend.*Backend')):
if 'Make' in backend_file:
self.log(logging.ERROR, 'backend',
{'objdir': self.topobjdir},
"The active objdir, {objdir}, was previously "
"used to build with a Make-based backend. "
"Change objdirs (by setting MOZ_OBJDIR in "
"your mozconfig) to continue.\n")
return 1
# Record whether a clobber was requested so we can print
# a special message later if the build fails.
clobber_requested = False