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 import pipes | 5 import pipes |
6 | 6 |
7 from recipe_engine.config import config_item_context, ConfigGroup | 7 from recipe_engine.config import config_item_context, ConfigGroup |
8 from recipe_engine.config import Dict, List, Single, Static, Set, BadConf | 8 from recipe_engine.config import Dict, List, Single, Static, Set, BadConf |
9 from recipe_engine.config_types import Path | 9 from recipe_engine.config_types import Path |
10 | 10 |
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
386 @config_ctx(deps=['compiler']) | 386 @config_ctx(deps=['compiler']) |
387 def asan(c): | 387 def asan(c): |
388 if 'clang' not in c.compile_py.compiler: # pragma: no cover | 388 if 'clang' not in c.compile_py.compiler: # pragma: no cover |
389 raise BadConf('asan requires clang') | 389 raise BadConf('asan requires clang') |
390 c.runtests.swarming_tags |= {'asan:1'} | 390 c.runtests.swarming_tags |= {'asan:1'} |
391 if c.TARGET_PLATFORM in ['mac', 'win']: | 391 if c.TARGET_PLATFORM in ['mac', 'win']: |
392 # Set fastbuild=0 and prevent other configs from changing it. | 392 # Set fastbuild=0 and prevent other configs from changing it. |
393 fastbuild(c, invert=True, optional=False) | 393 fastbuild(c, invert=True, optional=False) |
394 | 394 |
395 c.gyp_env.GYP_DEFINES['asan'] = 1 | 395 c.gyp_env.GYP_DEFINES['asan'] = 1 |
396 if c.TARGET_PLATFORM != 'android': | 396 if c.TARGET_PLATFORM != 'android' and c.TARGET_BITS == 64: |
397 # LSAN isn't supported on Android. | 397 # LSAN isn't supported on Android or 32 bits platforms. |
398 c.gyp_env.GYP_DEFINES['lsan'] = 1 | 398 c.gyp_env.GYP_DEFINES['lsan'] = 1 |
399 | 399 |
400 @config_ctx(deps=['compiler']) | 400 @config_ctx(deps=['compiler']) |
401 def lsan(c): | 401 def lsan(c): |
402 c.runtests.enable_lsan = True | 402 c.runtests.enable_lsan = True |
403 c.runtests.swarming_extra_args += ['--lsan=1'] | 403 c.runtests.swarming_extra_args += ['--lsan=1'] |
404 c.runtests.swarming_tags |= {'lsan:1'} | 404 c.runtests.swarming_tags |= {'lsan:1'} |
405 | 405 |
406 # TODO(infra,earthdok,glider): Make this a gyp variable. This is also not a | 406 # TODO(infra,earthdok,glider): Make this a gyp variable. This is also not a |
407 # good name as only v8 builds release symbolized with -O2 while | 407 # good name as only v8 builds release symbolized with -O2 while |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
509 | 509 |
510 @config_ctx(includes=['chromium_win_clang']) | 510 @config_ctx(includes=['chromium_win_clang']) |
511 def chromium_win_clang_tot(c): | 511 def chromium_win_clang_tot(c): |
512 c.env.LLVM_FORCE_HEAD_REVISION = 'YES' | 512 c.env.LLVM_FORCE_HEAD_REVISION = 'YES' |
513 | 513 |
514 @config_ctx(includes=['chromium_win_clang', 'official']) | 514 @config_ctx(includes=['chromium_win_clang', 'official']) |
515 def chromium_win_clang_official(c): | 515 def chromium_win_clang_official(c): |
516 pass | 516 pass |
517 | 517 |
518 @config_ctx(includes=['chromium_win_clang', 'asan', 'static_library']) | 518 @config_ctx(includes=['chromium_win_clang', 'asan', 'static_library']) |
519 def chromium_win_clang_asan(c): | 519 def chromium_win_clang_asan(c): |
Michael Achenbach
2015/07/15 07:16:37
This is now covered by excluding 32 bits above.
| |
520 # Clear lsan configuration for win. | |
521 del c.gyp_env.GYP_DEFINES['lsan'] | |
522 # These are set on the lkgr bot, and the fyi bots should match the lkgr bot. | 520 # These are set on the lkgr bot, and the fyi bots should match the lkgr bot. |
523 # TODO(thakis): Once the lkgr bot uses recipes, the lkgr and the fyi bots | 521 # TODO(thakis): Once the lkgr bot uses recipes, the lkgr and the fyi bots |
524 # should use the same context to ensure they use the same gyp defines. | 522 # should use the same context to ensure they use the same gyp defines. |
525 c.gyp_env.GYP_DEFINES['enable_ipc_fuzzer'] = 1 | 523 c.gyp_env.GYP_DEFINES['enable_ipc_fuzzer'] = 1 |
526 c.gyp_env.GYP_DEFINES['v8_enable_verify_heap'] = 1 | 524 c.gyp_env.GYP_DEFINES['v8_enable_verify_heap'] = 1 |
527 | 525 |
528 @config_ctx(includes=['chromium_win_clang_asan']) | 526 @config_ctx(includes=['chromium_win_clang_asan']) |
529 def chromium_win_clang_asan_tot(c): | 527 def chromium_win_clang_asan_tot(c): |
530 c.env.LLVM_FORCE_HEAD_REVISION = 'YES' | 528 c.env.LLVM_FORCE_HEAD_REVISION = 'YES' |
531 | 529 |
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
785 def chromium_deterministic_build(c): | 783 def chromium_deterministic_build(c): |
786 c.gyp_env.GYP_DEFINES['dont_embed_build_metadata'] = 1 | 784 c.gyp_env.GYP_DEFINES['dont_embed_build_metadata'] = 1 |
787 | 785 |
788 @config_ctx() | 786 @config_ctx() |
789 def chromium_mac_sdk_10_10(c): | 787 def chromium_mac_sdk_10_10(c): |
790 c.gyp_env.GYP_DEFINES['mac_sdk_min='] = '10.10' | 788 c.gyp_env.GYP_DEFINES['mac_sdk_min='] = '10.10' |
791 | 789 |
792 @config_ctx(includes=['chromium_clang']) | 790 @config_ctx(includes=['chromium_clang']) |
793 def cast_linux(c): | 791 def cast_linux(c): |
794 c.gyp_env.GYP_DEFINES['chromecast'] = 1 | 792 c.gyp_env.GYP_DEFINES['chromecast'] = 1 |
OLD | NEW |