Convey the value of the --host_javabase startup option to the server. -- PiperOrigin-RevId: 149282686 MOS_MIGRATED_REVID=149282686
diff --git a/src/main/cpp/blaze.cc b/src/main/cpp/blaze.cc index eec8f47..5fdf5ad 100644 --- a/src/main/cpp/blaze.cc +++ b/src/main/cpp/blaze.cc
@@ -481,6 +481,11 @@ result.push_back("--use_custom_exit_code_on_abrupt_exit=false"); } + if (!globals->options->GetExplicitHostJavabase().empty()) { + result.push_back("--host_javabase=" + + globals->options->GetExplicitHostJavabase()); + } + // This is only for Blaze reporting purposes; the real interpretation of the // jvm flags occurs when we set up the java command line. if (globals->options->host_jvm_debug) {
diff --git a/src/main/cpp/startup_options.cc b/src/main/cpp/startup_options.cc index 9c1a16b..b605de3 100644 --- a/src/main/cpp/startup_options.cc +++ b/src/main/cpp/startup_options.cc
@@ -348,8 +348,17 @@ string StartupOptions::GetHostJavabase() { if (host_javabase.empty()) { - host_javabase = GetDefaultHostJavabase(); + if (default_host_javabase.empty()) { + default_host_javabase = GetDefaultHostJavabase(); + } + + return default_host_javabase; + } else { + return host_javabase; } +} + +string StartupOptions::GetExplicitHostJavabase() const { return host_javabase; }
diff --git a/src/main/cpp/startup_options.h b/src/main/cpp/startup_options.h index 7bde6e7..a931ab9 100644 --- a/src/main/cpp/startup_options.h +++ b/src/main/cpp/startup_options.h
@@ -195,6 +195,10 @@ // the --host_javabase option. std::string GetHostJavabase(); + // Returns the explicit value of the --host_javabase startup option or the + // empty string if it was not specified on the command line. + std::string GetExplicitHostJavabase() const; + // Port for gRPC command server. 0 means let the kernel choose, -1 means no // gRPC command server. int command_port; @@ -230,6 +234,7 @@ private: std::string host_javabase; + std::string default_host_javabase; }; } // namespace blaze