build/sccache.mk
author Ted Mielczarek <ted@mielczarek.org>
Thu, 25 Aug 2016 18:39:57 -0400
changeset 370973 683e59dc30940172227d80afa8b4e0d9a2cb1bb3
parent 202211 41708cef5ec182544769d9d18776958aa79d27cd
child 419977 d56a606712f1ae1086f6dc94623dea03726a5d9b
permissions -rw-r--r--
bug 1286934 - Switch to using sccache2. r=gps This patch does a few things: 1) Change all the in-tree tooltool manifests to contain sccache2 instead of the existing Python sccache 2) Change mozconfig.cache to point at sccache. 3) Lightly tweak the --with-cccache configure option to support sccache, and detect whether we're using ccache or sccache and set an option appropriately. 4) Add a MOZ_SCCACHE_VERBOSE_STATS option, and add a target in the top-level Makefile to make sccache spit out its stats at the end of the build. This is useful to see the cache hits/errors until we get something better. 5) Add MOZ_USING_SCCACHE to the build telemetry. Not that I think it will be immediately useful, but for future use. MozReview-Commit-ID: 9lrdLwNj5Bm

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

ifdef OBJDIR
BASE_DIR = $(OBJDIR)
else
# OSX Universal builds only do upload in the first MOZ_BUILD_PROJECTS
BASE_DIR = $(MOZ_OBJDIR)/$(firstword $(MOZ_BUILD_PROJECTS))
endif

preflight_all:
	# Terminate any sccache server that might still be around
	-$(TOPSRCDIR)/sccache2/sccache --stop-server > /dev/null 2>&1

postflight_all:
	# Terminate sccache server. This prints sccache stats.
	-$(TOPSRCDIR)/sccache2/sccache --stop-server