1# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2# 3# Use of this source code is governed by a BSD-style license 4# that can be found in the LICENSE file in the root of the source 5# tree. An additional intellectual property rights grant can be found 6# in the file PATENTS. All contributing project authors may 7# be found in the AUTHORS file in the root of the source tree. 8 9import("//build/dotfile_settings.gni") 10 11# The location of the build configuration file. 12buildconfig = "//build/config/BUILDCONFIG.gn" 13 14# The python interpreter to use by default. On Windows, this will look 15# for python3.exe and python3.bat. 16script_executable = "python3" 17 18# The secondary source root is a parallel directory tree where 19# GN build files are placed when they can not be placed directly 20# in the source tree, e.g. for third party source trees. 21secondary_source = "//build/secondary/" 22 23# These are the targets to skip header checking by default. The files in targets 24# matching these patterns (see "gn help label_pattern" for format) will not have 25# their includes checked for proper dependencies when you run either 26# "gn check" or "gn gen --check". 27no_check_targets = [ 28 "//third_party/icu/*", 29 30 # TODO(crbug.com/1151236) Remove once fixed. 31 "//base/allocator/partition_allocator:partition_alloc", 32] 33 34# These are the list of GN files that run exec_script. This whitelist exists 35# to force additional review for new uses of exec_script, which is strongly 36# discouraged except for gypi_to_gn calls. 37exec_script_whitelist = build_dotfile_settings.exec_script_whitelist + 38 [ "//build_overrides/build.gni" ] 39 40default_args = { 41 # Webrtc does not support component builds because we are not using the 42 # template "component" but we rely directly on "rtc_static_library" and 43 # "rtc_shared_library". This means that we cannot use the chromium default 44 # value for this argument. 45 # This also means that the user can override this value using --args or 46 # the args.gn file but this setting will be ignored because we don't support 47 # component builds. 48 is_component_build = false 49 50 mac_sdk_min = "10.12" 51 52 ios_deployment_target = "12.0" 53 54 # The SDK API level, in contrast, is set by build/android/AndroidManifest.xml. 55 android32_ndk_api_level = 16 56 android64_ndk_api_level = 21 57 58 # WebRTC does not provide the gflags dependency. Because libyuv uses it only 59 # for unittests, it can be disabled (see third_party/libyuv/BUILD.gn) 60 libyuv_use_gflags = false 61 62 enable_libaom = true 63 64 gtest_enable_absl_printers = true 65 66 # Differently from Chromium, WebRTC still support SDK 21. 67 default_min_sdk_version = 21 68 69 # Prevent jsoncpp to pass -Wno-deprecated-declarations to users 70 jsoncpp_no_deprecated_declarations = false 71 72 # Fixes the abi-revision issue. 73 # TODO(https://bugs.webrtc.org/14437): Remove this section if general 74 # Chromium fix resolves the problem. 75 fuchsia_sdk_readelf_exec = 76 "//third_party/llvm-build/Release+Asserts/bin/llvm-readelf" 77 fuchsia_target_api_level = 9 78} 79