comparison src/share/vm/runtime/arguments.cpp @ 3546:4aa80ca3dbec

Separate compiler bootstrappath from application bootstrappath.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Sun, 14 Aug 2011 00:55:28 +0200
parents 622bbc9dafbd
children 409ef3a68dc8
comparison
equal deleted inserted replaced
3545:d8c27956ec6e 3546:4aa80ca3dbec
104 SystemProperty *Arguments::_sun_boot_library_path = NULL; 104 SystemProperty *Arguments::_sun_boot_library_path = NULL;
105 SystemProperty *Arguments::_java_library_path = NULL; 105 SystemProperty *Arguments::_java_library_path = NULL;
106 SystemProperty *Arguments::_java_home = NULL; 106 SystemProperty *Arguments::_java_home = NULL;
107 SystemProperty *Arguments::_java_class_path = NULL; 107 SystemProperty *Arguments::_java_class_path = NULL;
108 SystemProperty *Arguments::_sun_boot_class_path = NULL; 108 SystemProperty *Arguments::_sun_boot_class_path = NULL;
109 SystemProperty *Arguments::_compiler_class_path = NULL;
109 110
110 char* Arguments::_meta_index_path = NULL; 111 char* Arguments::_meta_index_path = NULL;
111 char* Arguments::_meta_index_dir = NULL; 112 char* Arguments::_meta_index_dir = NULL;
112 113
113 static bool force_client_mode = false; 114 static bool force_client_mode = false;
167 _java_endorsed_dirs = new SystemProperty("java.endorsed.dirs", NULL, true); 168 _java_endorsed_dirs = new SystemProperty("java.endorsed.dirs", NULL, true);
168 _sun_boot_library_path = new SystemProperty("sun.boot.library.path", NULL, true); 169 _sun_boot_library_path = new SystemProperty("sun.boot.library.path", NULL, true);
169 _java_library_path = new SystemProperty("java.library.path", NULL, true); 170 _java_library_path = new SystemProperty("java.library.path", NULL, true);
170 _java_home = new SystemProperty("java.home", NULL, true); 171 _java_home = new SystemProperty("java.home", NULL, true);
171 _sun_boot_class_path = new SystemProperty("sun.boot.class.path", NULL, true); 172 _sun_boot_class_path = new SystemProperty("sun.boot.class.path", NULL, true);
173 _compiler_class_path = new SystemProperty("compiler.class.path", NULL, true);
172 174
173 _java_class_path = new SystemProperty("java.class.path", "", true); 175 _java_class_path = new SystemProperty("java.class.path", "", true);
174 176
175 // Add to System Property list. 177 // Add to System Property list.
176 PropertyList_add(&_system_properties, _java_ext_dirs); 178 PropertyList_add(&_system_properties, _java_ext_dirs);
178 PropertyList_add(&_system_properties, _sun_boot_library_path); 180 PropertyList_add(&_system_properties, _sun_boot_library_path);
179 PropertyList_add(&_system_properties, _java_library_path); 181 PropertyList_add(&_system_properties, _java_library_path);
180 PropertyList_add(&_system_properties, _java_home); 182 PropertyList_add(&_system_properties, _java_home);
181 PropertyList_add(&_system_properties, _java_class_path); 183 PropertyList_add(&_system_properties, _java_class_path);
182 PropertyList_add(&_system_properties, _sun_boot_class_path); 184 PropertyList_add(&_system_properties, _sun_boot_class_path);
185 PropertyList_add(&_system_properties, _compiler_class_path);
183 186
184 // Set OS specific system properties values 187 // Set OS specific system properties values
185 os::init_system_properties_values(); 188 os::init_system_properties_values();
186 } 189 }
187 190
2013 return result; 2016 return result;
2014 } 2017 }
2015 2018
2016 if (UseGraal) { 2019 if (UseGraal) {
2017 if (PrintVMOptions) { 2020 if (PrintVMOptions) {
2018 tty->print("Running Graal VM... "); 2021 tty->print("Running Graal VM... ");
2019 } 2022 }
2020 const int BUFFER_SIZE = 1024; 2023 const int BUFFER_SIZE = 1024;
2021 char maxine_dir[BUFFER_SIZE]; 2024 char maxine_dir[BUFFER_SIZE];
2022 char temp[BUFFER_SIZE]; 2025 char temp[BUFFER_SIZE];
2023 if (!os::getenv("MAXINE", maxine_dir, sizeof(maxine_dir))) { 2026 if (!os::getenv("MAXINE", maxine_dir, sizeof(maxine_dir))) {
2024 fatal("Must set MAXINE environment variable to a Maxine project directory."); 2027 fatal("Must set MAXINE environment variable to a Maxine project directory.");
2025 } 2028 }
2026 if (PrintVMOptions) tty->print("MAXINE=%s", maxine_dir); 2029 if (PrintVMOptions) tty->print("MAXINE=%s", maxine_dir);
2030 SysClassPath scp_compiler(Arguments::get_sysclasspath());
2027 sprintf(temp, "%s/com.oracle.max.cri/bin", maxine_dir); 2031 sprintf(temp, "%s/com.oracle.max.cri/bin", maxine_dir);
2028 scp.add_prefix(temp); 2032 scp_compiler.add_prefix(temp);
2029 sprintf(temp, "%s/com.oracle.max.base/bin", maxine_dir); 2033 sprintf(temp, "%s/com.oracle.max.base/bin", maxine_dir);
2030 scp.add_prefix(temp); 2034 scp_compiler.add_prefix(temp);
2031 sprintf(temp, "%s/com.oracle.max.asmdis/bin", maxine_dir); 2035 sprintf(temp, "%s/com.oracle.max.asmdis/bin", maxine_dir);
2032 scp.add_prefix(temp); 2036 scp_compiler.add_prefix(temp);
2033 sprintf(temp, "%s/com.oracle.max.asm/bin", maxine_dir); 2037 sprintf(temp, "%s/com.oracle.max.asm/bin", maxine_dir);
2034 scp.add_prefix(temp); 2038 scp_compiler.add_prefix(temp);
2035 sprintf(temp, "%s/com.oracle.max.graal.graph/bin", maxine_dir); 2039 sprintf(temp, "%s/com.oracle.max.graal.graph/bin", maxine_dir);
2036 scp.add_prefix(temp); 2040 scp_compiler.add_prefix(temp);
2037 sprintf(temp, "%s/com.oracle.max.graal.compiler/bin", maxine_dir); 2041 sprintf(temp, "%s/com.oracle.max.graal.compiler/bin", maxine_dir);
2038 scp.add_prefix(temp); 2042 scp_compiler.add_prefix(temp);
2039 sprintf(temp, "%s/com.oracle.max.graal.nodes/bin", maxine_dir); 2043 sprintf(temp, "%s/com.oracle.max.graal.nodes/bin", maxine_dir);
2040 scp.add_prefix(temp); 2044 scp_compiler.add_prefix(temp);
2041 sprintf(temp, "%s/com.oracle.max.graal.extensions/bin", maxine_dir); 2045 sprintf(temp, "%s/com.oracle.max.graal.extensions/bin", maxine_dir);
2042 scp.add_prefix(temp); 2046 scp_compiler.add_prefix(temp);
2043 sprintf(temp, "%s/com.oracle.max.graal.runtime/bin", maxine_dir); 2047 sprintf(temp, "%s/com.oracle.max.graal.runtime/bin", maxine_dir);
2044 scp.add_prefix(temp); 2048 scp_compiler.add_prefix(temp);
2045 sprintf(temp, "%s/com.oracle.max.graal.graphviz/bin", maxine_dir); 2049 sprintf(temp, "%s/com.oracle.max.graal.graphviz/bin", maxine_dir);
2046 scp.add_prefix(temp); 2050 scp_compiler.add_prefix(temp);
2047 scp_assembly_required = true; 2051 scp_compiler.expand_endorsed();
2052 Arguments::set_compilerclasspath(scp_compiler.combined_path());
2048 } 2053 }
2049 2054
2050 if (AggressiveOpts) { 2055 if (AggressiveOpts) {
2051 // Insert alt-rt.jar between user-specified bootclasspath 2056 // Insert alt-rt.jar between user-specified bootclasspath
2052 // prefix and the default bootclasspath. os::set_boot_path() 2057 // prefix and the default bootclasspath. os::set_boot_path()