mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 08:16:09 +03:00
46 lines
1.6 KiB
Plaintext
46 lines
1.6 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.
|
||
|
|
||
|
# This file should only be imported from files that define toolchains.
|
||
|
# There's no way to enforce this exactly, but all toolchains are processed
|
||
|
# in the context of the default_toolchain, so we can at least check for that.
|
||
|
assert(current_toolchain == default_toolchain)
|
||
|
|
||
|
import("//build/config/compiler/compiler.gni")
|
||
|
import("//build/config/sanitizers/sanitizers.gni")
|
||
|
import("//build/toolchain/toolchain.gni")
|
||
|
|
||
|
declare_args() {
|
||
|
# Limit the number of concurrent links; we often want to run fewer
|
||
|
# links at once than we do compiles, because linking is memory-intensive.
|
||
|
# The default to use varies by platform and by the amount of memory
|
||
|
# available, so we call out to a script to get the right value.
|
||
|
concurrent_links = -1
|
||
|
}
|
||
|
|
||
|
if (concurrent_links == -1) {
|
||
|
if (use_thin_lto) {
|
||
|
_args = [
|
||
|
"--mem_per_link_gb=10",
|
||
|
"--reserve_mem_gb=10",
|
||
|
]
|
||
|
} else if (use_sanitizer_coverage) {
|
||
|
# Sanitizer coverage instrumentation increases linker memory consumption
|
||
|
# significantly.
|
||
|
_args = [ "--mem_per_link_gb=16" ]
|
||
|
} else if (is_win) {
|
||
|
_args = [ "--mem_per_link_gb=5" ]
|
||
|
} else if (is_mac) {
|
||
|
_args = [ "--mem_per_link_gb=4" ]
|
||
|
} else if (is_android && !is_component_build && symbol_level == 2) {
|
||
|
_args = [ "--mem_per_link_gb=25" ]
|
||
|
} else {
|
||
|
_args = []
|
||
|
}
|
||
|
|
||
|
# TODO(crbug.com/617429) Pass more build configuration info to the script
|
||
|
# so that we can compute better values.
|
||
|
concurrent_links = exec_script("get_concurrent_links.py", _args, "value")
|
||
|
}
|