# 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