# HG changeset patch # User David Powell # Date 1313102502 25200 # Node ID ebb25c1dac737be4438f213c47699e6baece0232 # Parent 94428b581c8ce490cd8d3eb282f8fe08d799fd6c 18812 Support building with alternate java implementations diff -r 94428b581c8c -r ebb25c1dac73 usr/src/Makefile.env --- a/usr/src/Makefile.env Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/Makefile.env Thu Aug 11 15:41:42 2011 -0700 @@ -110,14 +110,19 @@ CTFCONVERT = /opt/onbld/bin/$(ISA)/ctfconvert # Set here explicitly to avoid compiling with newer class version -JAVAC = /usr/bin/javac -JAR = /usr/bin/jar -JAVADOC = /usr/bin/javadoc -JAVAH = /usr/bin/javah +JDK_HOME = /usr +JAVA_HOME = /usr + +JAVAC = $(JDK_HOME)/bin/javac +JAR = $(JDK_HOME)/bin/jar +JAVADOC = $(JDK_HOME)/bin/javadoc +JAVAH = $(JDK_HOME)/bin/javah + +JAVA = $(JAVA_HOME)/bin/java # Consumers must depend on java (or java/adr) ADRLOC=$(SRC)/java/adr/adr.jar -ADRGEN=java -classpath $(ADRLOC) org.opensolaris.os.adr.adrgen.ADRGen +ADRGEN=$(JAVA) -classpath $(ADRLOC) org.opensolaris.os.adr.adrgen.ADRGen # Lint LINTFLAGS = -s -errtags=yes -errsecurity=core -errwarn=%all diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/adr/org/opensolaris/os/adr/APIVersion.java --- a/usr/src/java/adr/org/opensolaris/os/adr/APIVersion.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/adr/org/opensolaris/os/adr/APIVersion.java Thu Aug 11 15:41:42 2011 -0700 @@ -25,7 +25,7 @@ package org.opensolaris.os.adr; -public class APIVersion implements Comparable { +public class APIVersion implements Comparable { private int major_; private int minor_; @@ -57,10 +57,9 @@ */ @Override - public int compareTo(Object o) throws ClassCastException { - if (this == o) + public int compareTo(APIVersion v) throws ClassCastException { + if (this == v) return 0; - APIVersion v = (APIVersion) o; int diff = stability_.compareTo(v.getStability()); if (diff == 0) { diff = major_ - v.getMajor(); diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/build-common.xml --- a/usr/src/java/build-common.xml Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/build-common.xml Thu Aug 11 15:41:42 2011 -0700 @@ -71,47 +71,38 @@ - - - - + - + - - - - + - + - - - - + - + diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/ContainerException.java --- a/usr/src/java/rad/org/opensolaris/os/rad/ContainerException.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/ContainerException.java Thu Aug 11 15:41:42 2011 -0700 @@ -20,8 +20,7 @@ */ /* - * Copyright 2009 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved. */ package org.opensolaris.os.rad; @@ -70,7 +69,7 @@ new CompositeDataInvocationHandler(payload_); try { return (T)Proxy.newProxyInstance(c.getClassLoader(), - new Class[] { c }, handler); + new Class[] { c }, handler); } catch (Exception e) { return null; } diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/EnumMapper.java --- a/usr/src/java/rad/org/opensolaris/os/rad/EnumMapper.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/EnumMapper.java Thu Aug 11 15:41:42 2011 -0700 @@ -54,7 +54,7 @@ client_ = client; } - public abstract OpenType toOpenType(EnumType type); + public abstract OpenType toOpenType(EnumType type); public abstract Object fromWire(Type.EnumType type, Type.EnumValue value) throws OpenDataException; public abstract String toWire(Type.EnumType type, Object data); diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/PlainEnumMapper.java --- a/usr/src/java/rad/org/opensolaris/os/rad/PlainEnumMapper.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/PlainEnumMapper.java Thu Aug 11 15:41:42 2011 -0700 @@ -35,7 +35,7 @@ * The default EnumMapper. Maps enumeration values to strings. */ public class PlainEnumMapper extends EnumMapper { - public OpenType toOpenType(EnumType type) { + public OpenType toOpenType(EnumType type) { return SimpleType.STRING; } diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/jmx/IncompatibleVersionException.java --- a/usr/src/java/rad/org/opensolaris/os/rad/jmx/IncompatibleVersionException.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/jmx/IncompatibleVersionException.java Thu Aug 11 15:41:42 2011 -0700 @@ -29,11 +29,11 @@ import org.opensolaris.os.adr.APIVersion; public class IncompatibleVersionException extends JMException { - private Class iface_; + private Class iface_; private APIVersion cver_; private APIVersion sver_; - IncompatibleVersionException(Class iface, APIVersion cver, + IncompatibleVersionException(Class iface, APIVersion cver, APIVersion sver, String msg) { super(msg); iface_ = iface; @@ -41,13 +41,13 @@ sver_ = sver; } - IncompatibleVersionException(Class iface, APIVersion cver, + IncompatibleVersionException(Class iface, APIVersion cver, APIVersion sver) { this(iface, cver, sver, String.format("Incompatible versions: " + "%s Client [%s], Server = [%s].", iface.getName(), cver, sver)); } - public Class getInterfaceClass() { + public Class getInterfaceClass() { return iface_; } diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/jmx/JMXEnumMapper.java --- a/usr/src/java/rad/org/opensolaris/os/rad/jmx/JMXEnumMapper.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/jmx/JMXEnumMapper.java Thu Aug 11 15:41:42 2011 -0700 @@ -41,7 +41,7 @@ */ public class JMXEnumMapper extends PlainEnumMapper { @Override - public OpenType toOpenType(EnumType type) { + public OpenType toOpenType(EnumType type) { if (type.getFallback() == null) return super.toOpenType(type); diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/jmx/RadJMX.java --- a/usr/src/java/rad/org/opensolaris/os/rad/jmx/RadJMX.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/jmx/RadJMX.java Thu Aug 11 15:41:42 2011 -0700 @@ -26,11 +26,7 @@ package org.opensolaris.os.rad.jmx; import java.io.IOException; -import java.lang.annotation.*; -import java.util.*; import javax.management.*; -import javax.management.openmbean.OpenMBeanInfo; -import javax.management.openmbean.OpenMBeanInfoSupport; import org.opensolaris.os.adr.*; import org.opensolaris.os.rad.Versions; import org.opensolaris.os.rad.Version; @@ -121,8 +117,9 @@ return APIVersion.getNone(s); } - private static void assertCompatible(Class interfaceClass, Stability stab, - Versions vers, Descriptor desc) throws IncompatibleVersionException { + private static void assertCompatible(Class interfaceClass, + Stability stab, Versions vers, Descriptor desc) + throws IncompatibleVersionException { APIVersion vc = getClientVersion(stab, vers); APIVersion vs = APIVersion.getNone(stab); diff -r 94428b581c8c -r ebb25c1dac73 usr/src/java/rad/org/opensolaris/os/rad/jmx/RadNotification.java --- a/usr/src/java/rad/org/opensolaris/os/rad/jmx/RadNotification.java Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/java/rad/org/opensolaris/os/rad/jmx/RadNotification.java Thu Aug 11 15:41:42 2011 -0700 @@ -20,8 +20,7 @@ */ /* - * Copyright 2009 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved. */ package org.opensolaris.os.rad.jmx; @@ -66,7 +65,7 @@ new CompositeDataInvocationHandler((CompositeData)ud); try { return (T)Proxy.newProxyInstance(c.getClassLoader(), - new Class[] { c }, handler); + new Class[] { c }, handler); } catch (Exception e) { return null; } diff -r 94428b581c8c -r ebb25c1dac73 usr/src/lib/libUnixDomainSocket_jni/Makefile.com --- a/usr/src/lib/libUnixDomainSocket_jni/Makefile.com Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/lib/libUnixDomainSocket_jni/Makefile.com Thu Aug 11 15:41:42 2011 -0700 @@ -62,7 +62,7 @@ jar tf "$$f"; \ done | $(GREP) '/$(@:%.h=%).class' | \ $(SED) 's/\.class$$//; s#/#.#g' | \ - $(XARGS) echo javah -classpath $(CLASS_PATH) -o $@ | \ + $(XARGS) echo $(JAVAH) -classpath $(CLASS_PATH) -o $@ | \ while read line; \ do \ echo "$$line"; \ diff -r 94428b581c8c -r ebb25c1dac73 usr/src/test/radtest/java.py --- a/usr/src/test/radtest/java.py Tue Aug 09 12:37:14 2011 -0400 +++ b/usr/src/test/radtest/java.py Thu Aug 11 15:41:42 2011 -0700 @@ -59,8 +59,9 @@ def run_common(self, dir, jargs, pargs): root = os.getenv("ROOT") classpath = self.make_classpath(root, dir) + javacmd = os.getenv("JAVA_HOME", "/usr") + "/bin/java" - args = ["java", "-classpath", classpath, "testutil.TestExec"] + args = [javacmd, "-classpath", classpath, "testutil.TestExec"] args.extend(jargs) args.extend(self.findtests(dir))