OLD | NEW |
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 612 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
623 # Variables to control Link-Time Optimizations (LTO). | 623 # Variables to control Link-Time Optimizations (LTO). |
624 # Note: the variables must *not* be enabled at the same time. | 624 # Note: the variables must *not* be enabled at the same time. |
625 # In this case LTO would 'merge' the optimization flags | 625 # In this case LTO would 'merge' the optimization flags |
626 # at link-time which would lead to all code be optimized with -O2. | 626 # at link-time which would lead to all code be optimized with -O2. |
627 # Enable LTO on the code compiled with -Os. | 627 # Enable LTO on the code compiled with -Os. |
628 # See crbug.com/407544 | 628 # See crbug.com/407544 |
629 'use_lto%': 0, | 629 'use_lto%': 0, |
630 # Enable LTO on code compiled with -O2. | 630 # Enable LTO on code compiled with -O2. |
631 'use_lto_o2%': 0, | 631 'use_lto_o2%': 0, |
632 | 632 |
| 633 # Allowed level of identical code folding in the gold linker. |
| 634 'gold_icf_level%': 'safe', |
| 635 |
633 # Libxkbcommon usage. | 636 # Libxkbcommon usage. |
634 'use_xkbcommon%': 0, | 637 'use_xkbcommon%': 0, |
635 | 638 |
636 'conditions': [ | 639 'conditions': [ |
637 # A flag for POSIX platforms | 640 # A flag for POSIX platforms |
638 ['OS=="win"', { | 641 ['OS=="win"', { |
639 'os_posix%': 0, | 642 'os_posix%': 0, |
640 }, { | 643 }, { |
641 'os_posix%': 1, | 644 'os_posix%': 1, |
642 }], | 645 }], |
(...skipping 549 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1192 'enable_mdns%' : '<(enable_mdns)', | 1195 'enable_mdns%' : '<(enable_mdns)', |
1193 'enable_service_discovery%' : '<(enable_service_discovery)', | 1196 'enable_service_discovery%' : '<(enable_service_discovery)', |
1194 'enable_wifi_bootstrapping%': '<(enable_wifi_bootstrapping)', | 1197 'enable_wifi_bootstrapping%': '<(enable_wifi_bootstrapping)', |
1195 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)
', | 1198 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)
', |
1196 'v8_optimized_debug%': '<(v8_optimized_debug)', | 1199 'v8_optimized_debug%': '<(v8_optimized_debug)', |
1197 'proprietary_codecs%': '<(proprietary_codecs)', | 1200 'proprietary_codecs%': '<(proprietary_codecs)', |
1198 'use_goma%': '<(use_goma)', | 1201 'use_goma%': '<(use_goma)', |
1199 'gomadir%': '<(gomadir)', | 1202 'gomadir%': '<(gomadir)', |
1200 'use_lto%': '<(use_lto)', | 1203 'use_lto%': '<(use_lto)', |
1201 'use_lto_o2%': '<(use_lto_o2)', | 1204 'use_lto_o2%': '<(use_lto_o2)', |
| 1205 'gold_icf_level%': '<(gold_icf_level)', |
1202 'video_hole%': '<(video_hole)', | 1206 'video_hole%': '<(video_hole)', |
1203 'support_pre_M6_history_database%': '<(support_pre_M6_history_database)', | 1207 'support_pre_M6_history_database%': '<(support_pre_M6_history_database)', |
1204 'v8_use_external_startup_data%': '<(v8_use_external_startup_data)', | 1208 'v8_use_external_startup_data%': '<(v8_use_external_startup_data)', |
1205 | 1209 |
1206 # Use system protobuf instead of bundled one. | 1210 # Use system protobuf instead of bundled one. |
1207 'use_system_protobuf%': 0, | 1211 'use_system_protobuf%': 0, |
1208 | 1212 |
1209 # Use system yasm instead of bundled one. | 1213 # Use system yasm instead of bundled one. |
1210 'use_system_yasm%': 0, | 1214 'use_system_yasm%': 0, |
1211 | 1215 |
(...skipping 927 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2139 }], | 2143 }], |
2140 ['clang_use_chrome_plugins==1 and OS!="win"', { | 2144 ['clang_use_chrome_plugins==1 and OS!="win"', { |
2141 'clang_chrome_plugins_flags': [ | 2145 'clang_chrome_plugins_flags': [ |
2142 '<!@(<(DEPTH)/tools/clang/scripts/plugin_flags.sh)' | 2146 '<!@(<(DEPTH)/tools/clang/scripts/plugin_flags.sh)' |
2143 ], | 2147 ], |
2144 }], | 2148 }], |
2145 ['asan==1 or msan==1 or lsan==1 or tsan==1', { | 2149 ['asan==1 or msan==1 or lsan==1 or tsan==1', { |
2146 'clang%': 1, | 2150 'clang%': 1, |
2147 'use_allocator%': 'none', | 2151 'use_allocator%': 'none', |
2148 'use_sanitizer_options%': 1, | 2152 'use_sanitizer_options%': 1, |
| 2153 # Disable ICF in the linker to avoid debug info loss. |
| 2154 'gold_icf_level%': 'none', |
2149 }], | 2155 }], |
2150 ['asan==1 and OS=="linux" and chromeos==0', { | 2156 ['asan==1 and OS=="linux" and chromeos==0', { |
2151 'use_custom_libcxx%': 1, | 2157 'use_custom_libcxx%': 1, |
2152 }], | 2158 }], |
2153 ['ubsan==1', { | 2159 ['ubsan==1', { |
2154 'clang%': 1, | 2160 'clang%': 1, |
2155 }], | 2161 }], |
2156 ['ubsan_vptr==1', { | 2162 ['ubsan_vptr==1', { |
2157 'clang%': 1, | 2163 'clang%': 1, |
2158 }], | 2164 }], |
(...skipping 2241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4400 # '-Wl,--threads', | 4406 # '-Wl,--threads', |
4401 # '-Wl,--thread-count=4', | 4407 # '-Wl,--thread-count=4', |
4402 ], | 4408 ], |
4403 }], | 4409 }], |
4404 ], | 4410 ], |
4405 'conditions': [ | 4411 'conditions': [ |
4406 ['release_valgrind_build==0 and order_profiling==0', { | 4412 ['release_valgrind_build==0 and order_profiling==0', { |
4407 'target_conditions': [ | 4413 'target_conditions': [ |
4408 ['_toolset=="target"', { | 4414 ['_toolset=="target"', { |
4409 'ldflags': [ | 4415 'ldflags': [ |
4410 '-Wl,--icf=safe', | 4416 '-Wl,--icf=<(gold_icf_level)', |
4411 ], | 4417 ], |
4412 }], | 4418 }], |
4413 ], | 4419 ], |
4414 }], | 4420 }], |
4415 ], | 4421 ], |
4416 }], | 4422 }], |
4417 ['linux_use_bundled_binutils==1', { | 4423 ['linux_use_bundled_binutils==1', { |
4418 'cflags': [ | 4424 'cflags': [ |
4419 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)', | 4425 '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)', |
4420 ], | 4426 ], |
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4718 ], | 4724 ], |
4719 'cflags_cc': [ | 4725 'cflags_cc': [ |
4720 '-Wno-non-virtual-dtor', | 4726 '-Wno-non-virtual-dtor', |
4721 ], | 4727 ], |
4722 }], | 4728 }], |
4723 ], | 4729 ], |
4724 }], | 4730 }], |
4725 ['target_arch == "arm" and order_profiling==0', { | 4731 ['target_arch == "arm" and order_profiling==0', { |
4726 'ldflags': [ | 4732 'ldflags': [ |
4727 # Enable identical code folding to reduce size. | 4733 # Enable identical code folding to reduce size. |
4728 '-Wl,--icf=safe', | 4734 '-Wl,--icf=<(gold_icf_level)', |
4729 ], | 4735 ], |
4730 }], | 4736 }], |
4731 # NOTE: The stlport header include paths below are specified in | 4737 # NOTE: The stlport header include paths below are specified in |
4732 # cflags rather than include_dirs because they need to come | 4738 # cflags rather than include_dirs because they need to come |
4733 # after include_dirs. Think of them like system headers, but | 4739 # after include_dirs. Think of them like system headers, but |
4734 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 | 4740 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 |
4735 # toolchain (circa Gingerbread) will exhibit strange errors. | 4741 # toolchain (circa Gingerbread) will exhibit strange errors. |
4736 # The include ordering here is important; change with caution. | 4742 # The include ordering here is important; change with caution. |
4737 ['android_webview_build==0', { | 4743 ['android_webview_build==0', { |
4738 'cflags': [ | 4744 'cflags': [ |
(...skipping 1179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5918 # settings in target dicts. SYMROOT is a special case, because many other | 5924 # settings in target dicts. SYMROOT is a special case, because many other |
5919 # Xcode variables depend on it, including variables such as | 5925 # Xcode variables depend on it, including variables such as |
5920 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5926 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5921 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5927 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5922 # files to appear (when present) in the UI as actual files and not red | 5928 # files to appear (when present) in the UI as actual files and not red |
5923 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5929 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5924 # and therefore SYMROOT, needs to be set at the project level. | 5930 # and therefore SYMROOT, needs to be set at the project level. |
5925 'SYMROOT': '<(DEPTH)/xcodebuild', | 5931 'SYMROOT': '<(DEPTH)/xcodebuild', |
5926 }, | 5932 }, |
5927 } | 5933 } |
OLD | NEW |