blob: 0d516b42b25d9c3a819f72a42ee70896d4a3499c [file] [log] [blame]
# Copyright 2021 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Ninja `restat` can lead to on-the-fly pruning of the overall action graph.
# This script transforms any command to be restat-friendly by redirecting
# outputs to a temporary location, followed by move-if-changed.
# re-client supports this behavior directly with
# --preserve_unchanged_output_mtime (which suppresses downloading over
# unchanged files), so this script is only needed for non-RBE build actions.
restat_wrapper = "//build/tracer/restat_cacher.py"
# The following script helps pack the restat_wrapper invocation
# into a single token that rewrapper --local_wrapper can accept.
restat_wrapper_local_wrapper = "//build/tracer/output_cacher_local_wrapper.sh"
declare_args() {
# Set to true to make Rust compiles preserve timestamps of unchanged outputs.
restat_rust = false
# Set to true to make C++ compiles preserve timestamps of unchanged outputs.
restat_cc = false
}