mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 894973 - mach command to dump environment and build config info; r=ted
DONTBUILD (NPOTB) --HG-- extra : rebase_source : 27e23637b6e015b28f72078ab074624ea134318b
This commit is contained in:
parent
94e6470c84
commit
160161e0a6
@ -17,7 +17,12 @@ from mach.decorators import (
|
||||
|
||||
from mach.mixin.logging import LoggingMixin
|
||||
|
||||
from mozbuild.base import MachCommandBase
|
||||
from mozbuild.base import (
|
||||
MachCommandBase,
|
||||
MozbuildObject,
|
||||
MozconfigFindException,
|
||||
MozconfigLoadException,
|
||||
)
|
||||
|
||||
|
||||
BUILD_WHAT_HELP = '''
|
||||
@ -743,3 +748,81 @@ class Makefiles(MachCommandBase):
|
||||
if f == 'Makefile.in':
|
||||
yield os.path.join(root, f)
|
||||
|
||||
@CommandProvider
|
||||
class MachDebug(object):
|
||||
def __init__(self, context):
|
||||
self.context = context
|
||||
|
||||
@Command('environment', category='build-dev',
|
||||
description='Show info about the mach and build environment.')
|
||||
@CommandArgument('--verbose', '-v', action='store_true',
|
||||
help='Print verbose output.')
|
||||
def environment(self, verbose=False):
|
||||
import platform
|
||||
print('platform:\n\t%s' % platform.platform())
|
||||
print('python version:\n\t%s' % sys.version)
|
||||
print('python prefix:\n\t%s' % sys.prefix)
|
||||
print('mach cwd:\n\t%s' % self.context.cwd)
|
||||
print('os cwd:\n\t%s' % os.getcwd())
|
||||
print('mach directory:\n\t%s' % self.context.topdir)
|
||||
print('state directory:\n\t%s' % self.context.state_dir)
|
||||
|
||||
mb = MozbuildObject(self.context.topdir, self.context.settings,
|
||||
self.context.log_manager)
|
||||
|
||||
mozconfig = None
|
||||
|
||||
try:
|
||||
mozconfig = mb.mozconfig
|
||||
print('mozconfig path:\n\t%s' % mozconfig['path'])
|
||||
except MozconfigFindException as e:
|
||||
print('Unable to find mozconfig: %s' % e.message)
|
||||
return 1
|
||||
|
||||
except MozconfigLoadException as e:
|
||||
print('Error loading mozconfig: %s' % e.path)
|
||||
print(e.message)
|
||||
|
||||
if e.output:
|
||||
print('mozconfig evaluation output:')
|
||||
for line in e.output:
|
||||
print(line)
|
||||
|
||||
return 1
|
||||
|
||||
print('object directory:\n\t%s' % mb.topobjdir)
|
||||
|
||||
if mozconfig:
|
||||
print('mozconfig objdir:\n\t%s' % mozconfig['topobjdir'])
|
||||
print('mozconfig configure args:')
|
||||
for arg in mozconfig['configure_args']:
|
||||
print('\t%s' % arg)
|
||||
|
||||
print('mozconfig extra make args:')
|
||||
for arg in mozconfig['make_extra']:
|
||||
print('\t%s' % arg)
|
||||
|
||||
print('mozconfig make flags:')
|
||||
for arg in mozconfig['make_flags']:
|
||||
print('\t%s' % arg)
|
||||
|
||||
config = None
|
||||
|
||||
try:
|
||||
config = mb.config_environment
|
||||
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
if config:
|
||||
print('config topsrcdir:\n\t%s' % config.topsrcdir)
|
||||
print('config topobjdir:\n\t%s' % config.topobjdir)
|
||||
|
||||
if verbose:
|
||||
print('config substitutions:')
|
||||
for k in sorted(config.substs):
|
||||
print('\t%s: %s' % (k, config.substs[k]))
|
||||
|
||||
print('config defines:')
|
||||
for k in sorted(config.defines):
|
||||
print('\t%s' % k)
|
||||
|
Loading…
Reference in New Issue
Block a user