41 строка
1.4 KiB
Plaintext
41 строка
1.4 KiB
Plaintext
# Copyright (c) 2014 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/toolchain/goma.gni")
|
|
|
|
# Defines the configuration of cc wrapper
|
|
# ccache: a c/c++ compiler cache which can greatly reduce recompilation times.
|
|
# icecc, distcc: it takes compile jobs from a build and distributes them among
|
|
# remote machines allowing a parallel build.
|
|
#
|
|
# TIPS
|
|
#
|
|
# 1) ccache
|
|
# Set clang_use_chrome_plugins=false if using ccache 3.1.9 or earlier, since
|
|
# these versions don't support -Xclang. (3.1.10 and later will silently
|
|
# ignore -Xclang, so it doesn't matter if you disable clang_use_chrome_plugins
|
|
# or not).
|
|
#
|
|
# Use ccache 3.2 or later to avoid clang unused argument warnings:
|
|
# https://bugzilla.samba.org/show_bug.cgi?id=8118
|
|
#
|
|
# To avoid -Wparentheses-equality clang warnings, at some cost in terms of
|
|
# speed, you can do:
|
|
# export CCACHE_CPP2=yes
|
|
#
|
|
# 2) icecc
|
|
# Set clang_use_chrome_plugins=false because icecc cannot distribute custom
|
|
# clang libraries.
|
|
#
|
|
# To use icecc and ccache together, set cc_wrapper = "ccache" with
|
|
# export CCACHE_PREFIX=icecc
|
|
|
|
declare_args() {
|
|
# Set to "ccache", "icecc" or "distcc". Probably doesn't work on windows.
|
|
cc_wrapper = ""
|
|
}
|
|
|
|
assert(!use_goma || cc_wrapper == "",
|
|
"use_goma and cc_wrapper can not be used together.")
|