aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/cpp')
-rw-r--r--src/main/cpp/blaze.cc5
-rw-r--r--src/main/cpp/startup_options.cc14
-rw-r--r--src/main/cpp/startup_options.h3
3 files changed, 19 insertions, 3 deletions
diff --git a/src/main/cpp/blaze.cc b/src/main/cpp/blaze.cc
index 4240be51aa..bfb8e150b8 100644
--- a/src/main/cpp/blaze.cc
+++ b/src/main/cpp/blaze.cc
@@ -482,6 +482,11 @@ static vector<string> GetArgumentArray() {
} else {
result.push_back("--use_custom_exit_code_on_abrupt_exit=false");
}
+ if (globals->options->use_action_cache) {
+ result.push_back("--use_action_cache=true");
+ } else {
+ result.push_back("--use_action_cache=false");
+ }
// This is only for Blaze reporting purposes; the real interpretation of the
// jvm flags occurs when we set up the java command line.
diff --git a/src/main/cpp/startup_options.cc b/src/main/cpp/startup_options.cc
index f54c90024d..a78b559c5b 100644
--- a/src/main/cpp/startup_options.cc
+++ b/src/main/cpp/startup_options.cc
@@ -38,7 +38,7 @@ StartupOptions::StartupOptions(const WorkspaceLayout* workspace_layout)
: StartupOptions("Bazel", workspace_layout) {}
StartupOptions::StartupOptions(const string &product_name,
- const WorkspaceLayout* workspace_layout)
+ const WorkspaceLayout *workspace_layout)
: product_name(product_name),
deep_execroot(true),
block_for_lock(true),
@@ -57,7 +57,8 @@ StartupOptions::StartupOptions(const string &product_name,
invocation_policy(NULL),
client_debug(false),
use_custom_exit_code_on_abrupt_exit(true),
- java_logging_formatter("java.util.logging.SimpleFormatter") {
+ java_logging_formatter("java.util.logging.SimpleFormatter"),
+ use_action_cache(true) {
bool testing = !blaze::GetEnv("TEST_TMPDIR").empty();
if (testing) {
output_root = MakeAbsolute(blaze::GetEnv("TEST_TMPDIR"));
@@ -83,7 +84,8 @@ StartupOptions::StartupOptions(const string &product_name,
"write_command_log",
"watchfs",
"client_debug",
- "use_custom_exit_code_on_abrupt_exit"};
+ "use_custom_exit_code_on_abrupt_exit",
+ "use_action_cache"};
unary_options = {"output_base", "install_base",
"output_user_root", "host_jvm_profile", "host_javabase",
"host_jvm_args", "bazelrc", "blazerc", "io_nice_level",
@@ -283,6 +285,12 @@ blaze_exit_code::ExitCode StartupOptions::ProcessArg(
} else if (GetNullaryOption(arg, "--nouse_custom_exit_code_on_abrupt_exit")) {
use_custom_exit_code_on_abrupt_exit = false;
option_sources["use_custom_exit_code_on_abrupt_exit"] = rcfile;
+ } else if (GetNullaryOption(arg, "--nouse_action_cache")) {
+ use_action_cache = false;
+ option_sources["use_action_cache"] = rcfile;
+ } else if (GetNullaryOption(arg, "--use_action_cache")) {
+ use_action_cache = true;
+ option_sources["use_action_cache"] = rcfile;
} else if ((value = GetUnaryOption(
arg, next_arg, "--connect_timeout_secs")) != NULL) {
if (!blaze_util::safe_strto32(value, &connect_timeout_secs) ||
diff --git a/src/main/cpp/startup_options.h b/src/main/cpp/startup_options.h
index 7bde6e769f..cddebe3825 100644
--- a/src/main/cpp/startup_options.h
+++ b/src/main/cpp/startup_options.h
@@ -215,6 +215,9 @@ class StartupOptions {
// Value of the java.util.logging.FileHandler.formatter Java property.
std::string java_logging_formatter;
+ // Whether to use the action cache.
+ bool use_action_cache;
+
protected:
// Constructor for subclasses only so that site-specific extensions of this
// class can override the product name. The product_name must be the