Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: build/common.gypi

Issue 9368015: Revert 121068 - linux: add a use_gold flag that defaults to on (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 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 # IMPORTANT: 5 # IMPORTANT:
6 # Please don't directly include this file if you are building via gyp_chromium, 6 # Please don't directly include this file if you are building via gyp_chromium,
7 # since gyp_chromium is automatically forcing its inclusion. 7 # since gyp_chromium is automatically forcing its inclusion.
8 { 8 {
9 # Variables expected to be overriden on the GYP command line (-D) or by 9 # Variables expected to be overriden on the GYP command line (-D) or by
10 # ~/.gyp/include.gypi. 10 # ~/.gyp/include.gypi.
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 ['OS=="win" and MSVS_VERSION=="2010"', { 380 ['OS=="win" and MSVS_VERSION=="2010"', {
381 'chromium_win_pch%': 1 381 'chromium_win_pch%': 1
382 }], 382 }],
383 383
384 ['use_aura==1 or chromeos==1', { 384 ['use_aura==1 or chromeos==1', {
385 'enable_plugin_installation%': 0, 385 'enable_plugin_installation%': 0,
386 }, { 386 }, {
387 'enable_plugin_installation%': 1, 387 'enable_plugin_installation%': 1,
388 }], 388 }],
389 389
390 # linux_use_gold_binary: whether to use the binary checked into 390 # Set to 0 to not use third_party/gold as the linker.
391 # third_party/gold.
392 # linux_use_gold_flags: whether to use build flags that rely on gold.
393 # On by default for x64 Linux. 391 # On by default for x64 Linux.
394 ['host_arch=="x64"', { 392 ['host_arch=="x64"', {
395 'linux_use_gold_binary%': 1, 393 'linux_use_gold_binary%': 1,
396 'linux_use_gold_flags%': 1,
397 }, { 394 }, {
398 'linux_use_gold_binary%': 0, 395 'linux_use_gold_binary%': 0,
399 'linux_use_gold_flags%': 0,
400 }], 396 }],
401 397
402 # Enable canvas_skia_skia.cc incrementally on different platforms. 398 # Enable canvas_skia_skia.cc incrementally on different platforms.
403 # http://crbug.com/105550 399 # http://crbug.com/105550
404 ['OS=="win"', { 400 ['OS=="win"', {
405 'use_canvas_skia_skia%': 1, 401 'use_canvas_skia_skia%': 1,
406 }], 402 }],
407 ], 403 ],
408 }, 404 },
409 405
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
457 'input_speech%': '<(input_speech)', 453 'input_speech%': '<(input_speech)',
458 'notifications%': '<(notifications)', 454 'notifications%': '<(notifications)',
459 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', 455 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)',
460 'asan%': '<(asan)', 456 'asan%': '<(asan)',
461 'order_text_section%': '<(order_text_section)', 457 'order_text_section%': '<(order_text_section)',
462 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)', 458 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)',
463 'enable_web_intents%': '<(enable_web_intents)', 459 'enable_web_intents%': '<(enable_web_intents)',
464 'enable_web_intents_tag%': '<(enable_web_intents_tag)', 460 'enable_web_intents_tag%': '<(enable_web_intents_tag)',
465 'enable_plugin_installation%': '<(enable_plugin_installation)', 461 'enable_plugin_installation%': '<(enable_plugin_installation)',
466 'linux_use_gold_binary%': '<(linux_use_gold_binary)', 462 'linux_use_gold_binary%': '<(linux_use_gold_binary)',
467 'linux_use_gold_flags%': '<(linux_use_gold_flags)',
468 'use_canvas_skia_skia%': '<(use_canvas_skia_skia)', 463 'use_canvas_skia_skia%': '<(use_canvas_skia_skia)',
469 # Whether to build for Wayland display server 464 # Whether to build for Wayland display server
470 'use_wayland%': 0, 465 'use_wayland%': 0,
471 466
472 # Use system yasm instead of bundled one. 467 # Use system yasm instead of bundled one.
473 'use_system_yasm%': 0, 468 'use_system_yasm%': 0,
474 469
475 # Default to enabled PIE; this is important for ASLR but we need to be 470 # Default to enabled PIE; this is important for ASLR but we need to be
476 # able to turn it off for remote debugging on Chromium OS 471 # able to turn it off for remote debugging on Chromium OS
477 'linux_disable_pie%': 0, 472 'linux_disable_pie%': 0,
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
629 # Enable a variable used elsewhere throughout the GYP files to determine 624 # Enable a variable used elsewhere throughout the GYP files to determine
630 # whether to compile in the sources for the GPU plugin / process. 625 # whether to compile in the sources for the GPU plugin / process.
631 'enable_gpu%': 1, 626 'enable_gpu%': 1,
632 627
633 # .gyp files or targets should set chromium_code to 1 if they build 628 # .gyp files or targets should set chromium_code to 1 if they build
634 # Chromium-specific code, as opposed to external code. This variable is 629 # Chromium-specific code, as opposed to external code. This variable is
635 # used to control such things as the set of warnings to enable, and 630 # used to control such things as the set of warnings to enable, and
636 # whether warnings are treated as errors. 631 # whether warnings are treated as errors.
637 'chromium_code%': 0, 632 'chromium_code%': 0,
638 633
639 'release_valgrind_build%': 0,
640
641 # TODO(thakis): Make this a blacklist instead, http://crbug.com/101600 634 # TODO(thakis): Make this a blacklist instead, http://crbug.com/101600
642 'enable_wexit_time_destructors%': 0, 635 'enable_wexit_time_destructors%': 0,
643 636
644 # Set to 1 to compile with the built in pdf viewer. 637 # Set to 1 to compile with the built in pdf viewer.
645 'internal_pdf%': 0, 638 'internal_pdf%': 0,
646 639
647 # This allows to use libcros from the current system, ie. /usr/lib/ 640 # This allows to use libcros from the current system, ie. /usr/lib/
648 # The cros_api will be pulled in as a static library, and all headers 641 # The cros_api will be pulled in as a static library, and all headers
649 # from the system include dirs. 642 # from the system include dirs.
650 'system_libcros%': 0, 643 'system_libcros%': 0,
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after
1002 995
1003 # VS inserts quite a lot of extra checks to algorithms like 996 # VS inserts quite a lot of extra checks to algorithms like
1004 # std::partial_sort in Debug build which make them O(N^2) 997 # std::partial_sort in Debug build which make them O(N^2)
1005 # instead of O(N*logN). This is particularly slow under memory 998 # instead of O(N*logN). This is particularly slow under memory
1006 # tools like ThreadSanitizer so we want it to be disablable. 999 # tools like ThreadSanitizer so we want it to be disablable.
1007 # See http://msdn.microsoft.com/en-us/library/aa985982(v=VS.80).aspx 1000 # See http://msdn.microsoft.com/en-us/library/aa985982(v=VS.80).aspx
1008 'win_debug_disable_iterator_debugging%': '0', 1001 'win_debug_disable_iterator_debugging%': '0',
1009 1002
1010 'release_extra_cflags%': '', 1003 'release_extra_cflags%': '',
1011 'debug_extra_cflags%': '', 1004 'debug_extra_cflags%': '',
1012 1005 'release_valgrind_build%': 0,
1013 'release_valgrind_build%': '<(release_valgrind_build)',
1014 1006
1015 # the non-qualified versions are widely assumed to be *nix-only 1007 # the non-qualified versions are widely assumed to be *nix-only
1016 'win_release_extra_cflags%': '', 1008 'win_release_extra_cflags%': '',
1017 'win_debug_extra_cflags%': '', 1009 'win_debug_extra_cflags%': '',
1018 1010
1019 # TODO(thakis): Make this a blacklist instead, http://crbug.com/101600 1011 # TODO(thakis): Make this a blacklist instead, http://crbug.com/101600
1020 'enable_wexit_time_destructors%': '<(enable_wexit_time_destructors)', 1012 'enable_wexit_time_destructors%': '<(enable_wexit_time_destructors)',
1021 1013
1022 # Only used by Windows build for now. Can be used to build into a 1014 # Only used by Windows build for now. Can be used to build into a
1023 # differet output directory, e.g., a build_dir_prefix of VS2010_ would 1015 # differet output directory, e.g., a build_dir_prefix of VS2010_ would
(...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after
1726 'cflags!': [ 1718 'cflags!': [
1727 '-fno-ident', 1719 '-fno-ident',
1728 ], 1720 ],
1729 }], 1721 }],
1730 ['profiling==1', { 1722 ['profiling==1', {
1731 'cflags': [ 1723 'cflags': [
1732 '-fno-omit-frame-pointer', 1724 '-fno-omit-frame-pointer',
1733 '-g', 1725 '-g',
1734 ], 1726 ],
1735 }], 1727 }],
1736 ], 1728 # At gyp time, we test the linker for ICF support; this flag
1729 # is then provided to us by gyp. (Currently only gold supports
1730 # an --icf flag.)
1731 # There seems to be a conflict of --icf and -pie in gold which
1732 # can generate crashy binaries. As a security measure, -pie
1733 # takes precendence for now.
1734 ['LINKER_SUPPORTS_ICF==1 and release_valgrind_build==0', {
1735 'target_conditions': [
1736 ['_toolset=="target"', {
1737 'ldflags': [
1738 #'-Wl,--icf=safe',
1739 '-Wl,--icf=none',
1740 ]
1741 }]
1742 ]
1743 }],
1744 ]
1737 }, 1745 },
1738 }, 1746 },
1739 'variants': { 1747 'variants': {
1740 'coverage': { 1748 'coverage': {
1741 'cflags': ['-fprofile-arcs', '-ftest-coverage'], 1749 'cflags': ['-fprofile-arcs', '-ftest-coverage'],
1742 'ldflags': ['-fprofile-arcs'], 1750 'ldflags': ['-fprofile-arcs'],
1743 }, 1751 },
1744 'profile': { 1752 'profile': {
1745 'cflags': ['-pg', '-g'], 1753 'cflags': ['-pg', '-g'],
1746 'ldflags': ['-pg'], 1754 'ldflags': ['-pg'],
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
1992 'variables': {'linux_use_tcmalloc%': 1}, 2000 'variables': {'linux_use_tcmalloc%': 1},
1993 'defines': ['USE_HEAPCHECKER'], 2001 'defines': ['USE_HEAPCHECKER'],
1994 }], 2002 }],
1995 ['linux_use_tcmalloc==0', { 2003 ['linux_use_tcmalloc==0', {
1996 'defines': ['NO_TCMALLOC'], 2004 'defines': ['NO_TCMALLOC'],
1997 }], 2005 }],
1998 ['linux_keep_shadow_stacks==1', { 2006 ['linux_keep_shadow_stacks==1', {
1999 'defines': ['KEEP_SHADOW_STACKS'], 2007 'defines': ['KEEP_SHADOW_STACKS'],
2000 'cflags': ['-finstrument-functions'], 2008 'cflags': ['-finstrument-functions'],
2001 }], 2009 }],
2002 ['linux_use_gold_flags==1', {
2003 'conditions': [
2004 ['release_valgrind_build==0', {
2005 'target_conditions': [
2006 ['_toolset=="target"', {
2007 'ldflags': [
2008 # There seems to be a conflict of --icf and -pie
2009 # in gold which can generate crashy binaries. As
2010 # a security measure, -pie takes precendence for
2011 # now.
2012 #'-Wl,--icf=safe',
2013 '-Wl,--icf=none',
2014 ],
2015 }],
2016 ],
2017 }],
2018 ],
2019 }],
2020 ['linux_use_gold_binary==1', { 2010 ['linux_use_gold_binary==1', {
2021 'variables': { 2011 'variables': {
2022 # We pass the path to gold to the compiler. gyp leaves 2012 # We pass the path to gold to the compiler. gyp leaves
2023 # unspecified what the cwd is when running the compiler, 2013 # unspecified what the cwd is when running the compiler,
2024 # so the normal gyp path-munging fails us. This hack 2014 # so the normal gyp path-munging fails us. This hack
2025 # gets the right path. 2015 # gets the right path.
2026 'gold_path': '<(PRODUCT_DIR)/../../third_party/gold', 2016 'gold_path': '<(PRODUCT_DIR)/../../third_party/gold',
2027 }, 2017 },
2028 'ldflags': [ 2018 'ldflags': [
2029 # Put our gold binary in the search path for the linker. 2019 # Put our gold binary in the search path for the linker.
(...skipping 757 matching lines...) Expand 10 before | Expand all | Expand 10 after
2787 # settings in target dicts. SYMROOT is a special case, because many other 2777 # settings in target dicts. SYMROOT is a special case, because many other
2788 # Xcode variables depend on it, including variables such as 2778 # Xcode variables depend on it, including variables such as
2789 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 2779 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
2790 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 2780 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
2791 # files to appear (when present) in the UI as actual files and not red 2781 # files to appear (when present) in the UI as actual files and not red
2792 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 2782 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
2793 # and therefore SYMROOT, needs to be set at the project level. 2783 # and therefore SYMROOT, needs to be set at the project level.
2794 'SYMROOT': '<(DEPTH)/xcodebuild', 2784 'SYMROOT': '<(DEPTH)/xcodebuild',
2795 }, 2785 },
2796 } 2786 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698