mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 00:06:09 +03:00
88 lines
3.7 KiB
Plaintext
88 lines
3.7 KiB
Plaintext
# Copyright 2016 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import("//build/config/gclient_args.gni")
|
|
|
|
# Uncomment these to specify a different NDK location and version in
|
|
# non-Chromium builds.
|
|
# default_android_ndk_root = "//third_party/android_ndk"
|
|
# default_android_ndk_version = "r10e"
|
|
|
|
# Some non-Chromium builds don't support building java targets.
|
|
enable_java_templates = false
|
|
|
|
# Features used by //base/trace_event and //services/tracing.
|
|
declare_args() {
|
|
# Tracing support requires //third_party/perfetto, which is not available in
|
|
# libchrome (CrOS's version of //base). This flag can disable tracing support
|
|
# altogether, in which case all tracing instrumentation in //base becomes a
|
|
# no-op.
|
|
# TODO(crbug/1065905): Add dependency on perfetto to support typed events.
|
|
enable_base_tracing = true
|
|
|
|
# Switches the TRACE_EVENT instrumentation from base's TraceLog implementation
|
|
# to //third_party/perfetto's client library. Not implemented yet, currently a
|
|
# no-op to set up trybot infrastructure.
|
|
# TODO(crbug/1006769): Switch to perfetto's client library.
|
|
use_perfetto_client_library = false
|
|
|
|
# Limits the defined //third_party/android_deps targets to only "buildCompile"
|
|
# and "buildCompileNoDeps" targets. This is useful for third-party
|
|
# repositories which do not use JUnit tests. For instance,
|
|
# limit_android_deps == true removes "gn gen" requirement for
|
|
# //third_party/robolectric .
|
|
limit_android_deps = false
|
|
|
|
# Allows googletest to pretty-print various absl types. Disabled for nacl due
|
|
# to lack of toolchain support.
|
|
gtest_enable_absl_printers = !is_nacl
|
|
}
|
|
|
|
# Allows different projects to specify their own suppression/ignore lists for
|
|
# sanitizer tools.
|
|
# asan_suppressions_file = "path/to/asan_suppressions.cc"
|
|
# asan_win_ignorelist_path = "path/to/asan/blocklist_win.txt"
|
|
# lsan_suppressions_file = "path/to/lsan_suppressions.cc"
|
|
# tsan_suppressions_file = "path/to/tsan_suppressions.cc"
|
|
# tsan_ignorelist_path = "path/to/tsan/ignores.txt"
|
|
# msan_ignorelist_path = "path/to/msan/ignorelist.txt"
|
|
# ubsan_ignorelist_path = "path/to/ubsan/ignorelist.txt"
|
|
# ubsan_vptr_ignorelist_path = "path/to/ubsan/vptr_ignorelist.txt"
|
|
# ubsan_security_ignorelist_path = "path/to/ubsan/security_ignorelist.txt"
|
|
# cfi_ignorelist_path = "path/to/cfi/ignores.txt"
|
|
|
|
if (host_os == "mac" || is_apple) {
|
|
# Needed for is_apple when targeting macOS or iOS, independent of host.
|
|
# Needed for host_os=="mac" for running host tool such as gperf in blink
|
|
# even when targeting e.g. Windows.
|
|
# TODO(thakis): See TODO in scripts.gni -- this should really only be needed
|
|
# if is_apple, independent of host_os.
|
|
declare_args() {
|
|
# Use the system install of Xcode for tools like ibtool, libtool, etc.
|
|
# This does not affect the compiler. When this variable is false, targets
|
|
# will instead use a hermetic install of Xcode. [The hermetic install can
|
|
# be obtained with gclient sync after setting the environment variable
|
|
# FORCE_MAC_TOOLCHAIN for target_os mac only].
|
|
use_system_xcode = ""
|
|
}
|
|
|
|
if (use_system_xcode == "") {
|
|
_result = exec_script("//build/mac/should_use_hermetic_xcode.py",
|
|
[ current_os ],
|
|
"value")
|
|
|
|
assert(_result != 2,
|
|
"Do not allow building targets with the default" +
|
|
"hermetic toolchain if the minimum OS version is not met.")
|
|
assert(_result != 3,
|
|
"iOS does not support building with a hermetic toolchain. " +
|
|
"Please install Xcode.")
|
|
|
|
use_system_xcode = _result != 1
|
|
}
|
|
|
|
assert(current_os != "ios" || use_system_xcode)
|
|
assert(host_os == "mac" || !use_system_xcode)
|
|
}
|