Home | History | Annotate | Download | only in toolchain
      1 # Copyright (c) 2014 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 # Defines the configuration of cc wrapper
      6 # ccache: a c/c++ compiler cache which can greatly reduce recompilation times.
      7 # icecc, distcc: it takes compile jobs from a build and distributes them among
      8 #                remote machines allowing a parallel build.
      9 #
     10 # TIPS
     11 #
     12 # 1) ccache
     13 # Set clang_use_chrome_plugins=false if using ccache 3.1.9 or earlier, since
     14 # these versions don't support -Xclang.  (3.1.10 and later will silently
     15 # ignore -Xclang, so it doesn't matter if you disable clang_use_chrome_plugins
     16 # or not).
     17 #
     18 # Use ccache 3.2 or later to avoid clang unused argument warnings:
     19 # https://bugzilla.samba.org/show_bug.cgi?id=8118
     20 #
     21 # To avoid -Wparentheses-equality clang warnings, at some cost in terms of
     22 # speed, you can do:
     23 # export CCACHE_CPP2=yes
     24 #
     25 # 2) icecc
     26 # Set clang_use_chrome_plugins=false because icecc cannot distribute custom
     27 # clang libraries.
     28 #
     29 # To use icecc and ccache together, set cc_wrapper = "ccache" with
     30 # export CCACHE_PREFIX=icecc
     31 
     32 declare_args() {
     33   # Set to "ccache", "icecc" or "distcc".  Probably doesn't work on windows.
     34   cc_wrapper = ""
     35 }
     36