changeset in /hg/icedtea: Add HACKING file listing patches, and ...

gnu_andrew at member.fsf.org gnu_andrew at member.fsf.org
Mon Jun 23 07:24:31 PDT 2008


changeset 5fbe762d9c35 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=5fbe762d9c35
description:
	Add HACKING file listing patches, and remove unneeded ones.

	2008-06-23  Andrew John Hughes  <gnu_andrew at member.fsf.org>

		* patches/icedtea-bytecodeInterpreterWithChecks.patch,
		* patches/icedtea-certbundle.patch,
		* patches/icedtea-freetype.patch,
		* patches/icedtea-hat-spl-gpl.patch,
		* patches/icedtea-hotspot-6b06-7b24.patch,
		* patches/icedtea-liveconnect.patch,
		* patches/icedtea-netx-applet-visbility.patch,
		* patches/icedtea-sparc.patch:
		Removed.
		* ChangeLog: Fix typo.
		* HACKING: New file to list patches.
		* patches/icedtea-core-build.patch: Removed
		erroneously included diff output file.

diffstat:

11 files changed, 130 insertions(+), 208655 deletions(-)
ChangeLog                                           |   17 
HACKING                                             |  113 
patches/icedtea-bytecodeInterpreterWithChecks.patch |   18 
patches/icedtea-certbundle.patch                    |  240 
patches/icedtea-core-build.patch                    |  258 
patches/icedtea-freetype.patch                      |   39 
patches/icedtea-hat-spl-gpl.patch                   | 2133 
patches/icedtea-hotspot-6b06-7b24.patch             |201186 -------------------
patches/icedtea-liveconnect.patch                   | 2894 
patches/icedtea-netx-applet-visbility.patch         |   79 
patches/icedtea-sparc.patch                         | 1808 

diffs (truncated from 208845 to 500 lines):

diff -r 2346ce8ee96a -r 5fbe762d9c35 ChangeLog
--- a/ChangeLog	Mon Jun 23 00:21:54 2008 +0100
+++ b/ChangeLog	Mon Jun 23 15:23:34 2008 +0100
@@ -1,3 +1,19 @@ 2008-06-22  Andrew John Hughes  <gnu_and
+2008-06-23  Andrew John Hughes  <gnu_andrew at member.fsf.org>
+
+	* patches/icedtea-bytecodeInterpreterWithChecks.patch,
+	* patches/icedtea-certbundle.patch,
+	* patches/icedtea-freetype.patch,
+	* patches/icedtea-hat-spl-gpl.patch,
+	* patches/icedtea-hotspot-6b06-7b24.patch,
+	* patches/icedtea-liveconnect.patch,
+	* patches/icedtea-netx-applet-visbility.patch,
+	* patches/icedtea-sparc.patch:
+	Removed.
+	* ChangeLog: Fix typo.
+	* HACKING: New file to list patches.
+	* patches/icedtea-core-build.patch: Removed
+	erroneously included diff output file.
+
 2008-06-22  Andrew John Hughes  <gnu_andrew at member.fsf.org>
 
 	* patches/icedtea-color-profiles.patch,
@@ -451,6 +467,7 @@ 2008-05-25  Mark Wielaard  <mark at klomp.o
 	* Makefile.am: Use -source 1.5 whenever possible.
 	* Makefile.in: Regenerated.
 	* javac.in: Use -1.5.
+	
 2008-05-24  Andrew John Hughes  <gnu_andrew at member.fsf.org>
 
 	* Makefile.am: Revert OpenJDK patches
diff -r 2346ce8ee96a -r 5fbe762d9c35 HACKING
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HACKING	Mon Jun 23 15:23:34 2008 +0100
@@ -0,0 +1,113 @@
+Patches
+=======
+
+PRx denotes bug x in the IcedTea bug database (http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=x)
+Sx denotes bug x in the Sun bug database (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=x)
+
+The following patches are currently applied to OpenJDK or OpenJDK6 by IcedTea:
+
+* icedtea-ant.patch: Remove use of $(ANT_HOME).
+* icedtea-arm-uname.patch: Handle output of uname on arm.
+* icedtea-bytebuffer-compact.patch: Add clearMark() method to java.nio.Buffer (PR60).
+* icedtea-color-createcontext.patch: Add support for a PaintContext to java.awt.Color.
+* icedtea-copy-plugs.patch: Add IcedTea's 'plugs' for Java WebStart support, add
+  cast to getAnnotation and trapAuthenticationFailure variable to com.sun.jmx.snmp.SnmpPduTrap.
+* icedtea-corba.patch: Adds additional files to org.omg.CORBA Makefile.
+* icedtea-core-build.patch: Add support for building IcedTea core VM.
+* icedtea-debuginfo.patch: Add -g option to build to generate debugging information.
+* icedtea-demo.patch: Fix building of JVMTI demo.
+* icedtea-directaudio-close-trick.patch: Allow hardware sound device to be reopened.
+* icedtea-float-double-trailing-zeros.patch: Remove trailing zeros from Double/Float (PR29/30)
+* icedtea-fonts.patch: Add Fedora fontconfig.
+* icedtea-freetype.patch: Use detected freetype in $FT2_LIB and $FREETYPE_HEADERS_PATH.
+* icedtea-gcc-4.3.patch: Fix code to compile with GCC 4.3 and turn off -Werror.
+* icedtea-gcc-suffix.patch: Append $(GCC_SUFFIX) to end of 'gcc' binary name.
+* icedtea-generated.patch: Force use of /bin/bash.
+* icedtea-gervill.patch: Add support for Gervill from the overlay.
+* icedtea-graphics.patch: Fix word wrap in JTextArea (PR57/S6593649)
+* icedtea-ia64-fdlibm.patch: Fix name of ia64 architecture from _M_IA64 to ia64.
+* icedtea-javafiles.patch: Add missing Java files to list.
+* icedtea-jpegclasses.patch: Add com.sun.image.codec.jpeg support.
+* icedtea-jscheme.patch: Replace use of jscheme.jar with Java alternative (PR140).
+* icedtea-lcms-leak.patch: Fix LCMS memory leak.
+* icedtea-LCMS-setTagData.patch: Add support for setTagData to LCMS peer.
+* icedtea-lib64.patch: Add support for building on platforms with /usr/lib64.
+* icedtea-libraries.patch: Use system JPEG and zlib libraries.
+* icedtea-license-headers.patch: Generate GPL header from automulti tool.
+* icedtea-linker-options.patch: Add -Xlinker option when linking.
+* icedtea-memory-limits.patch: Increase default memory limits.
+* icedtea-no-bcopy.patch: Don't define local copies of bcopy, bzero and bcmp from BSD.
+* icedtea-override-redirect-metacity.patch: Enable override redirect for Metacity window manager.
+* icedtea-lsb-release.patch: Generate Debian LSB file.
+* icedtea-rmi_amd64.patch: Build RMI binaries on all platforms not just 32-bit ones.
+* icedtea-sparc64-linux.patch: Fixes needed to build the SPARC port on 32-bit SPARC as used by Fedora.
+* icedtea-sparc-ptracefix.patch: Avoid importing asm-sparc/ptrace.h by including pt_regs directly.
+* icedtea-sparc-trapsfix.patch: Include traps.h from correct directory.
+* icedtea-ssl.patch: Add casts to AlgorithmParameterSpec in sun.security.ssl package.
+* icedtea-static-libstdc++.patch: Don't use static C++ on PPC64.
+* icedtea-sunsrc.patch: Remove service property files from TOOLS list.
+* icedtea-text-relocations.patch: Use correct -fPIC/-fpic flag on all platforms.
+* icedtea-timerqueue.patch: Fix setting of running variable (PR87).
+* icedtea-tools.patch: Remove DebugHelperHelper and add sources in make/java/awt/Makefile to fix build of jvmti.
+* icedtea-use-system-tzdata.patch: Use timezone data from the system (PR70/S6593486).
+* icedtea-version.patch: Replace name and bug URL with IcedTea versions.
+* icedtea-webservices.patch: Add applet support.
+* icedtea-zero-build.patch: Add support for the zero assembler build.
+
+The following patches are only applied to OpenJDK6 in IcedTea6:
+
+* icedtea-component.patch: Fix deadlock in AWT code (PR159/S6608764). Fixed in OpenJDK7 b25.
+* icedtea-dnd-updatecursor.patch: Fix unexpected cursor returned by DragSourceContext (S6691328). Fixed in OpenJDK7 b29.
+* icedtea-eclipse-hotspot-6614100-6b06.patch: Fix Eclipse crash (S6614100). Fixed in OpenJDK7 b29/hs13.
+* icedtea-gtkplaf.patch: Fix corrupted combo box (S6624717). Fixed in OpenJDK7 b27.
+* icedtea-sparc.patch: Add support for GNU/Linux on SPARC.
+
+The following patches are only applied to OpenJDK in IcedTea:
+
+* icedtea-override.patch: Remove @Override annotation in javax.management.AttributeValueExp (unsupported by ecj < 3.4).
+
+The following patches are only applied to the icedtea-ecj bootstrap tree:
+
+* icedtea-ecj.patch: Don't generate CORBA sources using MC/idlj, link against -lgcj
+  instead of -ljava, force use of boot tools, don't run HotSpot's test_gamma, use
+  javac executable with Ant, remove -Werror from javac call, don't build JDK demos,
+  don't run sun.awt.X11.ToBin, explicitly pull in timezone data and rt.jar in javac
+  calls, replace hexadecimal floating point literals with decimal variants in
+  java.lang.Double and java.lang.Float.   
+
+The following patches are only applied for IcedTea builds using the zero-assembler:
+
+* icedtea-bytecodeInterpreter.patch: Replace fast opcodes with opc_default.
+* icedtea-bytecodeInterpreterWithChecks.patch: Same as icedtea-xslfix.patch (OpenJDK6 only, S6707485).
+* icedtea-eclipse-hotspot-6614100-7b24.patch: Fix Eclipse crash (S6614100). Fixed in OpenJDK7 b29/hs13.
+* icedtea-hotspot-6b06-7b24.patch: Upgrade to HotSpot from OpenJDK b24 (OpenJDK6 only).
+* icedtea-hotspot7-build-fixes.patch: Remove KERNEL #ifdef.
+* icedtea-ia64-bugfix.patch: Remove workaround for IA64 GCC bug.
+* icedtea-signature-iterator.patch: Add zero-specific signature handling.
+* icedtea-signed-types.patch: Make use of unsigned/signed types explicit.
+* icedtea-test-atomic-operations.patch: Add check to see if GCC's sync_lock_test works.
+* icedtea-zero.patch: Generalise architecture support, add ARM and #ifdef out non-zero applicable parts.
+
+The following patches are only applied when building with experimental NetX plugin support:
+
+* icedtea-netx-plugin.patch: Use NetxPanel instead of AppletViewerPanel.
+
+The following patches are only applied when building with the CACAO virtual machine:
+
+* icedtea-cacao.patch: Add support for additional architectures and don't run 'java' in a new thread.
+
+Obsolete Patches
+================
+
+The following patches were previously applied, but have been made obsolete by
+changes to the OpenJDK code base and/or changes within IcedTea:
+
+* icedtea-certbundle.patch: Add support for certificates packaged by Fedora in /etc/pki: Methodology for certificates changed.
+* icedtea-color-profiles.patch: Add missing color profiles (S6523403): Included upstream in OpenJDK6 b10 and OpenJDK7 b28. 
+* icedtea-hat-spl-gpl.patch: JHat has conflicting GPL/SPL licensing terms (PR143/S6695553): Included upstream in OpenJDK6 b10 and OpenJDK7 b29.
+* icedtea-freetype.patch: Use detected freetype in $FT2_LIB and $FREETYPE_HEADERS_PATH: Obsoleted by icedtea-headers.patch.
+* icedtea-liveconnect.patch: Add LiveConnect support to plugin: No longer developed.
+* icedtea-netx-applet-visibility.patch: Make applet classes package-private for the plugin: Obsoleted by icedtea-webservices.patch.
+* icedtea-xinerama.patch: Fix crash talking to second X screen (S6604044): Included upstream in OpenJDK6 b10 and OpenJDK7 b28.
+* icedtea-xslfix.patch: Fix malformed bytecodeInterpreterWithChecks XSL file (S6707485): Included upstream in OpenJDK7 b29/hs13.
+* openjdk-color.patch: Include Free java.awt.color and java.awt.image (S6662775): Included upstream in OpenJDK6 b06 and OpenJDK7 b28.
diff -r 2346ce8ee96a -r 5fbe762d9c35 patches/icedtea-bytecodeInterpreterWithChecks.patch
--- a/patches/icedtea-bytecodeInterpreterWithChecks.patch	Mon Jun 23 00:21:54 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
---- openjdk.old/hotspot/src/share/vm/interpreter/bytecodeInterpreterWithChecks.xsl      2007-10-12 03:46:08.000000000 -0400
-+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreterWithChecks.xsl      2007-10-29 11:57:33.000000000 -0400
-@@ -6,6 +6,7 @@
-
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-
-+<xsl:output method="text" indent="no" omit-xml-declaration="yes"/>
- <xsl:template match="processcode">
- <xsl:text>
- #define VM_JVMTI
-@@ -15,7 +16,6 @@
-
- </xsl:text>
-
--<xsl:output method="text" indent="no" omit-xml-declaration="yes"/>
- </xsl:template>
-
- </xsl:stylesheet>
diff -r 2346ce8ee96a -r 5fbe762d9c35 patches/icedtea-certbundle.patch
--- a/patches/icedtea-certbundle.patch	Mon Jun 23 00:21:54 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,240 +0,0 @@
-diff -urN openjdk.orig/jdk/src/share/classes/sun/security/provider/CertBundleKeyStoreImpl.java openjdk/jdk/src/share/classes/sun/security/provider/CertBundleKeyStoreImpl.java
---- openjdk.orig/jdk/src/share/classes/sun/security/provider/CertBundleKeyStoreImpl.java	1969-12-31 19:00:00.000000000 -0500
-+++ openjdk/jdk/src/share/classes/sun/security/provider/CertBundleKeyStoreImpl.java	2007-10-12 18:24:05.000000000 -0400
-@@ -0,0 +1,199 @@
-+/* CertBundleKeyStoreImpl.java
-+   Copyright (C) 2007  Casey Marshall <csm at gnu.org>
-+
-+This file is part of IcedTea.
-+
-+IcedTea is free software; you can redistribute it and/or 
-+modify it under the terms of the GNU General Public License as
-+published by the Free Software Foundation, version 2.
-+
-+IcedTea 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 for more details.
-+
-+You should have received a copy of the GNU General Public License
-+along with IcedTea; see the file COPYING.  If not, write to
-+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-+Boston, MA 02110-1301 USA.
-+
-+Linking this library statically or dynamically with other modules is
-+making a combined work based on this library.  Thus, the terms and
-+conditions of the GNU General Public License cover the whole
-+combination.
-+
-+As a special exception, the copyright holders of this library give you
-+permission to link this library with independent modules to produce an
-+executable, regardless of the license terms of these independent
-+modules, and to copy and distribute the resulting executable under
-+terms of your choice, provided that you also meet, for each linked
-+independent module, the terms and conditions of the license of that
-+module.  An independent module is a module which is not derived from
-+or based on this library.  If you modify this library, you may extend
-+this exception to your version of the library, but you are not
-+obligated to do so.  If you do not wish to do so, delete this
-+exception statement from your version.  */
-+
-+
-+package sun.security.provider;
-+
-+import java.io.BufferedReader;
-+import java.io.ByteArrayInputStream;
-+import java.io.ByteArrayOutputStream;
-+import java.io.IOException;
-+import java.io.InputStream;
-+import java.io.InputStreamReader;
-+import java.io.OutputStream;
-+import java.io.OutputStreamWriter;
-+import java.io.PrintWriter;
-+import java.security.Key;
-+import java.security.KeyStoreException;
-+import java.security.KeyStoreSpi;
-+import java.security.NoSuchAlgorithmException;
-+import java.security.UnrecoverableKeyException;
-+import java.security.cert.Certificate;
-+import java.security.cert.CertificateException;
-+import java.security.cert.CertificateFactory;
-+import java.util.Date;
-+import java.util.Enumeration;
-+import java.util.HashMap;
-+import java.util.Map;
-+import java.util.Vector;
-+
-+/**
-+ * A key store implementation for "certificate bundle" files, commonly used
-+ * on many free operating systems. Certificate bundles are plain text files
-+ * containing one or more "PEM" encoded X.509 certificates, which comprise
-+ * a list of trusted root certificates.
-+ * 
-+ * This class implements a read-only key store that reads in one or more
-+ * certificate bundles, storing all certificates successfully read. Calling
-+ * load multiple times will add certificates to the store.
-+ * 
-+ * @author Casey Marshall (csm at gnu.org)
-+ */
-+public class CertBundleKeyStoreImpl extends KeyStoreSpi
-+{
-+  private int x = 0;
-+  private Map<String, Certificate> certs = new HashMap<String, Certificate>();
-+
-+  @Override public Enumeration<String> engineAliases()
-+  {
-+    return new Vector<String>(certs.keySet()).elements();
-+  }
-+
-+  @Override public boolean engineContainsAlias(String alias)
-+  {
-+    return certs.containsKey(alias);
-+  }
-+
-+  @Override public void engineDeleteEntry(String alias) throws KeyStoreException
-+  {
-+    certs.remove(alias);
-+  }
-+
-+  @Override public Certificate engineGetCertificate(String alias)
-+  {
-+    return certs.get(alias);
-+  }
-+
-+  @Override public String engineGetCertificateAlias(Certificate cert)
-+  {
-+    for (Map.Entry<String, Certificate> e : certs.entrySet())
-+      {
-+        if (e.getValue().equals(cert))
-+          return e.getKey();
-+      }
-+    return null;
-+  }
-+
-+  @Override public Certificate[] engineGetCertificateChain(String arg0)
-+  {
-+    return null;
-+  }
-+
-+  @Override public Date engineGetCreationDate(String alias)
-+  {
-+    return new Date(0);
-+  }
-+
-+  @Override public Key engineGetKey(String arg0, char[] arg1)
-+    throws NoSuchAlgorithmException, UnrecoverableKeyException
-+  {
-+    return null;
-+  }
-+
-+  @Override public boolean engineIsCertificateEntry(String alias)
-+  {
-+    return certs.containsKey(alias);
-+  }
-+
-+  @Override public boolean engineIsKeyEntry(String arg0)
-+  {
-+    return false;
-+  }
-+
-+  @Override public void engineLoad(InputStream in, char[] arg1)
-+    throws IOException, NoSuchAlgorithmException, CertificateException
-+  {
-+    CertificateFactory cf = CertificateFactory.getInstance("X.509");
-+    ByteArrayOutputStream bout = new ByteArrayOutputStream();
-+    PrintWriter out = new PrintWriter(new OutputStreamWriter(bout));
-+    BufferedReader rin = new BufferedReader(new InputStreamReader(in));
-+    String line;
-+    boolean push = false;
-+    while ((line = rin.readLine()) != null)
-+      {
-+        if (line.equals("-----BEGIN CERTIFICATE-----"))
-+          {
-+            push = true;
-+            out.println(line);
-+          }
-+        else if (push)
-+          {
-+            out.println(line);
-+            if (line.equals("-----END CERTIFICATE-----"))
-+              {
-+                push = false;
-+		out.flush();
-+		byte[] bytes = bout.toByteArray();
-+                Certificate cert = cf.generateCertificate(new ByteArrayInputStream(bytes));
-+                bout.reset();
-+                String alias = "cert-" + (x++);
-+                certs.put(alias, cert);
-+              }
-+          }
-+      }
-+  }
-+
-+  @Override public void engineSetCertificateEntry(String alias, Certificate cert)
-+    throws KeyStoreException
-+  {
-+    certs.put(alias, cert);
-+  }
-+
-+  @Override public void engineSetKeyEntry(String arg0, byte[] arg1,
-+                                          Certificate[] arg2)
-+    throws KeyStoreException
-+  {
-+    throw new KeyStoreException("not supported");
-+  }
-+
-+  @Override public void engineSetKeyEntry(String arg0, Key arg1, char[] arg2,
-+                                          Certificate[] arg3)
-+    throws KeyStoreException
-+  {
-+    throw new KeyStoreException("not supported");
-+  }
-+
-+  @Override public int engineSize()
-+  {
-+    return certs.size();
-+  }
-+
-+  @Override public void engineStore(OutputStream arg0, char[] arg1)
-+    throws IOException, NoSuchAlgorithmException, CertificateException
-+  {
-+    throw new UnsupportedOperationException("read-only key stores");
-+  }
-+}
---- ../opeinjdkb23/openjdk/jdk/src/share/classes/sun/security/provider/SunEntries.java	2007-10-30 04:38:07.000000000 -0400
-+++ openjdk/jdk/src/share/classes/sun/security/provider/SunEntries.java	2007-11-13 13:13:21.000000000 -0500
-@@ -178,6 +178,7 @@
-         map.put("KeyStore.JKS", "sun.security.provider.JavaKeyStore$JKS");
-         map.put("KeyStore.CaseExactJKS",
-                         "sun.security.provider.JavaKeyStore$CaseExactJKS");
-+	map.put("KeyStore.CertBundle", "sun.security.provider.CertBundleKeyStoreImpl");
- 
-         /*
-          * Policy
---- openjdkold/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java	2008-03-26 04:59:04.000000000 -0400
-+++ openjdk/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java	2008-05-08 10:49:22.000000000 -0400
-@@ -142,16 +142,21 @@
-             public Void run() throws Exception {
-                 props.put("trustStore", System.getProperty(
-                                 "javax.net.ssl.trustStore"));
--                props.put("javaHome", System.getProperty(
--                                        "java.home"));
-                 props.put("trustStoreType", System.getProperty(
-                                 "javax.net.ssl.trustStoreType",
-                                 KeyStore.getDefaultType()));
-+		props.put("javaHome", System.getProperty(
-+                                        "java.home"));
-                 props.put("trustStoreProvider", System.getProperty(
-                                 "javax.net.ssl.trustStoreProvider", ""));
-                 props.put("trustStorePasswd", System.getProperty(
-                                 "javax.net.ssl.trustStorePassword", ""));
--                return null;
-+                props.put("/etc/pki/tls/certs/ca-bundle.crt", System.getProperty(
-+                                "javax.net.ssl.trustStore"));
-+		props.put("CertBundle", System.getProperty(
-+                                "javax.net.ssl.trustStoreType",
-+                                KeyStore.getDefaultType()));
-+	        return null;
-             }
-         });
- 
diff -r 2346ce8ee96a -r 5fbe762d9c35 patches/icedtea-core-build.patch
--- a/patches/icedtea-core-build.patch	Mon Jun 23 00:21:54 2008 +0100
+++ b/patches/icedtea-core-build.patch	Mon Jun 23 15:23:34 2008 +0100
@@ -122,264 +122,6 @@ diff -Nru openjdk.orig/hotspot/src/share
  #endif // TIERED
  #endif // KERNEL
  
-diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp.orig openjdk/hotspot/src/share/vm/runtime/vm_version.cpp.orig
---- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp.orig	1970-01-01 01:00:00.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp.orig	2008-05-27 22:28:30.000000000 +0100
-@@ -0,0 +1,254 @@
-+/*
-+ * Copyright 1998-2007 Sun Microsystems, Inc.  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.
-+ *
-+ * 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-+ * CA 95054 USA or visit www.sun.com if you need additional information or
-+ * have any questions.
-+ *
-+ */
-+
-+# include "incls/_precompiled.incl"
-+# include "incls/_vm_version.cpp.incl"
-+
-+const char* Abstract_VM_Version::_s_vm_release = Abstract_VM_Version::vm_release();
-+const char* Abstract_VM_Version::_s_internal_vm_info_string = Abstract_VM_Version::internal_vm_info_string();
-+bool Abstract_VM_Version::_supports_cx8 = false;
-+unsigned int Abstract_VM_Version::_logical_processors_per_package = 1U;
-+
-+#ifndef HOTSPOT_RELEASE_VERSION
-+  #error HOTSPOT_RELEASE_VERSION must be defined
-+#endif
-+#ifndef JRE_RELEASE_VERSION
-+  #error JRE_RELEASE_VERSION must be defined
-+#endif
-+#ifndef HOTSPOT_BUILD_TARGET
-+  #error HOTSPOT_BUILD_TARGET must be defined
-+#endif
-+
-+#ifdef PRODUCT
-+  #define VM_RELEASE HOTSPOT_RELEASE_VERSION
-+#else
-+  #define VM_RELEASE HOTSPOT_RELEASE_VERSION "-" HOTSPOT_BUILD_TARGET
-+#endif
-+
-+// HOTSPOT_RELEASE_VERSION must follow the release version naming convention
-+// <major_ver>.<minor_ver>-b<nn>[-<identifier>][-<debug_target>]
-+int Abstract_VM_Version::_vm_major_version = 0;
-+int Abstract_VM_Version::_vm_minor_version = 0;
-+int Abstract_VM_Version::_vm_build_number = 0;
-+bool Abstract_VM_Version::_initialized = false;
-+int Abstract_VM_Version::_parallel_worker_threads = 0;
-+bool Abstract_VM_Version::_parallel_worker_threads_initialized = false;
-+
-+void Abstract_VM_Version::initialize() {
-+  if (_initialized) {
-+    return;
-+  }
-+  char* vm_version = os::strdup(HOTSPOT_RELEASE_VERSION);
-+
-+  // Expecting the next vm_version format:
-+  // <major_ver>.<minor_ver>-b<nn>[-<identifier>]
-+  char* vm_major_ver = vm_version;
-+  assert(isdigit(vm_major_ver[0]),"wrong vm major version number");
-+  char* vm_minor_ver = strchr(vm_major_ver, '.');
-+  assert(vm_minor_ver != NULL && isdigit(vm_minor_ver[1]),"wrong vm minor version number");
-+  vm_minor_ver[0] = '\0'; // terminate vm_major_ver
-+  vm_minor_ver += 1;
-+  char* vm_build_num = strchr(vm_minor_ver, '-');
-+  assert(vm_build_num != NULL && vm_build_num[1] == 'b' && isdigit(vm_build_num[2]),"wrong vm build number");
-+  vm_build_num[0] = '\0'; // terminate vm_minor_ver
-+  vm_build_num += 2;



More information about the distro-pkg-dev mailing list