diff --git a/script/bootstrap.py b/script/bootstrap.py index 7190345803a45..3089798f115ca 100755 --- a/script/bootstrap.py +++ b/script/bootstrap.py @@ -110,6 +110,8 @@ def parse_args(): help='The static library path of libchromiumcontent.') parser.add_argument('--defines', default='', help='The build variables passed to gyp') + parser.add_argument('--cc_wrapper', + help='Sets cc_wrapper for build. E.g. $(which sccache)') return parser.parse_args() @@ -120,6 +122,8 @@ def args_to_defines(args): if args.clang_dir: defines += ' make_clang_dir=' + args.clang_dir defines += ' clang_use_chrome_plugins=0' + if args.cc_wrapper is not None: + defines += ' cc_wrapper=' + args.cc_wrapper return defines diff --git a/toolchain.gypi b/toolchain.gypi index 0b4ffa3e5eb91..98a5414aa842f 100644 --- a/toolchain.gypi +++ b/toolchain.gypi @@ -5,6 +5,9 @@ # Set this to true when building with Clang. 'clang%': 1, + # Set this to the absolute path to sccache when building with sccache + 'cc_wrapper%': '', + # Path to mips64el toolchain. 'make_mips64_dir%': 'vendor/gcc-4.8.3-d197-n64-loongson/usr', @@ -101,6 +104,15 @@ ], }, 'conditions': [ + # Setup cc_wrapper + ['cc_wrapper!=""', { + 'make_global_settings': [ + ['CC_wrapper', '<(cc_wrapper)'], + ['CXX_wrapper', '<(cc_wrapper)'], + ['CC.host_wrapper', '<(cc_wrapper)'], + ['CXX.host_wrapper', '<(cc_wrapper)'] + ], + }], # Setup building with clang. ['clang==1', { 'make_global_settings': [