[email protected] | 9372bec | 2014-08-14 14:03:30 | [diff] [blame] | 1 | # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | """ |
| 6 | Sets up various automatic gyp environment variables. These are used by |
| 7 | gyp_chromium and landmines.py which run at different stages of runhooks. To |
| 8 | make sure settings are consistent between them, all setup should happen here. |
| 9 | """ |
| 10 | |
| 11 | import gyp_helper |
| 12 | import os |
| 13 | import sys |
| 14 | import vs_toolchain |
| 15 | |
| 16 | def SetEnvironment(): |
| 17 | """Sets defaults for GYP_* variables.""" |
| 18 | gyp_helper.apply_chromium_gyp_env() |
| 19 | |
| 20 | # Default to ninja on linux and windows, but only if no generator has |
| 21 | # explicitly been set. |
| 22 | # Also default to ninja on mac, but only when not building chrome/ios. |
| 23 | # . -f / --format has precedence over the env var, no need to check for it |
| 24 | # . set the env var only if it hasn't been set yet |
| 25 | # . chromium.gyp_env has been applied to os.environ at this point already |
thakis | f588eed | 2016-06-08 19:46:38 | [diff] [blame] | 26 | if sys.platform.startswith(('linux', 'win', 'freebsd', 'darwin')) and \ |
[email protected] | 9372bec | 2014-08-14 14:03:30 | [diff] [blame] | 27 | not os.environ.get('GYP_GENERATORS'): |
| 28 | os.environ['GYP_GENERATORS'] = 'ninja' |
[email protected] | 9372bec | 2014-08-14 14:03:30 | [diff] [blame] | 29 | |
| 30 | vs_toolchain.SetEnvironmentAndGetRuntimeDllDirs() |