8061999: Enhance VM option parsing to allow options to be specified in a file

Add support for the "-XX:VMOptionsFile=<path>" option.

Reviewed-by: dcubed, gthornbr, gziemski, ddmitriev, dholmes, coleenp
This commit is contained in:
Ron Durbin 2015-09-04 14:49:20 -07:00
parent 5231fd3c51
commit be89d7204f
2 changed files with 253 additions and 39 deletions

View file

@ -373,6 +373,20 @@ class Arguments : AllStatic {
static jint parse_options_environment_variable(const char* name, ScopedVMInitArgs* vm_args);
static jint parse_java_tool_options_environment_variable(ScopedVMInitArgs* vm_args);
static jint parse_java_options_environment_variable(ScopedVMInitArgs* vm_args);
static jint parse_vm_options_file(const char* file_name, ScopedVMInitArgs* vm_args);
static jint parse_options_buffer(const char* name, char* buffer, const size_t buf_len, ScopedVMInitArgs* vm_args);
static jint insert_vm_options_file(const JavaVMInitArgs* args,
char** flags_file,
char** vm_options_file,
const int vm_options_file_pos,
ScopedVMInitArgs* vm_options_file_args,
ScopedVMInitArgs* args_out);
static jint match_special_option_and_act(const JavaVMInitArgs* args,
char** flags_file,
char** vm_options_file,
ScopedVMInitArgs* vm_options_file_args,
ScopedVMInitArgs* args_out);
static jint parse_vm_init_args(const JavaVMInitArgs *java_tool_options_args,
const JavaVMInitArgs *java_options_args,
const JavaVMInitArgs *cmd_line_args);