--- a/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
c51754cddc037b9609e202b9ed38363d8683e7a8 jdk8-b27
16ba58282d117247f480aae7a79b88141ade52a3 jdk8-b28
e070119aa56ee4dc5506c19d2c4d2eecab8ad429 jdk8-b29
+23da7804aca0c9c4e6e86532a1453125a76d95ee jdk8-b30
--- a/.hgtags-top-repo Tue Mar 20 13:10:13 2012 -0700
+++ b/.hgtags-top-repo Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
1533dfab9903e4edcfead3b0192643f38c418b9b jdk8-b27
6e2541d60f4e342b5b67140271d7611643929dc3 jdk8-b28
41460de042580bc4a4ce3f863779c66f39cb8578 jdk8-b29
+6cea54809b51db92979c22fd8aa8fcb1cb13d12e jdk8-b30
--- a/corba/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/corba/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
4fffe75e4edd39a2517f10b743941bf94edb143d jdk8-b27
2082eb35d49a9c2aab90b8d4fd31cefb7a23b82e jdk8-b28
6117395d422682f89d228347e319fcaac7edc729 jdk8-b29
+4605f8418bf562e78be79b25b6b8a5110281acae jdk8-b30
--- a/corba/make/common/internal/Resources.gmk Tue Mar 20 13:10:13 2012 -0700
+++ b/corba/make/common/internal/Resources.gmk Thu Mar 22 13:54:26 2012 -0700
@@ -149,8 +149,8 @@
# Strip the properties files
strip_all_props: $(STRIPPROPERTIES_JARFILE) $(STRIP_PROP_options)
@if [ -s $(STRIP_PROP_options) ] ; then \
- $(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options)" ; \
- $(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options) ; \
+ $(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options)" ; \
+ $(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options) ; \
fi
@$(java-vm-cleanup)
--- a/corba/make/tools/src/build/tools/stripproperties/StripProperties.java Tue Mar 20 13:10:13 2012 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,280 +0,0 @@
-/*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package build.tools.stripproperties;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedWriter;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Properties;
-
-/**
- * Reads a properties file from standard input and writes an equivalent
- * properties file without comments to standard output.
- */
-public class StripProperties {
-
- private static void error(String msg, Exception e) {
- System.err.println("ERROR: stripproperties: " + msg);
- if ( e != null ) {
- System.err.println("EXCEPTION: " + e.toString());
- e.printStackTrace();
- }
- }
-
- private static List<String> parseOptions(String args[]) {
- List<String> files = new ArrayList<String>();
- for ( int i = 0; i < args.length ; i++ ) {
- if ( "-optionsfile".equals(args[i]) && i+1 < args.length ) {
- String filename = args[++i];
- FileInputStream finput = null;
- byte contents[] = null;
- try {
- finput = new FileInputStream(filename);
- int byteCount = finput.available();
- if ( byteCount <= 0 ) {
- error("The -optionsfile file is empty", null);
- files = null;
- } else {
- contents = new byte[byteCount];
- int bytesRead = finput.read(contents);
- if ( byteCount != bytesRead ) {
- error("Cannot read all of -optionsfile file", null);
- files = null;
- }
- }
- } catch ( IOException e ) {
- error("cannot open " + filename, e);
- files = null;
- }
- if ( finput != null ) {
- try {
- finput.close();
- } catch ( IOException e ) {
- files = null;
- error("cannot close " + filename, e);
- }
- }
- if ( files != null && contents != null ) {
- String tokens[] = (new String(contents)).split("\\s+");
- if ( tokens.length > 0 ) {
- List<String> ofiles = parseOptions(tokens);
- if ( ofiles != null ) {
- files.addAll(ofiles);
- } else {
- error("No files found in file", null);
- files = null;
- }
- }
- }
- if ( files == null ) {
- break;
- }
- } else {
- files.add(args[i]);
- }
- }
- return files;
- }
-
- private static boolean stripFiles(List<String> files) {
- boolean ok = true;
- for ( String file : files ) {
-
- Properties prop = new Properties();
- InputStream in = null;
- try {
- in = new BufferedInputStream(new FileInputStream(file));
- prop.load(in);
- } catch ( FileNotFoundException e ) {
- error("Cannot access file " + file, e);
- ok = false;
- } catch ( IOException e ) {
- error("IO exception processing file " + file, e);
- ok = false;
- }
- if ( in != null ) {
- try {
- in.close();
- } catch ( IOException e ) {
- error("IO exception closing file " + file, e);
- ok = false;
- }
- }
- if ( !ok ) {
- break;
- }
-
- OutputStream out = null;
- try {
- out = new FileOutputStream(file);
- storeProperties(prop, out);
- out.flush();
- } catch ( IOException e ) {
- error("IO exception processing file " + file, e);
- ok = false;
- }
- if ( out != null ) {
- try {
- out.close();
- } catch ( IOException e ) {
- error("IO exception closing file " + file, e);
- ok = false;
- }
- }
- if ( !ok ) {
- break;
- }
-
- }
- return ok;
- }
-
- /**
- * Strip the properties filenames supplied, replacing their contents.
- * @param args Names of properties files to process and replace contents
- */
- public static void main(String args[]) {
- List<String> files = parseOptions(args);
- if ( files == null || !stripFiles(files) ) {
- System.exit(1);
- }
- }
-
- // --- code below here is adapted from java.util.Properties ---
-
- private static final String specialSaveChars = "=: \t\r\n\f#!";
-
- /*
- * Converts unicodes to encoded \uxxxx
- * and writes out any of the characters in specialSaveChars
- * with a preceding slash
- */
- private static String saveConvert(String theString, boolean escapeSpace) {
- int len = theString.length();
- StringBuffer outBuffer = new StringBuffer(len*2);
-
- for(int x=0; x<len; x++) {
- char aChar = theString.charAt(x);
- switch(aChar) {
- case ' ':
- if (x == 0 || escapeSpace) {
- outBuffer.append('\\');
- }
- outBuffer.append(' ');
- break;
- case '\\':
- outBuffer.append('\\');
- outBuffer.append('\\');
- break;
- case '\t':
- outBuffer.append('\\');
- outBuffer.append('t');
- break;
- case '\n':
- outBuffer.append('\\');
- outBuffer.append('n');
- break;
- case '\r':
- outBuffer.append('\\');
- outBuffer.append('r');
- break;
- case '\f':
- outBuffer.append('\\');
- outBuffer.append('f');
- break;
- default:
- if ((aChar < 0x0020) || (aChar == 0x007e) || (aChar > 0x00ff)) {
- outBuffer.append('\\');
- outBuffer.append('u');
- outBuffer.append(toHex((aChar >> 12) & 0xF));
- outBuffer.append(toHex((aChar >> 8) & 0xF));
- outBuffer.append(toHex((aChar >> 4) & 0xF));
- outBuffer.append(toHex( aChar & 0xF));
- } else {
- if (specialSaveChars.indexOf(aChar) != -1) {
- outBuffer.append('\\');
- }
- outBuffer.append(aChar);
- }
- }
- }
- return outBuffer.toString();
- }
-
- /**
- * Writes the content of <code>properties</code> to <code>out</code>.
- * The format is that of Properties.store with the following modifications:
- * <ul>
- * <li>No header or date is written
- * <li>Latin-1 characters are written as single bytes, not escape sequences
- * <li>Line breaks are indicated by a single \n independent of platform
- * <ul>
- */
- private static void storeProperties(Properties properties, OutputStream out)
- throws IOException {
- BufferedWriter awriter;
- awriter = new BufferedWriter(new OutputStreamWriter(out, "8859_1"));
- for (Enumeration e = properties.keys(); e.hasMoreElements();) {
- String key = (String)e.nextElement();
- String val = (String)properties.get(key);
- key = saveConvert(key, true);
-
- /* No need to escape embedded and trailing spaces for value, hence
- * pass false to flag.
- */
- val = saveConvert(val, false);
- writeln(awriter, key + "=" + val);
- }
- awriter.flush();
- }
-
- private static void writeln(BufferedWriter bw, String s) throws IOException {
- bw.write(s);
- bw.write("\n");
- }
-
- /**
- * Convert a nibble to a hex character
- * @param nibble the nibble to convert.
- */
- private static char toHex(int nibble) {
- return hexDigit[(nibble & 0xF)];
- }
-
- /** A table of hex digits */
- private static final char[] hexDigit = {
- '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
- };
-}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/corba/make/tools/src/build/tools/stripproperties/StripPropertiesCorba.java Thu Mar 22 13:54:26 2012 -0700
@@ -0,0 +1,288 @@
+/*
+ * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package build.tools.stripproperties;
+
+import java.io.BufferedInputStream;
+import java.io.BufferedWriter;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.OutputStream;
+import java.io.OutputStreamWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Properties;
+
+/**
+ * Reads a properties file from standard input and writes an equivalent
+ * properties file without comments to standard output.
+ */
+public class StripPropertiesCorba {
+
+ private static void error(String msg, Exception e) {
+ System.err.println("ERROR: stripproperties: " + msg);
+ if ( e != null ) {
+ System.err.println("EXCEPTION: " + e.toString());
+ e.printStackTrace();
+ }
+ }
+
+ private static List<String> infiles = new ArrayList<String>();
+ private static List<String> outfiles = new ArrayList<String>();
+
+ private static boolean parseOptions(String args[]) {
+ boolean ok = true;
+
+ for ( int i = 0; i < args.length ; i++ ) {
+ if ( "-clean".equals(args[i]) && i+2 < args.length ) {
+ infiles.add(args[++i]);
+ outfiles.add(args[++i]);
+ } else if ( args[i].charAt(0)=='@') {
+ String filename = args[i].substring(1);
+ FileInputStream finput = null;
+ byte contents[] = null;
+ try {
+ finput = new FileInputStream(filename);
+ int byteCount = finput.available();
+ if ( byteCount <= 0 ) {
+ error("The @file is empty", null);
+ ok = false;
+ } else {
+ contents = new byte[byteCount];
+ int bytesRead = finput.read(contents);
+ if ( byteCount != bytesRead ) {
+ error("Cannot read all of @file", null);
+ ok = false;
+ }
+ }
+ } catch ( IOException e ) {
+ error("cannot open " + filename, e);
+ ok = false;
+ }
+ if ( finput != null ) {
+ try {
+ finput.close();
+ } catch ( IOException e ) {
+ ok = false;
+ error("cannot close " + filename, e);
+ }
+ }
+ if ( ok && contents != null ) {
+ String tokens[] = (new String(contents)).split("\\s+");
+ if ( tokens.length > 0 ) {
+ ok = parseOptions(tokens);
+ }
+ }
+ if ( !ok ) {
+ break;
+ }
+ } else {
+ infiles.add(args[i]);
+ outfiles.add(args[i]);
+ }
+ }
+ return ok;
+ }
+
+ private static boolean stripFiles(List<String> infiles, List<String> outfiles) {
+ boolean ok = true;
+ Iterator<String> inIter = infiles.iterator();
+ Iterator<String> outIter = outfiles.iterator();
+
+ for (; inIter.hasNext(); ) {
+ String infile = inIter.next();
+ String outfile = outIter.next();
+
+ Properties prop = new Properties();
+ InputStream in = null;
+ try {
+ in = new BufferedInputStream(new FileInputStream(infile));
+ prop.load(in);
+ } catch ( FileNotFoundException e ) {
+ error("Cannot access file " + infile, e);
+ ok = false;
+ } catch ( IOException e ) {
+ error("IO exception processing file " + infile, e);
+ ok = false;
+ }
+ if ( in != null ) {
+ try {
+ in.close();
+ } catch ( IOException e ) {
+ error("IO exception closing file " + infile, e);
+ ok = false;
+ }
+ }
+ if ( !ok ) {
+ break;
+ }
+
+ OutputStream out = null;
+ try {
+ out = new FileOutputStream(outfile);
+ storeProperties(prop, out);
+ out.flush();
+ } catch ( IOException e ) {
+ error("IO exception processing file " + outfile, e);
+ ok = false;
+ }
+ if ( out != null ) {
+ try {
+ out.close();
+ } catch ( IOException e ) {
+ error("IO exception closing file " + outfile, e);
+ ok = false;
+ }
+ }
+ if ( !ok ) {
+ break;
+ }
+
+ }
+ return ok;
+ }
+
+ /**
+ * Strip the properties filenames supplied, replacing their contents.
+ * @param args Names of properties files to process and replace contents
+ */
+ public static void main(String args[]) {
+ boolean ok = parseOptions(args);
+ if ( !ok || !stripFiles(infiles, outfiles) ) {
+ System.exit(1);
+ }
+ }
+
+ // --- code below here is adapted from java.util.Properties ---
+
+ private static final String specialSaveChars = "=: \t\r\n\f#!";
+
+ /*
+ * Converts unicodes to encoded \uxxxx
+ * and writes out any of the characters in specialSaveChars
+ * with a preceding slash
+ */
+ private static String saveConvert(String theString, boolean escapeSpace) {
+ int len = theString.length();
+ StringBuffer outBuffer = new StringBuffer(len*2);
+
+ for(int x=0; x<len; x++) {
+ char aChar = theString.charAt(x);
+ switch(aChar) {
+ case ' ':
+ if (x == 0 || escapeSpace) {
+ outBuffer.append('\\');
+ }
+ outBuffer.append(' ');
+ break;
+ case '\\':
+ outBuffer.append('\\');
+ outBuffer.append('\\');
+ break;
+ case '\t':
+ outBuffer.append('\\');
+ outBuffer.append('t');
+ break;
+ case '\n':
+ outBuffer.append('\\');
+ outBuffer.append('n');
+ break;
+ case '\r':
+ outBuffer.append('\\');
+ outBuffer.append('r');
+ break;
+ case '\f':
+ outBuffer.append('\\');
+ outBuffer.append('f');
+ break;
+ default:
+ if ((aChar < 0x0020) || (aChar == 0x007e) || (aChar > 0x00ff)) {
+ outBuffer.append('\\');
+ outBuffer.append('u');
+ outBuffer.append(toHex((aChar >> 12) & 0xF));
+ outBuffer.append(toHex((aChar >> 8) & 0xF));
+ outBuffer.append(toHex((aChar >> 4) & 0xF));
+ outBuffer.append(toHex( aChar & 0xF));
+ } else {
+ if (specialSaveChars.indexOf(aChar) != -1) {
+ outBuffer.append('\\');
+ }
+ outBuffer.append(aChar);
+ }
+ }
+ }
+ return outBuffer.toString();
+ }
+
+ /**
+ * Writes the content of <code>properties</code> to <code>out</code>.
+ * The format is that of Properties.store with the following modifications:
+ * <ul>
+ * <li>No header or date is written
+ * <li>Latin-1 characters are written as single bytes, not escape sequences
+ * <li>Line breaks are indicated by a single \n independent of platform
+ * <ul>
+ */
+ private static void storeProperties(Properties properties, OutputStream out)
+ throws IOException {
+ BufferedWriter awriter;
+ awriter = new BufferedWriter(new OutputStreamWriter(out, "8859_1"));
+ for (Enumeration<Object> e = properties.keys(); e.hasMoreElements();) {
+ String key = (String)e.nextElement();
+ String val = (String)properties.get(key);
+ key = saveConvert(key, true);
+
+ /* No need to escape embedded and trailing spaces for value, hence
+ * pass false to flag.
+ */
+ val = saveConvert(val, false);
+ writeln(awriter, key + "=" + val);
+ }
+ awriter.flush();
+ }
+
+ private static void writeln(BufferedWriter bw, String s) throws IOException {
+ bw.write(s);
+ bw.write("\n");
+ }
+
+ /**
+ * Convert a nibble to a hex character
+ * @param nibble the nibble to convert.
+ */
+ private static char toHex(int nibble) {
+ return hexDigit[(nibble & 0xF)];
+ }
+
+ /** A table of hex digits */
+ private static final char[] hexDigit = {
+ '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
+ };
+}
--- a/corba/make/tools/strip_properties/Makefile Tue Mar 20 13:10:13 2012 -0700
+++ b/corba/make/tools/strip_properties/Makefile Thu Mar 22 13:54:26 2012 -0700
@@ -34,7 +34,7 @@
include $(BUILDDIR)/common/Defs.gmk
BUILDTOOL_SOURCE_ROOT = $(BUILDDIR)/tools/src
-BUILDTOOL_MAIN = $(PKGDIR)/StripProperties.java
+BUILDTOOL_MAIN = $(PKGDIR)/StripPropertiesCorba.java
#
# Build tool jar rules.
--- a/hotspot/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -229,4 +229,6 @@
b183b0863611b85dbac16f3b08b40ba978756d19 jdk8-b28
030b5306d60f140e822e4a6d301744cb110ff0c8 hs24-b02
b45b5c564098c58ea69e7cff3f7d341f0254dd1d jdk8-b29
+d61761bf305031c94f7f8eca49abd978b7d3c5da jdk8-b30
dfae0140457cfb2c381d7679735fbedbae862c62 hs24-b03
+f4767e53d6e0d5da7e3f1775904076cce54247c1 hs24-b04
--- a/hotspot/make/Makefile Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/Makefile Thu Mar 22 13:54:26 2012 -0700
@@ -271,23 +271,25 @@
ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR)
SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR)
-# Misc files and generated files need to come from C1 or C2 area
-ifeq ($(ZERO_BUILD), true)
-ifeq ($(SHARK_BUILD), true)
- MISC_DIR=$(SHARK_DIR)
- GEN_DIR=$(SHARK_BASE_DIR)/generated
-else
- MISC_DIR=$(ZERO_DIR)
- GEN_DIR=$(ZERO_BASE_DIR)/generated
+ifeq ($(JVM_VARIANT_SERVER), true)
+ MISC_DIR=$(C2_DIR)
+ GEN_DIR=$(C2_BASE_DIR)/generated
+endif
+ifeq ($(JVM_VARIANT_CLIENT), true)
+ MISC_DIR=$(C1_DIR)
+ GEN_DIR=$(C1_BASE_DIR)/generated
endif
-else
-ifeq ($(ARCH_DATA_MODEL), 32)
- MISC_DIR=$(C1_DIR)
- GEN_DIR=$(C1_BASE_DIR)/generated
-else
- MISC_DIR=$(C2_DIR)
- GEN_DIR=$(C2_BASE_DIR)/generated
+ifeq ($(JVM_VARIANT_KERNEL), true)
+ MISC_DIR=$(C2_DIR)
+ GEN_DIR=$(C2_BASE_DIR)/generated
endif
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+ MISC_DIR=$(SHARK_DIR)
+ GEN_DIR=$(SHARK_BASE_DIR)/generated
+endif
+ifeq ($(JVM_VARIANT_ZERO), true)
+ MISC_DIR=$(ZERO_DIR)
+ GEN_DIR=$(ZERO_BASE_DIR)/generated
endif
# Bin files (windows)
@@ -332,46 +334,46 @@
# Shared Library
ifneq ($(OSNAME),windows)
- ifeq ($(ZERO_BUILD), true)
- ifeq ($(SHARK_BUILD), true)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
- else
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
+ ifeq ($(JVM_VARIANT_SERVER), true)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_DIR)/%.debuginfo
+ $(install-file)
endif
- else
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-
-# Debug info for shared library
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_DIR)/%.debuginfo
- $(install-file)
- endif
+ ifeq ($(JVM_VARIANT_CLIENT), true)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
+ $(install-file)
+ $(EXPORT_CLIENT_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
+ $(install-file)
+ $(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_DIR)/%.debuginfo
+ $(install-file)
+ endif
+ ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ endif
+ ifeq ($(JVM_VARIANT_ZERO), true)
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
+ $(install-file)
+ endif
endif
# Jar file (sa-jdi.jar)
@@ -450,18 +452,19 @@
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
test_jdk:
- ifeq ($(ARCH_DATA_MODEL), 32)
- ifneq ($(ZERO_BUILD), true)
- $(JDK_IMAGE_DIR)/bin/java -d32 -client -Xinternalversion
- $(JDK_IMAGE_DIR)/bin/java -d32 -client -version
- endif
- $(JDK_IMAGE_DIR)/bin/java -d32 -server -Xinternalversion
- $(JDK_IMAGE_DIR)/bin/java -d32 -server -version
- endif
- ifeq ($(ARCH_DATA_MODEL), 64)
- $(JDK_IMAGE_DIR)/bin/java -d64 -server -Xinternalversion
- $(JDK_IMAGE_DIR)/bin/java -d64 -server -version
- endif
+ ifeq ($(JVM_VARIANT_CLIENT), true)
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -Xinternalversion
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -version
+ endif
+ ifeq ($(findstring true, $(JVM_VARIANT_SERVER)\
+ $(JVM_VARIANT_ZERO)$(JVM_VARIANT_ZEROSHARK)), true)
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -Xinternalversion
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -version
+ endif
+ ifeq ($(JVM_VARIANT_KERNEL), true)
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -kernel -Xinternalversion
+ $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -kernel -version
+ endif
copy_product_jdk::
$(RM) -r $(JDK_IMAGE_DIR)
--- a/hotspot/make/bsd/Makefile Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/bsd/Makefile Thu Mar 22 13:54:26 2012 -0700
@@ -188,7 +188,7 @@
# in the build.sh script:
TARGETS = debug jvmg fastdebug optimized profiled product
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
else
SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
--- a/hotspot/make/bsd/makefiles/buildtree.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/bsd/makefiles/buildtree.make Thu Mar 22 13:54:26 2012 -0700
@@ -69,7 +69,7 @@
# For now, until the compiler is less wobbly:
TESTFLAGS = -Xbatch -showversion
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
else
ifdef USE_SUNCC
--- a/hotspot/make/bsd/makefiles/defs.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/bsd/makefiles/defs.make Thu Mar 22 13:54:26 2012 -0700
@@ -38,7 +38,7 @@
endif
# zero
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
ifeq ($(ARCH_DATA_MODEL), 64)
MAKE_ARGS += LP64=1
endif
@@ -124,6 +124,18 @@
HS_ARCH = ppc
endif
+# On 32 bit bsd we build server and client, on 64 bit just server.
+ifeq ($(JVM_VARIANTS),)
+ ifeq ($(ARCH_DATA_MODEL), 32)
+ JVM_VARIANTS:=client,server
+ JVM_VARIANT_CLIENT:=true
+ JVM_VARIANT_SERVER:=true
+ else
+ JVM_VARIANTS:=server
+ JVM_VARIANT_SERVER:=true
+ endif
+endif
+
JDK_INCLUDE_SUBDIR=bsd
# Library suffix
@@ -146,16 +158,14 @@
EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/wb.jar
-ifndef BUILD_CLIENT_ONLY
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
+ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
endif
-ifneq ($(ZERO_BUILD), true)
- ifeq ($(ARCH_DATA_MODEL), 32)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
- endif
+ifeq ($(JVM_VARIANT_CLIENT),true)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
endif
# Serviceability Binaries
--- a/hotspot/make/bsd/makefiles/gcc.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/bsd/makefiles/gcc.make Thu Mar 22 13:54:26 2012 -0700
@@ -105,11 +105,12 @@
VM_PICFLAG/AOUT =
VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-ifeq ($(ZERO_BUILD), true)
-CFLAGS += $(LIBFFI_CFLAGS)
+ifeq ($(JVM_VARIANT_ZERO), true)
+ CFLAGS += $(LIBFFI_CFLAGS)
endif
-ifeq ($(SHARK_BUILD), true)
-CFLAGS += $(LLVM_CFLAGS)
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+ CFLAGS += $(LIBFFI_CFLAGS)
+ CFLAGS += $(LLVM_CFLAGS)
endif
CFLAGS += $(VM_PICFLAG)
CFLAGS += -fno-rtti
--- a/hotspot/make/bsd/makefiles/vm.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/bsd/makefiles/vm.make Thu Mar 22 13:54:26 2012 -0700
@@ -42,7 +42,7 @@
-include $(DEP_DIR)/*.d
# read machine-specific adjustments (%%% should do this via buildtree.make?)
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
include $(MAKEFILES_DIR)/zeroshark.make
else
include $(MAKEFILES_DIR)/$(BUILDARCH).make
@@ -271,12 +271,12 @@
LIBS_VM += $(LIBS)
endif
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(JVM_VARIANT_ZERO), true)
LIBS_VM += $(LIBFFI_LIBS)
endif
-ifeq ($(SHARK_BUILD), true)
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+ LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS)
LFLAGS_VM += $(LLVM_LDFLAGS)
- LIBS_VM += $(LLVM_LIBS)
endif
--- a/hotspot/make/defs.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/defs.make Thu Mar 22 13:54:26 2012 -0700
@@ -55,6 +55,27 @@
@$(RM) $@
endef
+# Default values for JVM_VARIANT* variables if configure hasn't set
+# it already.
+ifeq ($(JVM_VARIANTS),)
+ ifeq ($(ZERO_BUILD), true)
+ ifeq ($(SHARK_BUILD), true)
+ JVM_VARIANTS:=zeroshark
+ JVM_VARIANT_ZEROSHARK:=true
+ else
+ JVM_VARIANTS:=zero
+ JVM_VARIANT_ZERO:=true
+ endif
+ else
+ # A default is needed
+ ifeq ($(BUILD_CLIENT_ONLY), true)
+ JVM_VARIANTS:=client
+ JVM_VARIANT_CLIENT:=true
+ endif
+ # Further defaults are platform and arch specific
+ endif
+endif
+
# Directory paths and user name
# Unless GAMMADIR is set on the command line, search upward from
# the current directory for a parent directory containing "src/share/vm".
--- a/hotspot/make/hotspot_version Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/hotspot_version Thu Mar 22 13:54:26 2012 -0700
@@ -35,7 +35,7 @@
HS_MAJOR_VER=24
HS_MINOR_VER=0
-HS_BUILD_NUMBER=04
+HS_BUILD_NUMBER=05
JDK_MAJOR_VER=1
JDK_MINOR_VER=8
--- a/hotspot/make/linux/Makefile Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/linux/Makefile Thu Mar 22 13:54:26 2012 -0700
@@ -188,7 +188,7 @@
# in the build.sh script:
TARGETS = debug jvmg fastdebug optimized profiled product
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
else
SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
--- a/hotspot/make/linux/makefiles/buildtree.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/linux/makefiles/buildtree.make Thu Mar 22 13:54:26 2012 -0700
@@ -66,7 +66,7 @@
# For now, until the compiler is less wobbly:
TESTFLAGS = -Xbatch -showversion
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
else
ifdef USE_SUNCC
--- a/hotspot/make/linux/makefiles/defs.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/linux/makefiles/defs.make Thu Mar 22 13:54:26 2012 -0700
@@ -38,7 +38,7 @@
endif
# zero
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
ifeq ($(ARCH_DATA_MODEL), 64)
MAKE_ARGS += LP64=1
endif
@@ -114,6 +114,18 @@
HS_ARCH = ppc
endif
+# On 32 bit linux we build server and client, on 64 bit just server.
+ifeq ($(JVM_VARIANTS),)
+ ifeq ($(ARCH_DATA_MODEL), 32)
+ JVM_VARIANTS:=client,server
+ JVM_VARIANT_CLIENT:=true
+ JVM_VARIANT_SERVER:=true
+ else
+ JVM_VARIANTS:=server
+ JVM_VARIANT_SERVER:=true
+ endif
+endif
+
# determine if HotSpot is being built in JDK6 or earlier version
JDK6_OR_EARLIER=0
ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1"
@@ -195,22 +207,20 @@
EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/wb.jar
-ifndef BUILD_CLIENT_ONLY
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
+ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
ifneq ($(OBJCOPY),)
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
endif
endif
-ifneq ($(ZERO_BUILD), true)
- ifeq ($(ARCH_DATA_MODEL), 32)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifneq ($(OBJCOPY),)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
- endif
- endif
+ifeq ($(JVM_VARIANT_CLIENT),true)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
+ ifneq ($(OBJCOPY),)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
+ endif
endif
# Serviceability Binaries
--- a/hotspot/make/linux/makefiles/gcc.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/linux/makefiles/gcc.make Thu Mar 22 13:54:26 2012 -0700
@@ -72,10 +72,11 @@
VM_PICFLAG/AOUT =
VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(JVM_VARIANT_ZERO), true)
CFLAGS += $(LIBFFI_CFLAGS)
endif
-ifeq ($(SHARK_BUILD), true)
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+CFLAGS += $(LIBFFI_CFLAGS)
CFLAGS += $(LLVM_CFLAGS)
endif
CFLAGS += $(VM_PICFLAG)
--- a/hotspot/make/linux/makefiles/vm.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/linux/makefiles/vm.make Thu Mar 22 13:54:26 2012 -0700
@@ -42,7 +42,7 @@
-include $(DEP_DIR)/*.d
# read machine-specific adjustments (%%% should do this via buildtree.make?)
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
include $(MAKEFILES_DIR)/zeroshark.make
else
include $(MAKEFILES_DIR)/$(BUILDARCH).make
@@ -236,7 +236,7 @@
vm.def: $(Res_Files) $(Obj_Files)
sh $(GAMMADIR)/make/linux/makefiles/build_vm_def.sh *.o > $@
-ifeq ($(SHARK_BUILD), true)
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
STATIC_CXX = false
else
ifeq ($(ZERO_LIBARCH), ppc64)
@@ -268,12 +268,12 @@
LIBS_VM += $(LIBS)
endif
-ifeq ($(ZERO_BUILD), true)
+ifeq ($(JVM_VARIANT_ZERO), true)
LIBS_VM += $(LIBFFI_LIBS)
endif
-ifeq ($(SHARK_BUILD), true)
+ifeq ($(JVM_VARIANT_ZEROSHARK), true)
+ LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS)
LFLAGS_VM += $(LLVM_LDFLAGS)
- LIBS_VM += $(LLVM_LIBS)
endif
LINK_VM = $(LINK_LIB.CC)
--- a/hotspot/make/solaris/makefiles/defs.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/solaris/makefiles/defs.make Thu Mar 22 13:54:26 2012 -0700
@@ -59,6 +59,18 @@
endif
endif
+# On 32 bit solaris we build server and client, on 64 bit just server.
+ifeq ($(JVM_VARIANTS),)
+ ifeq ($(ARCH_DATA_MODEL), 32)
+ JVM_VARIANTS:=client,server
+ JVM_VARIANT_CLIENT:=true
+ JVM_VARIANT_SERVER:=true
+ else
+ JVM_VARIANTS:=server
+ JVM_VARIANT_SERVER:=true
+ endif
+endif
+
# determine if HotSpot is being built in JDK6 or earlier version
JDK6_OR_EARLIER=0
ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1"
@@ -153,37 +165,37 @@
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
-ifneq ($(BUILD_CLIENT_ONLY),true)
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.$(LIBRARY_SUFFIX)
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.$(LIBRARY_SUFFIX)
+ifeq ($(JVM_VARIANT_SERVER),true)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.$(LIBRARY_SUFFIX)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.$(LIBRARY_SUFFIX)
+ ifeq ($(ARCH_DATA_MODEL),32)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
+ endif
ifneq ($(OBJCOPY),)
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.debuginfo
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.debuginfo
endif
endif
-ifeq ($(ARCH_DATA_MODEL), 32)
+ifeq ($(JVM_VARIANT_CLIENT),true)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.$(LIBRARY_SUFFIX)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_dtrace.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
+ ifeq ($(ARCH_DATA_MODEL),32)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
+ endif
ifneq ($(OBJCOPY),)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.debuginfo
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_dtrace.debuginfo
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.debuginfo
- endif
- ifneq ($(BUILD_CLIENT_ONLY), true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
- ifneq ($(OBJCOPY),)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.debuginfo
+ ifeq ($(ARCH_DATA_MODEL),32)
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.debuginfo
+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.debuginfo
endif
endif
endif
--- a/hotspot/make/windows/makefiles/defs.make Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/make/windows/makefiles/defs.make Thu Mar 22 13:54:26 2012 -0700
@@ -107,6 +107,19 @@
endif
endif
+# On 32 bit windows we build server, client and kernel, on 64 bit just server.
+ifeq ($(JVM_VARIANTS),)
+ ifeq ($(ARCH_DATA_MODEL), 32)
+ JVM_VARIANTS:=client,server,kernel
+ JVM_VARIANT_CLIENT:=true
+ JVM_VARIANT_SERVER:=true
+ JVM_VARIANT_KERNEL:=true
+ else
+ JVM_VARIANTS:=server
+ JVM_VARIANT_SERVER:=true
+ endif
+endif
+
JDK_INCLUDE_SUBDIR=win32
# Library suffix
@@ -177,17 +190,20 @@
EXPORT_CLIENT_DIR = $(EXPORT_JRE_BIN_DIR)/client
EXPORT_KERNEL_DIR = $(EXPORT_JRE_BIN_DIR)/kernel
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.$(LIBRARY_SUFFIX)
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.pdb
-EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.map
-EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib
-ifeq ($(ARCH_DATA_MODEL), 32)
+ifeq ($(JVM_VARIANT_SERVER),true)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.$(LIBRARY_SUFFIX)
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.pdb
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.map
+ EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib
+endif
+ifeq ($(JVM_VARIANT_CLIENT),true)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.$(LIBRARY_SUFFIX)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.pdb
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.map
- # kernel vm
+endif
+ifeq ($(JVM_VARIANT_KERNEL),true)
EXPORT_LIST += $(EXPORT_KERNEL_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_KERNEL_DIR)/jvm.$(LIBRARY_SUFFIX)
EXPORT_LIST += $(EXPORT_KERNEL_DIR)/jvm.pdb
--- a/hotspot/src/os/bsd/vm/attachListener_bsd.cpp Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/src/os/bsd/vm/attachListener_bsd.cpp Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -206,10 +206,15 @@
// put in listen mode, set permissions, and rename into place
res = ::listen(listener, 5);
if (res == 0) {
- RESTARTABLE(::chmod(initial_path, S_IREAD|S_IWRITE), res);
+ RESTARTABLE(::chmod(initial_path, S_IREAD|S_IWRITE), res);
+ if (res == 0) {
+ // make sure the file is owned by the effective user and effective group
+ // (this is the default on linux, but not on mac os)
+ RESTARTABLE(::chown(initial_path, geteuid(), getegid()), res);
if (res == 0) {
- res = ::rename(initial_path, path);
+ res = ::rename(initial_path, path);
}
+ }
}
if (res == -1) {
RESTARTABLE(::close(listener), res);
--- a/hotspot/src/share/vm/runtime/arguments.cpp Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/src/share/vm/runtime/arguments.cpp Thu Mar 22 13:54:26 2012 -0700
@@ -816,8 +816,21 @@
return true;
}
- jio_fprintf(defaultStream::error_stream(),
- "Unrecognized VM option '%s'\n", argname);
+ // For locked flags, report a custom error message if available.
+ // Otherwise, report the standard unrecognized VM option.
+
+ Flag* locked_flag = Flag::find_flag((char*)argname, strlen(argname), true);
+ if (locked_flag != NULL) {
+ char locked_message_buf[BUFLEN];
+ locked_flag->get_locked_message(locked_message_buf, BUFLEN);
+ if (strlen(locked_message_buf) == 0) {
+ jio_fprintf(defaultStream::error_stream(),
+ "Unrecognized VM option '%s'\n", argname);
+ } else {
+ jio_fprintf(defaultStream::error_stream(), "%s", locked_message_buf);
+ }
+ }
+
// allow for commandline "commenting out" options like -XX:#+Verbose
return arg[0] == '#';
}
--- a/hotspot/src/share/vm/runtime/globals.cpp Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/src/share/vm/runtime/globals.cpp Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -81,6 +81,12 @@
}
}
+// Get custom message for this locked flag, or return NULL if
+// none is available.
+void Flag::get_locked_message(char* buf, int buflen) const {
+ get_locked_message_ext(buf, buflen);
+}
+
bool Flag::is_writeable() const {
return strcmp(kind, "{manageable}") == 0 ||
strcmp(kind, "{product rw}") == 0 ||
@@ -260,17 +266,22 @@
return strncmp(s, q, len) == 0;
}
-Flag* Flag::find_flag(char* name, size_t length) {
- for (Flag* current = &flagTable[0]; current->name; current++) {
+// Search the flag table for a named flag
+Flag* Flag::find_flag(char* name, size_t length, bool allow_locked) {
+ for (Flag* current = &flagTable[0]; current->name != NULL; current++) {
if (str_equal(current->name, name, length)) {
+ // Found a matching entry. Report locked flags only if allowed.
if (!(current->is_unlocked() || current->is_unlocker())) {
- // disable use of diagnostic or experimental flags until they
- // are explicitly unlocked
- return NULL;
+ if (!allow_locked) {
+ // disable use of locked flags, e.g. diagnostic, experimental,
+ // commercial... until they are explicitly unlocked
+ return NULL;
+ }
}
return current;
}
}
+ // Flag name is not in the flag table
return NULL;
}
--- a/hotspot/src/share/vm/runtime/globals.hpp Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/src/share/vm/runtime/globals.hpp Thu Mar 22 13:54:26 2012 -0700
@@ -222,7 +222,7 @@
// number of flags
static size_t numFlags;
- static Flag* find_flag(char* name, size_t length);
+ static Flag* find_flag(char* name, size_t length, bool allow_locked = false);
bool is_bool() const { return strcmp(type, "bool") == 0; }
bool get_bool() const { return *((bool*) addr); }
@@ -259,6 +259,9 @@
bool is_writeable_ext() const;
bool is_external_ext() const;
+ void get_locked_message(char*, int) const;
+ void get_locked_message_ext(char*, int) const;
+
void print_on(outputStream* st, bool withComments = false );
void print_as_flag(outputStream* st);
};
--- a/hotspot/src/share/vm/runtime/globals_ext.hpp Tue Mar 20 13:10:13 2012 -0700
+++ b/hotspot/src/share/vm/runtime/globals_ext.hpp Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -61,4 +61,9 @@
return false;
}
+inline void Flag::get_locked_message_ext(char* buf, int buflen) const {
+ assert(buf != NULL, "Buffer cannot be NULL");
+ buf[0] = '\0';
+}
+
#endif // SHARE_VM_RUNTIME_GLOBALS_EXT_HPP
--- a/jaxp/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/jaxp/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
80c47eb83d24fdd64bbb48f288bd6d4f03e0ec88 jdk8-b27
f3244c1f04864d35c41fa8d13669faf4f65b81e2 jdk8-b28
25099a745e1a43579b6af86b3e052b2e50958753 jdk8-b29
+3be30c25a8255803652b5c466336055d36e2ba21 jdk8-b30
--- a/jaxws/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/jaxws/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
38c037af4127289de12efc67f45d19bb67abff69 jdk8-b27
88b85470e72ce48515c802d2158f61cad198b935 jdk8-b28
4897d9d2d04838e3479745efa238a99bacd939c9 jdk8-b29
+6882b10e85d6f6ba110dbb50926d6fe2222cc7ad jdk8-b30
--- a/jdk/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
c68342532e2e7deb3a25fc04ed3e4c142278f747 jdk8-b27
1e1d41daaded291ab3a370ca6a27f7325701978e jdk8-b28
c5b882dce0fe27e05dc64debc92b1fb9ebf880ec jdk8-b29
+cdbb33303ea344d5e9013e2dd642e7a6e7768db6 jdk8-b30
--- a/jdk/src/share/classes/java/util/CurrencyData.properties Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/src/share/classes/java/util/CurrencyData.properties Thu Mar 22 13:54:26 2012 -0700
@@ -26,8 +26,7 @@
formatVersion=1
# Version of the currency code information in this class.
-# It is a serial number that accompanies with each amendment, such as
-# 'MAxxx.doc'
+# It is a serial number that accompanies with each amendment.
dataVersion=153
@@ -49,7 +48,7 @@
NIO558-NLG528-NOK578-NPR524-NZD554-OMR512-PAB590-PEN604-PGK598-PHP608-\
PKR586-PLN985-PTE620-PYG600-QAR634-ROL946-RON946-RSD941-RUB643-RUR810-RWF646-SAR682-\
SBD090-SCR690-SDD736-SDG938-SEK752-SGD702-SHP654-SIT705-SKK703-SLL694-SOS706-\
- SRD968-SRG740-STD678-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TMT934-TND788-TOP776-\
+ SRD968-SRG740-SSP728-STD678-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TMT934-TND788-TOP776-\
TPE626-TRL792-TRY949-TTD780-TWD901-TZS834-UAH980-UGX800-USD840-USN997-USS998-\
UYU858-UZS860-VEB862-VEF937-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
XBB956-XBC957-XBD958-XCD951-XDR960-XFO000-XFU000-XOF952-XPD964-XPF953-\
@@ -463,6 +462,8 @@
WS=WST
# SAN MARINO
SM=EUR
+# SOUTH SUDAN
+SS=SSP
# SAO TOME AND PRINCIPE
ST=STD
# SAUDI ARABIA
--- a/jdk/src/share/classes/java/util/LocaleISOData.java Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/src/share/classes/java/util/LocaleISOData.java Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -433,6 +433,7 @@
+ "SN" + "SEN" // Senegal, Republic of
+ "SO" + "SOM" // Somalia, Somali Republic
+ "SR" + "SUR" // Suriname, Republic of
+ + "SS" + "SSD" // South Sudan
+ "ST" + "STP" // Sao Tome and Principe, Democratic Republic of
+ "SV" + "SLV" // El Salvador, Republic of
+ "SX" + "SXM" // Sint Maarten (Dutch part)
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
#
# COPYRIGHT AND PERMISSION NOTICE
#
-# Copyright (C) 1991-2011 Unicode, Inc. All rights reserved.
+# Copyright (C) 1991-2012 Unicode, Inc. All rights reserved.
# Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
#
# Permission is hereby granted, free of charge, to any person obtaining
@@ -226,6 +226,7 @@
SOS=SOS
SRD=SRD
SRG=SRG
+SSP=SSP
STD=STD
SVC=SVC
SYP=SYP
@@ -443,6 +444,7 @@
sos=Somali Shilling
srd=Surinamese Dollar
srg=Surinamese Guilder
+ssp=South Sudanese Pound
std=S\u00e3o Tom\u00e9 and Pr\u00edncipe Dobra
svc=Salvadoran Col\u00f3n
syp=Syrian Pound
@@ -486,7 +488,9 @@
xpd=Palladium
xpf=CFP Franc
xpt=Platinum
+xsu=Sucre
xts=Testing Currency Code
+xua=ADB Unit of Account
xxx=Unknown Currency
yer=Yemeni Rial
yum=Yugoslavian New Dinar (1994-2002)
--- a/jdk/src/share/classes/sun/util/resources/LocaleNames.properties Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/src/share/classes/sun/util/resources/LocaleNames.properties Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -1077,6 +1077,7 @@
SN=Senegal
SO=Somalia
SR=Suriname
+SS=South Sudan
ST=Sao Tome And Principe
SV=El Salvador
SX=Sint Maarten (Dutch part)
--- a/jdk/test/java/util/Currency/tablea1.txt Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/test/java/util/Currency/tablea1.txt Thu Mar 22 13:54:26 2012 -0700
@@ -1,6 +1,6 @@
#
#
-# Based on BSi's ISO4217 data - "TABLE A1.doc" + amendments up until MA153.doc
+# Amendments up until ISO 4217 AMENDMENT NUMBER 153
# (As of 12 January 2012)
#
@@ -227,6 +227,7 @@
SB SBD 90 2
SO SOS 706 2
ZA ZAR 710 2
+SS SSP 728 2
ES EUR 978 2
LK LKR 144 2
SD SDG 938 2
--- a/jdk/test/java/util/Locale/LocaleTest.java Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/test/java/util/Locale/LocaleTest.java Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
* @bug 4052404 4052440 4084688 4092475 4101316 4105828 4107014 4107953 4110613
* 4118587 4118595 4122371 4126371 4126880 4135316 4135752 4139504 4139940 4143951
* 4147315 4147317 4147552 4335196 4778440 4940539 5010672 6475525 6544471 6627549
- * 6786276 7066203
+ * 6786276 7066203 7085757
* @summary test Locales
*/
/*
@@ -400,7 +400,7 @@
}
/**
- * @bug 4106155 4118587 7066203
+ * @bug 4106155 4118587 7066203 7085757
*/
public void TestGetLangsAndCountries() {
// It didn't seem right to just do an exhaustive test of everything here, so I check
@@ -440,8 +440,8 @@
String[] spotCheck2 = { "US", "CA", "GB", "FR", "DE", "IT", "JP", "KR", "CN", "TW", "TH" };
- if (test.length != 249)
- errln("Expected getISOCountries to return 249 countries; it returned " + test.length);
+ if (test.length != 250)
+ errln("Expected getISOCountries to return 250 countries; it returned " + test.length);
else {
for (int i = 0; i < spotCheck2.length; i++) {
int j;
--- a/jdk/test/sun/text/resources/LocaleData Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/test/sun/text/resources/LocaleData Thu Mar 22 13:54:26 2012 -0700
@@ -7019,3 +7019,11 @@
FormatData/bg/DateTimePatterns/5=dd MMMM y
FormatData/bg/DateTimePatterns/6=dd.MM.yyyy
FormatData/bg/DateTimePatterns/7=dd.MM.yy
+
+# bug 7085757
+CurrencyNames//SSP=SSP
+CurrencyNames//ssp=South Sudanese Pound
+CurrencyNames//xsu=Sucre
+CurrencyNames//xua=ADB Unit of Account
+LocaleNames//SS=South Sudan
+LocaleNames/en/SS=South Sudan
\ No newline at end of file
--- a/jdk/test/sun/text/resources/LocaleDataTest.java Tue Mar 20 13:10:13 2012 -0700
+++ b/jdk/test/sun/text/resources/LocaleDataTest.java Thu Mar 22 13:54:26 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -34,7 +34,7 @@
* 6509039 6609737 6610748 6645271 6507067 6873931 6450945 6645268 6646611
* 6645405 6650730 6910489 6573250 6870908 6585666 6716626 6914413 6916787
* 6919624 6998391 7019267 7020960 7025837 7020583 7036905 7066203 7101495
- * 7003124
+ * 7003124 7085757
* @summary Verify locale data
*
*/
--- a/langtools/.hgtags Tue Mar 20 13:10:13 2012 -0700
+++ b/langtools/.hgtags Thu Mar 22 13:54:26 2012 -0700
@@ -151,3 +151,4 @@
be456f9c64e818161c789252145d4ddc292ae863 jdk8-b27
5bed623b0c773aa8a8d5f8d4004ce9d3974143cc jdk8-b28
e974e82abe51ef66dc32bb6ab5d0733753d3c7d7 jdk8-b29
+08a3425f39f829502ca0ddbfb2d051c31710cb19 jdk8-b30