Chromium Code Reviews| Index: pylib/gyp/generator/make.py |
| =================================================================== |
| --- pylib/gyp/generator/make.py (revision 1452) |
| +++ pylib/gyp/generator/make.py (working copy) |
| @@ -62,6 +62,8 @@ |
| """Calculate additional variables for use in the build (called by gyp).""" |
| cc_target = os.environ.get('CC.target', os.environ.get('CC', 'cc')) |
| flavor = gyp.common.GetFlavor(params) |
| + default_variables.setdefault('HOST_OS', gyp.common.GetHostFlavor(params)) |
| + |
| if flavor == 'mac': |
| default_variables.setdefault('OS', 'mac') |
| default_variables.setdefault('SHARED_LIB_SUFFIX', '.dylib') |
| @@ -1919,6 +1921,7 @@ |
| def GenerateOutput(target_list, target_dicts, data, params): |
| options = params['options'] |
| flavor = gyp.common.GetFlavor(params) |
| + host_flavor = gyp.common.GetHostFlavor(params) |
| generator_flags = params.get('generator_flags', {}) |
| builddir_name = generator_flags.get('output_dir', 'out') |
| android_ndk_version = generator_flags.get('android_ndk_version', None) |
| @@ -1973,11 +1976,26 @@ |
| 'extra_commands': '', |
| 'srcdir': srcdir, |
| } |
| - if flavor == 'mac': |
| + if host_flavor == 'mac': |
| flock_command = './gyp-mac-tool flock' |
| header_params.update({ |
| 'flock': flock_command, |
| 'flock_index': 2, |
| + }) |
| + elif host_flavor == 'solaris': |
| + flock_command = './gyp-sun-tool flock', |
| + header_params.update({ |
| + 'flock': flock_command, |
| + 'flock_index': 2, |
| + }) |
| + elif host_flavor == 'freebsd': |
| + flock_command = 'lockf', |
| + header_params.update({ |
| + 'flock': flock_command, |
| + }) |
| + |
| + if flavor == 'mac': |
| + header_params.update({ |
| 'link_commands': LINK_COMMANDS_MAC, |
| 'extra_commands': SHARED_HEADER_MAC_COMMANDS, |
| }) |
| @@ -1987,14 +2005,9 @@ |
| }) |
| elif flavor == 'solaris': |
| header_params.update({ |
| - 'flock': './gyp-sun-tool flock', |
| - 'flock_index': 2, |
| 'extra_commands': SHARED_HEADER_SUN_COMMANDS, |
| }) |
| - elif flavor == 'freebsd': |
| - header_params.update({ |
| - 'flock': 'lockf', |
| - }) |
| + |
| header_params.update(RunSystemTests(flavor)) |
| build_file, _, _ = gyp.common.ParseQualifiedTarget(target_list[0]) |
| @@ -2006,7 +2019,7 @@ |
| if key == 'LINK': |
| make_global_settings += ('%s ?= %s $(builddir)/linker.lock %s\n' % |
| (key, flock_command, value)) |
| - elif key in ['CC', 'CXX']: |
| + elif key in ['CC', 'CXX', 'AR', 'LD', 'RANLIB']: |
|
Torne
2012/08/14 11:04:01
This still doesn't make any sense. AR should proba
|
| make_global_settings += ( |
| 'ifneq (,$(filter $(origin %s), undefined default))\n' % key) |
| # Let gyp-time envvars win over global settings. |
| @@ -2034,7 +2047,7 @@ |
| # Put build-time support tools next to the root Makefile. |
| dest_path = os.path.dirname(makefile_path) |
| - gyp.common.CopyTool(flavor, dest_path) |
| + gyp.common.CopyTool(host_flavor, dest_path) |
| # Find the list of targets that derive from the gyp file(s) being built. |
| needed_targets = set() |