Bug 1363582 - Pass environment-only js_options down to old-configure through the environment. r=chmanchester

old-configure does not support being passed them as command line
arguments, so we have to pass them through the environment.

--HG--
extra : rebase_source : e51ea5cc5f95a35929ed1e619d8f04b5d39139fd
This commit is contained in:
Mike Hommey 2017-05-10 11:04:00 +09:00
Родитель b99b76b842
Коммит f57ed7a6e8
1 изменённых файлов: 16 добавлений и 1 удалений

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

@ -319,15 +319,30 @@ def old_configure(prepare_configure, extra_old_configure_args, all_options,
if value.origin != 'default'
]
env = os.environ
extra_env = {}
# We also pass it the options from js/moz.configure so that it can pass
# them down to js/src/configure. Note this list is empty when running
# js/src/configure, in which case we don't need to pass those options
# to old-configure since old-configure doesn't handle them anyways.
if extra_old_configure_args:
cmd += extra_old_configure_args
for arg in extra_old_configure_args:
if arg.startswith('-'):
cmd.append(arg)
else:
k, v = arg.split('=', 1)
extra_env[k] = v
if extra_env:
env = dict(env)
env.update(extra_env)
# For debugging purpose, in case it's not what we'd expect.
log.debug('Running %s', quote(*cmd))
if extra_env:
log.debug('with extra environment: %s',
' '.join('%s=%s' % pair for pair in extra_env.iteritems()))
# Our logging goes to config.log, the same file old.configure uses.
# We can't share the handle on the file, so close it. We assume nothing