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

Side by Side Diff: build/common.gypi

Issue 402983002: Remove -fsanitize=null for ubsan_vptr=1 build. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Resolved merge issue. Created 6 years, 5 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
« 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 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 # Track where uninitialized memory originates from. From fastest to 389 # Track where uninitialized memory originates from. From fastest to
390 # slowest: 0 - no tracking, 1 - track only the initial allocation site, 2 390 # slowest: 0 - no tracking, 1 - track only the initial allocation site, 2
391 # - track the chain of stores leading from allocation site to use site. 391 # - track the chain of stores leading from allocation site to use site.
392 'msan_track_origins%': 1, 392 'msan_track_origins%': 1,
393 393
394 # Enable building with UBSan (Clang's -fsanitize=undefined option). 394 # Enable building with UBSan (Clang's -fsanitize=undefined option).
395 # -fsanitize=undefined only works with clang, but ubsan=1 implies clang=1 395 # -fsanitize=undefined only works with clang, but ubsan=1 implies clang=1
396 # See http://clang.llvm.org/docs/UsersManual.html 396 # See http://clang.llvm.org/docs/UsersManual.html
397 'ubsan%': 0, 397 'ubsan%': 0,
398 398
399 # Enable building with UBsan's vptr (Clang's -fsanitize=vptr -fsanitize=nu ll options). 399 # Enable building with UBsan's vptr (Clang's -fsanitize=vptr option).
400 # -fsanitize=vptr only works with clang, but ubsan_vptr=1 implies clang=1 400 # -fsanitize=vptr only works with clang, but ubsan_vptr=1 implies clang=1
401 'ubsan_vptr%': 0, 401 'ubsan_vptr%': 0,
402 'ubsan_vptr_blacklist%': '<(PRODUCT_DIR)/../../tools/ubsan_vptr/blacklist. txt', 402 'ubsan_vptr_blacklist%': '<(PRODUCT_DIR)/../../tools/ubsan_vptr/blacklist. txt',
403 403
404 # Use the dynamic libraries instrumented by one of the sanitizers 404 # Use the dynamic libraries instrumented by one of the sanitizers
405 # instead of the standard system libraries. 405 # instead of the standard system libraries.
406 'use_instrumented_libraries%': 0, 406 'use_instrumented_libraries%': 0,
407 407
408 # Use libc++ (third_party/libc++ and third_party/libc++abi) instead of 408 # Use libc++ (third_party/libc++ and third_party/libc++abi) instead of
409 # stdlibc++ as standard library. This is intended to use for instrumented 409 # stdlibc++ as standard library. This is intended to use for instrumented
(...skipping 3615 matching lines...) Expand 10 before | Expand all | Expand 10 after
4025 '-Wno-error=unused-function', # http://crbug.com/162783 4025 '-Wno-error=unused-function', # http://crbug.com/162783
4026 ], 4026 ],
4027 }], 4027 }],
4028 ], 4028 ],
4029 }], 4029 }],
4030 ['ubsan_vptr==1', { 4030 ['ubsan_vptr==1', {
4031 'target_conditions': [ 4031 'target_conditions': [
4032 ['_toolset=="target"', { 4032 ['_toolset=="target"', {
4033 'cflags': [ 4033 'cflags': [
4034 '-fsanitize=vptr', 4034 '-fsanitize=vptr',
4035 '-fsanitize=null', # Avoid dereferences on null pointer objec ts.
4036 '-fsanitize-blacklist=<(ubsan_vptr_blacklist)', 4035 '-fsanitize-blacklist=<(ubsan_vptr_blacklist)',
4037 ], 4036 ],
4038 'cflags_cc!': [ 4037 'cflags_cc!': [
4039 '-fno-rtti', 4038 '-fno-rtti',
4040 ], 4039 ],
4041 'cflags!': [ 4040 'cflags!': [
4042 '-fno-rtti', 4041 '-fno-rtti',
4043 ], 4042 ],
4044 'ldflags': [ 4043 'ldflags': [
4045 '-fsanitize=vptr', # -fsanitize=null is not necessary. 4044 '-fsanitize=vptr',
4046 ], 4045 ],
4047 'defines': [ 4046 'defines': [
4048 'UNDEFINED_SANITIZER', 4047 'UNDEFINED_SANITIZER',
4049 ], 4048 ],
4050 }], 4049 }],
4051 ], 4050 ],
4052 'conditions': [ 4051 'conditions': [
4053 ['OS=="mac"', { 4052 ['OS=="mac"', {
4054 'cflags': [ 4053 'cflags': [
4055 '-Wno-error=unused-function', # http://crbug.com/162783 4054 '-Wno-error=unused-function', # http://crbug.com/162783
(...skipping 1598 matching lines...) Expand 10 before | Expand all | Expand 10 after
5654 # settings in target dicts. SYMROOT is a special case, because many other 5653 # settings in target dicts. SYMROOT is a special case, because many other
5655 # Xcode variables depend on it, including variables such as 5654 # Xcode variables depend on it, including variables such as
5656 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 5655 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
5657 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 5656 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
5658 # files to appear (when present) in the UI as actual files and not red 5657 # files to appear (when present) in the UI as actual files and not red
5659 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 5658 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
5660 # and therefore SYMROOT, needs to be set at the project level. 5659 # and therefore SYMROOT, needs to be set at the project level.
5661 'SYMROOT': '<(DEPTH)/xcodebuild', 5660 'SYMROOT': '<(DEPTH)/xcodebuild',
5662 }, 5661 },
5663 } 5662 }
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