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

Side by Side Diff: build/common.gypi

Issue 239163003: Split linux_use_gold_binary into linux_use_bundled_gold and linux_use_bundled_binutils. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 714 matching lines...) Expand 10 before | Expand all | Expand 10 after
725 }, { 725 }, {
726 'enable_plugin_installation%': 1, 726 'enable_plugin_installation%': 1,
727 }], 727 }],
728 728
729 ['OS=="android" or OS=="ios" or embedded==1', { 729 ['OS=="android" or OS=="ios" or embedded==1', {
730 'enable_plugins%': 0, 730 'enable_plugins%': 0,
731 }, { 731 }, {
732 'enable_plugins%': 1, 732 'enable_plugins%': 1,
733 }], 733 }],
734 734
735 # linux_use_gold_binary: whether to use the binary checked into 735 # linux_use_bundled_gold: whether to use the binary checked into
Lei Zhang 2014/04/15 21:40:31 Since we are here, let's make this a bit clearer.
Sam Clegg 2014/04/15 21:54:55 Done.
736 # third_party/binutils. Gold is not used for 32-bit linux builds 736 # third_party/binutils. Gold is not used for 32-bit linux builds
737 # as it runs out of address space. 737 # as it runs out of address space.
738 ['OS=="linux" and (target_arch=="x64" or target_arch=="arm")', { 738 ['OS=="linux" and (target_arch=="x64" or target_arch=="arm")', {
739 'linux_use_gold_binary%': 1, 739 'linux_use_bundled_gold%': 1,
740 }, { 740 }, {
741 'linux_use_gold_binary%': 0, 741 'linux_use_bundled_gold%': 0,
742 }],
743
744 # linux_use_bundled_binutils: whether to use the binary binutils
Lei Zhang 2014/04/15 21:40:31 Similar to above, mention one can force this off f
Sam Clegg 2014/04/15 21:54:55 Done.
745 # from third_party/binutils. These are not multi-arch so cannot
746 # be used except on x86 and x86-64 (the only two achitectures
Lei Zhang 2014/04/15 21:40:31 achitectures -> architectures
Sam Clegg 2014/04/15 21:54:55 Done.
747 # which are currently supplied)
748 ['OS=="linux" and (target_arch=="x64")', {
749 'linux_use_bundled_binutils%': 1,
750 }, {
751 'linux_use_bundled_binutils%': 0,
742 }], 752 }],
743 753
744 # linux_use_gold_flags: whether to use build flags that rely on gold. 754 # linux_use_gold_flags: whether to use build flags that rely on gold.
745 # On by default for x64 Linux. Temporarily off for ChromeOS as 755 # On by default for x64 Linux. Temporarily off for ChromeOS as
746 # it failed on a buildbot. 756 # it failed on a buildbot.
747 ['OS=="linux" and target_arch=="x64" and chromeos==0', { 757 ['OS=="linux" and target_arch=="x64" and chromeos==0', {
748 'linux_use_gold_flags%': 1, 758 'linux_use_gold_flags%': 1,
749 }, { 759 }, {
750 'linux_use_gold_flags%': 0, 760 'linux_use_gold_flags%': 0,
751 }], 761 }],
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
989 'clang_type_profiler%': '<(clang_type_profiler)', 999 'clang_type_profiler%': '<(clang_type_profiler)',
990 'order_profiling%': '<(order_profiling)', 1000 'order_profiling%': '<(order_profiling)',
991 'order_text_section%': '<(order_text_section)', 1001 'order_text_section%': '<(order_text_section)',
992 'enable_extensions%': '<(enable_extensions)', 1002 'enable_extensions%': '<(enable_extensions)',
993 'enable_plugin_installation%': '<(enable_plugin_installation)', 1003 'enable_plugin_installation%': '<(enable_plugin_installation)',
994 'enable_plugins%': '<(enable_plugins)', 1004 'enable_plugins%': '<(enable_plugins)',
995 'enable_session_service%': '<(enable_session_service)', 1005 'enable_session_service%': '<(enable_session_service)',
996 'enable_themes%': '<(enable_themes)', 1006 'enable_themes%': '<(enable_themes)',
997 'enable_autofill_dialog%': '<(enable_autofill_dialog)', 1007 'enable_autofill_dialog%': '<(enable_autofill_dialog)',
998 'enable_background%': '<(enable_background)', 1008 'enable_background%': '<(enable_background)',
999 'linux_use_gold_binary%': '<(linux_use_gold_binary)', 1009 'linux_use_bundled_gold%': '<(linux_use_bundled_gold)',
1010 'linux_use_bundled_binutils%': '<(linux_use_bundled_binutils)',
1000 'linux_use_gold_flags%': '<(linux_use_gold_flags)', 1011 'linux_use_gold_flags%': '<(linux_use_gold_flags)',
1001 'use_canvas_skia%': '<(use_canvas_skia)', 1012 'use_canvas_skia%': '<(use_canvas_skia)',
1002 'test_isolation_mode%': '<(test_isolation_mode)', 1013 'test_isolation_mode%': '<(test_isolation_mode)',
1003 'test_isolation_outdir%': '<(test_isolation_outdir)', 1014 'test_isolation_outdir%': '<(test_isolation_outdir)',
1004 'test_isolation_fail_on_missing': '<(test_isolation_fail_on_missing)', 1015 'test_isolation_fail_on_missing': '<(test_isolation_fail_on_missing)',
1005 'enable_printing%': '<(enable_printing)', 1016 'enable_printing%': '<(enable_printing)',
1006 'enable_spellcheck%': '<(enable_spellcheck)', 1017 'enable_spellcheck%': '<(enable_spellcheck)',
1007 'enable_google_now%': '<(enable_google_now)', 1018 'enable_google_now%': '<(enable_google_now)',
1008 'cld_version%': '<(cld_version)', 1019 'cld_version%': '<(cld_version)',
1009 'cld2_table_size%': '<(cld2_table_size)', 1020 'cld2_table_size%': '<(cld2_table_size)',
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
1357 # compiler_version works with clang. 1368 # compiler_version works with clang.
1358 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so 1369 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so
1359 # that it takes effect here. 1370 # that it takes effect here.
1360 ['clang==0 and asan==0 and lsan==0 and tsan==0 and msan==0', { 1371 ['clang==0 and asan==0 and lsan==0 and tsan==0 and msan==0', {
1361 'binutils_version%': '<!(python <(DEPTH)/build/compiler_version.py a ssembler)', 1372 'binutils_version%': '<!(python <(DEPTH)/build/compiler_version.py a ssembler)',
1362 }], 1373 }],
1363 # On Android we know the binutils version in the toolchain. 1374 # On Android we know the binutils version in the toolchain.
1364 ['OS=="android"', { 1375 ['OS=="android"', {
1365 'binutils_version%': 222, 1376 'binutils_version%': 222,
1366 }], 1377 }],
1378 ['host_arch=="x64"', {
Lei Zhang 2014/04/15 21:40:31 Why set this when linux_use_bundled_binutils=0?
Sam Clegg 2014/04/15 21:54:55 Its needed when linux_use_bundled_binutils=1 or li
1379 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin',
1380 }],
1381 ['host_arch=="ia32"', {
1382 'binutils_dir%': 'third_party/binutils/Linux_ia32/Release/bin',
1383 }],
1367 # Our version of binutils in third_party/binutils 1384 # Our version of binutils in third_party/binutils
1368 ['linux_use_gold_binary==1', { 1385 ['linux_use_bundled_binutils==1', {
1369 'binutils_version%': 224, 1386 'binutils_version%': 224,
1370 'conditions': [
1371 ['host_arch=="x64"', {
1372 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin',
1373 }],
1374 ['host_arch=="ia32"', {
1375 'binutils_dir%': 'third_party/binutils/Linux_ia32/Release/bin',
1376 }],
1377 ],
1378 }], 1387 }],
1379 ], 1388 ],
1380 }, { 1389 }, {
1381 'binutils_version%': 0, 1390 'binutils_version%': 0,
1382 }], 1391 }],
1383 # The version of GCC in use, set later in platforms that use GCC and have 1392 # The version of GCC in use, set later in platforms that use GCC and have
1384 # not explicitly chosen to build with clang. Currently, this means all 1393 # not explicitly chosen to build with clang. Currently, this means all
1385 # platforms except Windows, Mac and iOS. 1394 # platforms except Windows, Mac and iOS.
1386 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that 1395 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that
1387 # it takes effect here. 1396 # it takes effect here.
(...skipping 2430 matching lines...) Expand 10 before | Expand all | Expand 10 after
3818 # "third_party/android_tools/ndk/toolchains/arm-linux-androide abi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/include/a rm_neon.h:3426:3: error: argument must be a constant" 3827 # "third_party/android_tools/ndk/toolchains/arm-linux-androide abi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/include/a rm_neon.h:3426:3: error: argument must be a constant"
3819 '-finstrument-functions-exclude-file-list=arm_neon.h', 3828 '-finstrument-functions-exclude-file-list=arm_neon.h',
3820 ], 3829 ],
3821 }], 3830 }],
3822 ], 3831 ],
3823 }], 3832 }],
3824 ['linux_dump_symbols==1', { 3833 ['linux_dump_symbols==1', {
3825 'cflags': [ '-g' ], 3834 'cflags': [ '-g' ],
3826 'conditions': [ 3835 'conditions': [
3827 # TODO(thestig) We should not need to specify chromeos==0 here, 3836 # TODO(thestig) We should not need to specify chromeos==0 here,
3828 # but somehow ChromeOS uses gold despite linux_use_gold_binary==0. 3837 # but somehow ChromeOS uses gold despite linux_use_bundled_gold==0 .
3829 # http://crbug.com./360082 3838 # http://crbug.com./360082
3830 ['linux_use_gold_binary==0 and chromeos==0 and OS!="android"', { 3839 ['linux_use_bundled_gold==0 and chromeos==0 and OS!="android"', {
3831 'target_conditions': [ 3840 'target_conditions': [
3832 ['_toolset=="target"', { 3841 ['_toolset=="target"', {
3833 'ldflags': [ 3842 'ldflags': [
3834 # Workarounds for linker OOM. 3843 # Workarounds for linker OOM.
3835 '-Wl,--no-keep-memory', 3844 '-Wl,--no-keep-memory',
3836 '-Wl,--reduce-memory-overheads', 3845 '-Wl,--reduce-memory-overheads',
3837 ], 3846 ],
3838 }], 3847 }],
3839 ], 3848 ],
3840 }], 3849 }],
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
3883 ['gcc_version>=48', { 3892 ['gcc_version>=48', {
3884 'cflags': [ 3893 'cflags': [
3885 '-fuse-ld=gold', 3894 '-fuse-ld=gold',
3886 ], 3895 ],
3887 'ldflags': [ 3896 'ldflags': [
3888 '-fuse-ld=gold', 3897 '-fuse-ld=gold',
3889 ], 3898 ],
3890 }] 3899 }]
3891 ], 3900 ],
3892 }], 3901 }],
3893 ['linux_use_gold_binary==1', { 3902 ['linux_use_bundled_binutils==1', {
3903 'cflags': [
3904 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
3905 ],
3906 }],
3907 ['linux_use_bundled_gold==1', {
3894 # Put our binutils, which contains gold in the search path. We pass 3908 # Put our binutils, which contains gold in the search path. We pass
3895 # the path to gold to the compiler. gyp leaves unspecified what the 3909 # the path to gold to the compiler. gyp leaves unspecified what the
3896 # cwd is when running the compiler, so the normal gyp path-munging 3910 # cwd is when running the compiler, so the normal gyp path-munging
3897 # fails us. This hack gets the right path. 3911 # fails us. This hack gets the right path.
3898 'cflags': [
3899 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
3900 ],
3901 'ldflags': [ 3912 'ldflags': [
3902 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)', 3913 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
3903 ], 3914 ],
3904 }], 3915 }],
3905 ['binutils_version>=224', { 3916 ['binutils_version>=224', {
3906 # Newer binutils don't set DT_RPATH unless you disable "new" dtags 3917 # Newer binutils don't set DT_RPATH unless you disable "new" dtags
3907 # and the new DT_RUNPATH doesn't work without --no-as-needed flag. 3918 # and the new DT_RUNPATH doesn't work without --no-as-needed flag.
3908 # FIXME(mithro): Figure out the --as-needed/--no-as-needed flags 3919 # FIXME(mithro): Figure out the --as-needed/--no-as-needed flags
3909 # inside this file to allow usage of --no-as-needed and removal of 3920 # inside this file to allow usage of --no-as-needed and removal of
3910 # this flag. 3921 # this flag.
(...skipping 1318 matching lines...) Expand 10 before | Expand all | Expand 10 after
5229 # settings in target dicts. SYMROOT is a special case, because many other 5240 # settings in target dicts. SYMROOT is a special case, because many other
5230 # Xcode variables depend on it, including variables such as 5241 # Xcode variables depend on it, including variables such as
5231 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 5242 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
5232 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 5243 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
5233 # files to appear (when present) in the UI as actual files and not red 5244 # files to appear (when present) in the UI as actual files and not red
5234 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 5245 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
5235 # and therefore SYMROOT, needs to be set at the project level. 5246 # and therefore SYMROOT, needs to be set at the project level.
5236 'SYMROOT': '<(DEPTH)/xcodebuild', 5247 'SYMROOT': '<(DEPTH)/xcodebuild',
5237 }, 5248 },
5238 } 5249 }
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