OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 | 2 |
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 # This script is wrapper for Chromium that adds some support for how GYP | 7 # This script is wrapper for Chromium that adds some support for how GYP |
8 # is invoked by Chromium beyond what can be done in the gclient hooks. | 8 # is invoked by Chromium beyond what can be done in the gclient hooks. |
9 | 9 |
10 import argparse | 10 import argparse |
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
254 # currently exist. The check for circular dependencies is currently | 254 # currently exist. The check for circular dependencies is currently |
255 # bypassed on other platforms, but is left enabled on iOS, where a violation | 255 # bypassed on other platforms, but is left enabled on iOS, where a violation |
256 # of the rule causes Xcode to misbehave badly. | 256 # of the rule causes Xcode to misbehave badly. |
257 # TODO(mark): Find and kill remaining circular dependencies, and remove this | 257 # TODO(mark): Find and kill remaining circular dependencies, and remove this |
258 # option. http://crbug.com/35878. | 258 # option. http://crbug.com/35878. |
259 # TODO(tc): Fix circular dependencies in ChromiumOS then add linux2 to the | 259 # TODO(tc): Fix circular dependencies in ChromiumOS then add linux2 to the |
260 # list. | 260 # list. |
261 if gyp_vars_dict.get('OS') != 'ios': | 261 if gyp_vars_dict.get('OS') != 'ios': |
262 args.append('--no-circular-check') | 262 args.append('--no-circular-check') |
263 | 263 |
| 264 # libtool on Mac warns about duplicate basenames in static libraries, so |
| 265 # they're disallowed in general by gyp. We are lax on this point, so disable |
| 266 # this check other than on Mac. GN does not use static libraries as heavily, |
| 267 # so over time this restriction will mostly go away anyway, even on Mac. |
| 268 # https://code.google.com/p/gyp/issues/detail?id=384 |
| 269 if sys.platform != 'darwin': |
| 270 args.append('--no-duplicate-basename-check') |
| 271 |
264 # We explicitly don't support the make gyp generator (crbug.com/348686). Be | 272 # We explicitly don't support the make gyp generator (crbug.com/348686). Be |
265 # nice and fail here, rather than choking in gyp. | 273 # nice and fail here, rather than choking in gyp. |
266 if re.search(r'(^|,|\s)make($|,|\s)', os.environ.get('GYP_GENERATORS', '')): | 274 if re.search(r'(^|,|\s)make($|,|\s)', os.environ.get('GYP_GENERATORS', '')): |
267 print 'Error: make gyp generator not supported (check GYP_GENERATORS).' | 275 print 'Error: make gyp generator not supported (check GYP_GENERATORS).' |
268 sys.exit(1) | 276 sys.exit(1) |
269 | 277 |
270 # We explicitly don't support the native msvs gyp generator. Be nice and | 278 # We explicitly don't support the native msvs gyp generator. Be nice and |
271 # fail here, rather than generating broken projects. | 279 # fail here, rather than generating broken projects. |
272 if re.search(r'(^|,|\s)msvs($|,|\s)', os.environ.get('GYP_GENERATORS', '')): | 280 if re.search(r'(^|,|\s)msvs($|,|\s)', os.environ.get('GYP_GENERATORS', '')): |
273 print 'Error: msvs gyp generator not supported (check GYP_GENERATORS).' | 281 print 'Error: msvs gyp generator not supported (check GYP_GENERATORS).' |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
315 | 323 |
316 if not use_analyzer: | 324 if not use_analyzer: |
317 vs2013_runtime_dll_dirs = vs_toolchain.SetEnvironmentAndGetRuntimeDllDirs() | 325 vs2013_runtime_dll_dirs = vs_toolchain.SetEnvironmentAndGetRuntimeDllDirs() |
318 if vs2013_runtime_dll_dirs: | 326 if vs2013_runtime_dll_dirs: |
319 x64_runtime, x86_runtime = vs2013_runtime_dll_dirs | 327 x64_runtime, x86_runtime = vs2013_runtime_dll_dirs |
320 vs_toolchain.CopyVsRuntimeDlls( | 328 vs_toolchain.CopyVsRuntimeDlls( |
321 os.path.join(chrome_src, GetOutputDirectory()), | 329 os.path.join(chrome_src, GetOutputDirectory()), |
322 (x86_runtime, x64_runtime)) | 330 (x86_runtime, x64_runtime)) |
323 | 331 |
324 sys.exit(gyp_rc) | 332 sys.exit(gyp_rc) |
OLD | NEW |