OLD | NEW |
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 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 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 | 174 |
175 # Safe browsing is compiled in by default. Set to 0 to disable. | 175 # Safe browsing is compiled in by default. Set to 0 to disable. |
176 'safe_browsing%': 1, | 176 'safe_browsing%': 1, |
177 | 177 |
178 # If this is set, the clang plugins used on the buildbot will be used. | 178 # If this is set, the clang plugins used on the buildbot will be used. |
179 # Run tools/clang/scripts/update.sh to make sure they are compiled. | 179 # Run tools/clang/scripts/update.sh to make sure they are compiled. |
180 # This causes 'clang_chrome_plugins_flags' to be set. | 180 # This causes 'clang_chrome_plugins_flags' to be set. |
181 # Has no effect if 'clang' is not set as well. | 181 # Has no effect if 'clang' is not set as well. |
182 'clang_use_chrome_plugins%': 0, | 182 'clang_use_chrome_plugins%': 0, |
183 | 183 |
| 184 # Enable building with ASAN (Clang's -fasan option). |
| 185 # -fasan only works with clang, but asan=1 implies clang=1 |
| 186 # See https://sites.google.com/a/chromium.org/dev/developers/testing/addre
sssanitizer |
| 187 'asan%': 0, |
| 188 |
184 # Set to 1 compile with -fPIC cflag on linux. This is a must for shared | 189 # Set to 1 compile with -fPIC cflag on linux. This is a must for shared |
185 # libraries on linux x86-64 and arm, plus ASLR. | 190 # libraries on linux x86-64 and arm, plus ASLR. |
186 'linux_fpic%': 1, | 191 'linux_fpic%': 1, |
187 | 192 |
188 # Enable navigator.registerProtocolHandler and supporting UI. | 193 # Enable navigator.registerProtocolHandler and supporting UI. |
189 'enable_register_protocol_handler%': 1, | 194 'enable_register_protocol_handler%': 1, |
190 | 195 |
191 # Enable Web Intents and supporting UI. | 196 # Enable Web Intents and supporting UI. |
192 'enable_web_intents%': 0, | 197 'enable_web_intents%': 0, |
193 | 198 |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
299 'disable_sse2%': '<(disable_sse2)', | 304 'disable_sse2%': '<(disable_sse2)', |
300 'component%': '<(component)', | 305 'component%': '<(component)', |
301 'use_titlecase_in_grd_files%': '<(use_titlecase_in_grd_files)', | 306 'use_titlecase_in_grd_files%': '<(use_titlecase_in_grd_files)', |
302 'use_third_party_translations%': '<(use_third_party_translations)', | 307 'use_third_party_translations%': '<(use_third_party_translations)', |
303 'remoting%': '<(remoting)', | 308 'remoting%': '<(remoting)', |
304 'enable_webrtc%': '<(enable_webrtc)', | 309 'enable_webrtc%': '<(enable_webrtc)', |
305 'p2p_apis%': '<(p2p_apis)', | 310 'p2p_apis%': '<(p2p_apis)', |
306 'configuration_policy%': '<(configuration_policy)', | 311 'configuration_policy%': '<(configuration_policy)', |
307 'safe_browsing%': '<(safe_browsing)', | 312 'safe_browsing%': '<(safe_browsing)', |
308 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', | 313 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', |
| 314 'asan%': '<(asan)', |
309 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)', | 315 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)', |
310 'enable_smooth_scrolling%': '<(enable_smooth_scrolling)', | 316 'enable_smooth_scrolling%': '<(enable_smooth_scrolling)', |
311 # Whether to build for Wayland display server | 317 # Whether to build for Wayland display server |
312 'use_wayland%': 0, | 318 'use_wayland%': 0, |
313 | 319 |
314 # The release channel that this build targets. This is used to restrict | 320 # The release channel that this build targets. This is used to restrict |
315 # channel-specific build options, like which installer packages to create. | 321 # channel-specific build options, like which installer packages to create. |
316 # The default is 'all', which does no channel-specific filtering. | 322 # The default is 'all', which does no channel-specific filtering. |
317 'channel%': 'all', | 323 'channel%': 'all', |
318 | 324 |
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
683 # Set use_ibus to 1 to enable ibus support. | 689 # Set use_ibus to 1 to enable ibus support. |
684 ['touchui==1 and chromeos==1', { | 690 ['touchui==1 and chromeos==1', { |
685 'use_ibus%': 1, | 691 'use_ibus%': 1, |
686 }, { | 692 }, { |
687 'use_ibus%': 0, | 693 'use_ibus%': 0, |
688 }], | 694 }], |
689 | 695 |
690 ['enable_register_protocol_handler==1', { | 696 ['enable_register_protocol_handler==1', { |
691 'grit_defines': ['-D', 'enable_register_protocol_handler'], | 697 'grit_defines': ['-D', 'enable_register_protocol_handler'], |
692 }], | 698 }], |
| 699 |
| 700 ['asan==1', { |
| 701 'clang%': 1, |
| 702 }], |
693 ], | 703 ], |
694 }, | 704 }, |
695 'target_defaults': { | 705 'target_defaults': { |
696 'variables': { | 706 'variables': { |
697 # The condition that operates on chromium_code is in a target_conditions | 707 # The condition that operates on chromium_code is in a target_conditions |
698 # section, and will not have access to the default fallback value of | 708 # section, and will not have access to the default fallback value of |
699 # chromium_code at the top of this file, or to the chromium_code | 709 # chromium_code at the top of this file, or to the chromium_code |
700 # variable placed at the root variables scope of .gyp files, because | 710 # variable placed at the root variables scope of .gyp files, because |
701 # those variables are not set at target scope. As a workaround, | 711 # those variables are not set at target scope. As a workaround, |
702 # if chromium_code is not set at target scope, define it in target scope | 712 # if chromium_code is not set at target scope, define it in target scope |
(...skipping 833 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1536 'cflags': [ | 1546 'cflags': [ |
1537 '<(clang_chrome_plugins_flags)', | 1547 '<(clang_chrome_plugins_flags)', |
1538 ], | 1548 ], |
1539 }], | 1549 }], |
1540 ['clang==1 and clang_load!="" and clang_add_plugin!=""', { | 1550 ['clang==1 and clang_load!="" and clang_add_plugin!=""', { |
1541 'cflags': [ | 1551 'cflags': [ |
1542 '-Xclang', '-load', '-Xclang', '<(clang_load)', | 1552 '-Xclang', '-load', '-Xclang', '<(clang_load)', |
1543 '-Xclang', '-add-plugin', '-Xclang', '<(clang_add_plugin)', | 1553 '-Xclang', '-add-plugin', '-Xclang', '<(clang_add_plugin)', |
1544 ], | 1554 ], |
1545 }], | 1555 }], |
| 1556 ['asan==1', { |
| 1557 # Only in the linux section for now, since ASAN doesn't |
| 1558 # work on Mac yet. |
| 1559 'cflags': [ |
| 1560 '-fasan -w', |
| 1561 ], |
| 1562 'ldflags': [ |
| 1563 '-fasan', |
| 1564 ], |
| 1565 }], |
1546 ['no_strict_aliasing==1', { | 1566 ['no_strict_aliasing==1', { |
1547 'cflags': [ | 1567 'cflags': [ |
1548 '-fno-strict-aliasing', | 1568 '-fno-strict-aliasing', |
1549 ], | 1569 ], |
1550 }], | 1570 }], |
1551 ['linux_breakpad==1', { | 1571 ['linux_breakpad==1', { |
1552 'cflags': [ '-g' ], | 1572 'cflags': [ '-g' ], |
1553 'defines': ['USE_LINUX_BREAKPAD'], | 1573 'defines': ['USE_LINUX_BREAKPAD'], |
1554 }], | 1574 }], |
1555 ['linux_use_heapchecker==1', { | 1575 ['linux_use_heapchecker==1', { |
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1958 # settings in target dicts. SYMROOT is a special case, because many other | 1978 # settings in target dicts. SYMROOT is a special case, because many other |
1959 # Xcode variables depend on it, including variables such as | 1979 # Xcode variables depend on it, including variables such as |
1960 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 1980 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
1961 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 1981 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
1962 # files to appear (when present) in the UI as actual files and not red | 1982 # files to appear (when present) in the UI as actual files and not red |
1963 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 1983 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
1964 # and therefore SYMROOT, needs to be set at the project level. | 1984 # and therefore SYMROOT, needs to be set at the project level. |
1965 'SYMROOT': '<(DEPTH)/xcodebuild', | 1985 'SYMROOT': '<(DEPTH)/xcodebuild', |
1966 }, | 1986 }, |
1967 } | 1987 } |
OLD | NEW |