| # Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. |
| # |
| # Use of this source code is governed by a BSD-style license |
| # that can be found in the LICENSE file in the root of the source |
| # tree. An additional intellectual property rights grant can be found |
| # in the file PATENTS. All contributing project authors may |
| # be found in the AUTHORS file in the root of the source tree. |
| |
| # Dependencies from //build defining variables used by partition_alloc. |
| import("//build/config/android/config.gni") |
| import("//build/config/cast.gni") |
| import("//build/config/chromeos/ui_mode.gni") |
| import("//build/config/compiler/compiler.gni") |
| import("//build/config/cronet/config.gni") |
| import("//build/config/dcheck_always_on.gni") |
| import("//build/config/logging.gni") |
| partition_alloc_enable_arc_config = "//build/config/compiler:enable_arc" |
| |
| # partition_alloc is performance critical and it should generally be optimized |
| # for speed, even in debug mode. WebRTC doesn't really need its debug version. |
| partition_alloc_remove_configs = |
| [ "//build/config/compiler:default_optimization" ] |
| partition_alloc_add_configs = [ "//build/config/compiler:optimize_speed" ] |
| |
| # Disable partition_alloc for WebRTC standalone builds. |
| use_partition_alloc_as_malloc_default = false |
| use_allocator_shim_default = false |
| enable_backup_ref_ptr_support_default = false |
| enable_backup_ref_ptr_slow_checks_default = false |
| enable_dangling_raw_ptr_checks_default = false |
| |
| # raw_ptr behave like naked pointers, except they are always initialized. This |
| # avoids relying on undefined behaviors. |
| raw_ptr_zero_on_construct_default = true |
| raw_ptr_zero_on_move_default = true |
| raw_ptr_zero_on_destruct_default = false |
| |
| # WebRTC used C++20 by default: |
| assert_cpp20_default = true |