| Index: build/common.gypi
|
| diff --git a/build/common.gypi b/build/common.gypi
|
| index fade1eb3f061e0b71005160bebc848cffa87af9a..50346d15e95bf48bfb2c395c6d7b0acfabc3c6b9 100644
|
| --- a/build/common.gypi
|
| +++ b/build/common.gypi
|
| @@ -702,6 +702,7 @@
|
| # Control Flow Integrity for virtual calls and casts.
|
| # See http://clang.llvm.org/docs/ControlFlowIntegrity.html
|
| 'cfi_vptr%': 0,
|
| + 'cfi_diag%': 0,
|
|
|
| 'cfi_blacklist%': '<(PRODUCT_DIR)/../../tools/cfi/blacklist.txt',
|
|
|
| @@ -1240,6 +1241,7 @@
|
| 'video_hole%': '<(video_hole)',
|
| 'v8_use_external_startup_data%': '<(v8_use_external_startup_data)',
|
| 'cfi_vptr%': '<(cfi_vptr)',
|
| + 'cfi_diag%': '<(cfi_diag)',
|
| 'cfi_blacklist%': '<(cfi_blacklist)',
|
| 'mac_views_browser%': '<(mac_views_browser)',
|
| 'android_app_version_name%': '<(android_app_version_name)',
|
| @@ -6099,6 +6101,44 @@
|
| ],
|
| },
|
| }],
|
| + ['cfi_diag==1', {
|
| + 'target_defaults': {
|
| + 'target_conditions': [
|
| + ['_toolset=="target"', {
|
| + 'cflags': [
|
| + '-fno-sanitize-trap=cfi',
|
| + '-fsanitize-recover=cfi',
|
| + ],
|
| + 'ldflags': [
|
| + '-fno-sanitize-trap=cfi',
|
| + '-fsanitize-recover=cfi',
|
| + ],
|
| + 'xcode_settings': {
|
| + 'OTHER_CFLAGS': [
|
| + '-fno-sanitize-trap=cfi',
|
| + '-fsanitize-recover=cfi',
|
| + ],
|
| + },
|
| + 'msvs_settings': {
|
| + 'VCCLCompilerTool': {
|
| + 'AdditionalOptions': [
|
| + '-fno-sanitize-trap=cfi',
|
| + '-fsanitize-recover=cfi',
|
| + ],
|
| + },
|
| + },
|
| + }],
|
| + ['_toolset=="target" and _type!="static_library"', {
|
| + 'xcode_settings': {
|
| + 'OTHER_LDFLAGS': [
|
| + '-fno-sanitize-trap=cfi',
|
| + '-fsanitize-recover=cfi',
|
| + ],
|
| + },
|
| + }],
|
| + ],
|
| + },
|
| + }],
|
| ['cfi_vptr==1', {
|
| 'target_defaults': {
|
| 'target_conditions': [
|
|
|