| Index: pylib/gyp/generator/make.py
|
| diff --git a/pylib/gyp/generator/make.py b/pylib/gyp/generator/make.py
|
| index 8f66b6cabac027ee439ba00686dcecee5cc0d9a9..34f889c32837a43d9ad9aaaa938943fd13c880e2 100644
|
| --- a/pylib/gyp/generator/make.py
|
| +++ b/pylib/gyp/generator/make.py
|
| @@ -2002,14 +2002,22 @@ def GenerateOutput(target_list, target_dicts, data, params):
|
|
|
| build_file, _, _ = gyp.common.ParseQualifiedTarget(target_list[0])
|
| make_global_settings_array = data[build_file].get('make_global_settings', [])
|
| + wrappers = {}
|
| + wrappers['LINK'] = '%s $(builddir)/linker.lock' % flock_command
|
| + for key, value in make_global_settings_array:
|
| + if key.endswith('_wrapper'):
|
| + wrappers[key[:-len('_wrapper')]] = '$(abspath %s)' % value
|
| make_global_settings = ''
|
| for key, value in make_global_settings_array:
|
| + if re.match('.*_wrapper', key):
|
| + continue
|
| if value[0] != '$':
|
| value = '$(abspath %s)' % value
|
| - if key == 'LINK':
|
| - make_global_settings += ('%s ?= %s $(builddir)/linker.lock %s\n' %
|
| - (key, flock_command, value))
|
| - elif key in ('CC', 'CC.host', 'CXX', 'CXX.host'):
|
| + wrapper = wrappers.get(key)
|
| + if wrapper:
|
| + value = '%s %s' % (wrapper, value)
|
| + del wrappers[key]
|
| + if key in ('CC', 'CC.host', 'CXX', 'CXX.host'):
|
| make_global_settings += (
|
| 'ifneq (,$(filter $(origin %s), undefined default))\n' % key)
|
| # Let gyp-time envvars win over global settings.
|
| @@ -2019,6 +2027,9 @@ def GenerateOutput(target_list, target_dicts, data, params):
|
| make_global_settings += 'endif\n'
|
| else:
|
| make_global_settings += '%s ?= %s\n' % (key, value)
|
| + # TODO(ukai): define cmd when only wrapper is specified in
|
| + # make_global_settings.
|
| +
|
| header_params['make_global_settings'] = make_global_settings
|
|
|
| ensure_directory_exists(makefile_path)
|
|
|