| # 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/. |
| |
| # Setup for build cache |
| |
| # Avoid duplication if the file happens to be included twice. |
| if test -z "$bucket"; then |
| |
| read branch platform master <<EOF |
| $(python2.7 -c 'import json; p = json.loads(open("'"$topsrcdir"'/../buildprops.json").read())["properties"]; print p["branch"], p["platform"], p["master"]' 2> /dev/null) |
| EOF |
| |
| bucket= |
| if test -z "$SCCACHE_DISABLE" -a -z "$no_sccache" -a -z "$MOZ_PGO_IS_SET" -a -z "$MOZ_PGO"; then |
| case "${branch}" in |
| try) |
| case "${master}" in |
| *scl1.mozilla.com*|*.scl3.mozilla.com*) |
| bucket=mozilla-releng-s3-cache-us-west-1-try |
| ;; |
| *use1.mozilla.com*) |
| bucket=mozilla-releng-s3-cache-us-east-1-try |
| ;; |
| *usw2.mozilla.com*) |
| bucket=mozilla-releng-s3-cache-us-west-2-try |
| ;; |
| esac |
| ;; |
| b2g-inbound|mozilla-inbound|fx-team) |
| case "${master}" in |
| *use1.mozilla.com*) |
| bucket=mozilla-releng-s3-cache-us-east-1-prod |
| ;; |
| *usw2.mozilla.com*) |
| bucket=mozilla-releng-s3-cache-us-west-2-prod |
| ;; |
| esac |
| ;; |
| esac |
| fi |
| |
| if test -z "$bucket"; then |
| case "$platform" in |
| win*) : ;; |
| *) |
| ac_add_options --with-ccache |
| esac |
| else |
| if ! test -e $topsrcdir/sccache/sccache.py; then |
| echo "Sccache missing in the tooltool manifest" >&2 |
| exit 1 |
| fi |
| mk_add_options "export SCCACHE_BUCKET=$bucket" |
| case "$master" in |
| *use1.mozilla.com*|*usw2.mozilla.com*) |
| mk_add_options "export SCCACHE_NAMESERVER=169.254.169.253" |
| ;; |
| esac |
| ac_add_options "--with-compiler-wrapper=python2.7 $topsrcdir/sccache/sccache.py" |
| mk_add_options MOZ_PREFLIGHT_ALL+=build/sccache.mk |
| mk_add_options MOZ_POSTFLIGHT_ALL+=build/sccache.mk |
| mk_add_options "UPLOAD_EXTRA_FILES+=sccache.log.gz" |
| case "$platform" in |
| win*) |
| # sccache supports a special flag to create depfiles. |
| export _DEPEND_CFLAGS='-deps$(MDDEPDIR)/$(@F).pp' |
| # Windows builds have a default wrapper that needs to be overridden |
| mk_add_options "export CC_WRAPPER=" |
| mk_add_options "export CXX_WRAPPER=" |
| # For now, sccache doesn't support separate PDBs so force debug info to be |
| # in object files. |
| mk_add_options "export COMPILE_PDB_FLAG=" |
| mk_add_options "export HOST_PDB_FLAG=" |
| mk_add_options "export MOZ_DEBUG_FLAGS=-Z7" |
| ;; |
| esac |
| fi |
| |
| fi |