# Copyright (c) 2015 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.

import("//build/dotfile_settings.gni")

# The location of the build configuration file.
buildconfig = "//build/config/BUILDCONFIG.gn"

# The python interpreter to use by default. On Windows, this will look
# for python3.exe and python3.bat.
script_executable = "python3"

# The secondary source root is a parallel directory tree where
# GN build files are placed when they can not be placed directly
# in the source tree, e.g. for third party source trees.
secondary_source = "//build/secondary/"

# These are the targets to skip header checking by default. The files in targets
# matching these patterns (see "gn help label_pattern" for format) will not have
# their includes checked for proper dependencies when you run either
# "gn check" or "gn gen --check".
no_check_targets = [
  "//third_party/icu/*",

  # TODO: crbug/326607005 - GTEST_HAS_ABSL is broken
  "//third_party/googletest:gmock",
  "//third_party/googletest:gtest",
]

# These are the list of GN files that run exec_script. This allowlist exists
# to force additional review for new uses of exec_script, which is strongly
# discouraged except for gypi_to_gn calls.
exec_script_allowlist = build_dotfile_settings.exec_script_allowlist +
                        [ "//build_overrides/build.gni" ]

expand_directory_allowlist = build_dotfile_settings.expand_directory_allowlist

export_compile_commands = [ "*" ]

default_args = {
  # Webrtc does not support component builds because we are not using the
  # template "component" but we rely directly on "rtc_static_library" and
  # "rtc_shared_library". This means that we cannot use the chromium default
  # value for this argument.
  # This also means that the user can override this value using --args or
  # the args.gn file but this setting will be ignored because we don't support
  # component builds.
  is_component_build = false

  mac_sdk_min = "10.12"

  ios_deployment_target = "14.0"

  # The SDK API level, in contrast, is set by build/android/AndroidManifest.xml.
  android_ndk_api_level = 23

  # WebRTC does not provide the gflags dependency. Because libyuv uses it only
  # for unittests, it can be disabled (see third_party/libyuv/BUILD.gn)
  libyuv_use_gflags = false

  enable_libaom = true

  gtest_enable_absl_printers = true

  # Differently from Chromium, WebRTC still support SDK 21.
  default_min_sdk_version = 23

  # Prevent jsoncpp to pass -Wno-deprecated-declarations to users
  jsoncpp_no_deprecated_declarations = false

  # Fixes the abi-revision issue.
  # TODO(https://bugs.webrtc.org/14437):  Remove this section if general
  # Chromium fix resolves the problem.
  fuchsia_sdk_readelf_exec =
      "//third_party/llvm-build/Release+Asserts/bin/llvm-readelf"

  # WebRTC doesn't use jni_zero's multiplexing. Since this causes an error
  # let's temporarily disable it.
  enable_jni_multiplexing = false

  # use_fuzztest_wrapper adds a dependency to //base so we have to disable it.
  use_fuzztest_wrapper = false

  # Enable Rust in WebRTC
  enable_rust = true
  enable_rust_cxx = true
  enable_chromium_prelude = true

  # See context on https://issues.chromium.org/issues/415076048.
  enable_js_protobuf = false

  # Use Siso instead of Ninja.
  use_siso = true

  clang_unsafe_buffers_paths = "//unsafe_buffers_paths.txt"

  # WebRTC must stay in C++20 for longer compared to Chromium.
  use_cxx23 = false

  # Perfetto with zstd doesn't build when build_with_chromium=false
  enable_perfetto_zstd = false
}
