OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 from recipe_engine.config import BadConf | 5 from recipe_engine.config import BadConf |
6 from recipe_engine.config_types import Path | 6 from recipe_engine.config_types import Path |
7 from recipe_engine import config as recipe_config | 7 from recipe_engine import config as recipe_config |
8 | 8 |
9 import DEPS | 9 import DEPS |
10 CONFIG_CTX = DEPS['chromium'].CONFIG_CTX | 10 CONFIG_CTX = DEPS['chromium'].CONFIG_CTX |
(...skipping 14 matching lines...) Expand all Loading... |
25 if c.HOST_PLATFORM == 'mac': | 25 if c.HOST_PLATFORM == 'mac': |
26 c.compile_py.build_tool = 'xcode' | 26 c.compile_py.build_tool = 'xcode' |
27 elif c.HOST_PLATFORM == 'win': | 27 elif c.HOST_PLATFORM == 'win': |
28 c.compile_py.build_tool = 'vs' | 28 c.compile_py.build_tool = 'vs' |
29 c.build_dir = Path('[CHECKOUT]', 'build') | 29 c.build_dir = Path('[CHECKOUT]', 'build') |
30 | 30 |
31 if c.BUILD_CONFIG == 'Debug': | 31 if c.BUILD_CONFIG == 'Debug': |
32 c.gyp_env.GYP_DEFINES['v8_optimized_debug'] = 1 | 32 c.gyp_env.GYP_DEFINES['v8_optimized_debug'] = 1 |
33 c.gyp_env.GYP_DEFINES['v8_enable_slow_dchecks'] = 1 | 33 c.gyp_env.GYP_DEFINES['v8_enable_slow_dchecks'] = 1 |
34 | 34 |
35 # Chromium adds '_x64' to the output folder, which is neither needed nor | 35 # Chromium adds '_x64' to the output folder, which is only understood when |
36 # understood when compiling v8 standalone. | 36 # compiling v8 standalone with ninja. |
37 if c.HOST_PLATFORM == 'win' and c.TARGET_BITS == 64: | 37 if c.HOST_PLATFORM == 'win' and c.TARGET_BITS == 64: |
38 c.build_config_fs = c.BUILD_CONFIG | 38 c.build_config_fs = c.BUILD_CONFIG |
39 c.compile_py.pass_arch_flag = True | 39 c.compile_py.pass_arch_flag = True |
40 | 40 |
41 | 41 |
42 @CONFIG_CTX(includes=['v8']) | 42 @CONFIG_CTX(includes=['v8']) |
43 def arm_hard_float(c): | 43 def arm_hard_float(c): |
44 c.compile_py.pass_arch_flag = True | 44 c.compile_py.pass_arch_flag = True |
45 c.compile_py.cross_tool = '/usr/bin/arm-linux-gnueabihf' | 45 c.compile_py.cross_tool = '/usr/bin/arm-linux-gnueabihf' |
46 c.gyp_env.GYP_DEFINES['arm_float_abi'] = 'hard' | 46 c.gyp_env.GYP_DEFINES['arm_float_abi'] = 'hard' |
(...skipping 28 matching lines...) Expand all Loading... |
75 @CONFIG_CTX(group='builder') | 75 @CONFIG_CTX(group='builder') |
76 def make(c): | 76 def make(c): |
77 c.build_dir = Path('[CHECKOUT]', 'out') | 77 c.build_dir = Path('[CHECKOUT]', 'out') |
78 c.compile_py.build_tool = 'make' | 78 c.compile_py.build_tool = 'make' |
79 | 79 |
80 | 80 |
81 @CONFIG_CTX(includes=['ninja']) | 81 @CONFIG_CTX(includes=['ninja']) |
82 def v8_ninja(c): | 82 def v8_ninja(c): |
83 c.gyp_env.GYP_GENERATORS.add('ninja') | 83 c.gyp_env.GYP_GENERATORS.add('ninja') |
84 | 84 |
| 85 if c.HOST_PLATFORM == 'win' and c.TARGET_BITS == 64: |
| 86 # Windows requires 64-bit builds to be in <dir>_x64 with ninja. See |
| 87 # crbug.com/470681. |
| 88 c.build_config_fs = c.BUILD_CONFIG + '_x64' |
| 89 |
85 | 90 |
86 @CONFIG_CTX(includes=['v8']) | 91 @CONFIG_CTX(includes=['v8']) |
87 def no_clang(c): | 92 def no_clang(c): |
88 c.gyp_env.GYP_DEFINES['clang'] = 0 | 93 c.gyp_env.GYP_DEFINES['clang'] = 0 |
89 | 94 |
90 | 95 |
91 @CONFIG_CTX(includes=['v8']) | 96 @CONFIG_CTX(includes=['v8']) |
92 def no_dcheck(c): | 97 def no_dcheck(c): |
93 c.gyp_env.GYP_DEFINES['dcheck_always_on'] = 0 | 98 c.gyp_env.GYP_DEFINES['dcheck_always_on'] = 0 |
94 | 99 |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 def x32(c): | 175 def x32(c): |
171 c.gyp_env.GYP_DEFINES['v8_target_arch'] = 'x32' | 176 c.gyp_env.GYP_DEFINES['v8_target_arch'] = 'x32' |
172 | 177 |
173 | 178 |
174 @CONFIG_CTX(includes=['v8']) | 179 @CONFIG_CTX(includes=['v8']) |
175 def x87(c): | 180 def x87(c): |
176 # TODO(machenbach): Chromium does not support x87 yet. With the current | 181 # TODO(machenbach): Chromium does not support x87 yet. With the current |
177 # configuration, target_arch can't be set through a parameter as ARCH=intel | 182 # configuration, target_arch can't be set through a parameter as ARCH=intel |
178 # and BITS=32 is ambigue with x87. | 183 # and BITS=32 is ambigue with x87. |
179 c.gyp_env.GYP_DEFINES['v8_target_arch'] = 'x87' | 184 c.gyp_env.GYP_DEFINES['v8_target_arch'] = 'x87' |
OLD | NEW |