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

Side by Side Diff: build/common.gypi

Issue 8207010: Implement disable_pie for all executables. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review comments incorporated. Created 9 years, 2 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 | chrome/chrome_exe.gypi » ('j') | 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) 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 370 matching lines...) Expand 10 before | Expand all | Expand 10 after
381 'configuration_policy%': '<(configuration_policy)', 381 'configuration_policy%': '<(configuration_policy)',
382 'safe_browsing%': '<(safe_browsing)', 382 'safe_browsing%': '<(safe_browsing)',
383 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', 383 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)',
384 'asan%': '<(asan)', 384 'asan%': '<(asan)',
385 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)', 385 'enable_register_protocol_handler%': '<(enable_register_protocol_handler)',
386 'enable_smooth_scrolling%': '<(enable_smooth_scrolling)', 386 'enable_smooth_scrolling%': '<(enable_smooth_scrolling)',
387 'enable_web_intents%': '<(enable_web_intents)', 387 'enable_web_intents%': '<(enable_web_intents)',
388 # Whether to build for Wayland display server 388 # Whether to build for Wayland display server
389 'use_wayland%': 0, 389 'use_wayland%': 0,
390 390
391 # Default to enabled PIE; this is important for ASLR but we need to be
392 # able to turn it off for remote debugging on Chromium OS
393 'linux_disable_pie%': 0,
394
391 # The release channel that this build targets. This is used to restrict 395 # The release channel that this build targets. This is used to restrict
392 # channel-specific build options, like which installer packages to create. 396 # channel-specific build options, like which installer packages to create.
393 # The default is 'all', which does no channel-specific filtering. 397 # The default is 'all', which does no channel-specific filtering.
394 'channel%': 'all', 398 'channel%': 'all',
395 399
396 # Override chromium_mac_pch and set it to 0 to suppress the use of 400 # Override chromium_mac_pch and set it to 0 to suppress the use of
397 # precompiled headers on the Mac. Prefix header injection may still be 401 # precompiled headers on the Mac. Prefix header injection may still be
398 # used, but prefix headers will not be precompiled. This is useful when 402 # used, but prefix headers will not be precompiled. This is useful when
399 # using distcc to distribute a build to compile slaves that don't 403 # using distcc to distribute a build to compile slaves that don't
400 # share the same compiler executable as the system driving the compilation, 404 # share the same compiler executable as the system driving the compilation,
(...skipping 1346 matching lines...) Expand 10 before | Expand all | Expand 10 after
1747 }], 1751 }],
1748 ], 1752 ],
1749 }], 1753 }],
1750 ], 1754 ],
1751 }], 1755 }],
1752 ['linux_fpic==1', { 1756 ['linux_fpic==1', {
1753 'cflags': [ 1757 'cflags': [
1754 '-fPIC', 1758 '-fPIC',
1755 ], 1759 ],
1756 }], 1760 }],
1761 # TODO(rkc): Currently building Chrome with the PIE flag causes
1762 # remote debugging to break (remote debugger does not get correct
1763 # section header offsets hence causing all symbol handling to go
1764 # kaboom). See crosbug.com/15266
1765 # Remove this flag once this issue is fixed.
1766 ['linux_disable_pie==1', {
1767 'target_conditions': [
1768 ['_type=="executable"', {
1769 'ldflags': [
1770 '-nopie',
1771 ],
1772 }],
1773 ],
1774 }],
1757 ['sysroot!=""', { 1775 ['sysroot!=""', {
1758 'target_conditions': [ 1776 'target_conditions': [
1759 ['_toolset=="target"', { 1777 ['_toolset=="target"', {
1760 'cflags': [ 1778 'cflags': [
1761 '--sysroot=<(sysroot)', 1779 '--sysroot=<(sysroot)',
1762 ], 1780 ],
1763 'ldflags': [ 1781 'ldflags': [
1764 '--sysroot=<(sysroot)', 1782 '--sysroot=<(sysroot)',
1765 ], 1783 ],
1766 }]] 1784 }]]
(...skipping 732 matching lines...) Expand 10 before | Expand all | Expand 10 after
2499 # settings in target dicts. SYMROOT is a special case, because many other 2517 # settings in target dicts. SYMROOT is a special case, because many other
2500 # Xcode variables depend on it, including variables such as 2518 # Xcode variables depend on it, including variables such as
2501 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 2519 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
2502 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 2520 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
2503 # files to appear (when present) in the UI as actual files and not red 2521 # files to appear (when present) in the UI as actual files and not red
2504 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 2522 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
2505 # and therefore SYMROOT, needs to be set at the project level. 2523 # and therefore SYMROOT, needs to be set at the project level.
2506 'SYMROOT': '<(DEPTH)/xcodebuild', 2524 'SYMROOT': '<(DEPTH)/xcodebuild',
2507 }, 2525 },
2508 } 2526 }
OLDNEW
« no previous file with comments | « no previous file | chrome/chrome_exe.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698