I have ported Sun's JDK1.0.2, JDK1.1, and JDK1.1.5 to FreeBSD and SunOS 4.1.x (sun4).
The SunOS port is based on the SunOS/sun3 port done by jsanford@iaxs.net. The FreeBSD port is based on the Linux port done by Randy Chapman and the FreeBSD port by Jeffrey Hsu.
What you need to build it yourself:
Here's how I'd build the SunOS version of the JDK1.0.2:
/bin/ksh cd /tmp (or cd /local/java, or ...) JAVASRC=`pwd`/javasrc gtar xvfz .../javasrc1.0.2.tar.gz javasrc/README \ javasrc/build/solaris javasrc/src/solaris javasrc/src/share cd javasrc rm -rf Motif src/win32 build/win32 mv build/solaris build/sunos mv src/solaris src/sunos cd build/sunos mkdir java/java/CClassHeaders java/net/CClassHeaders \ sun/debug/CClassHeaders sun/mmedia/CClassHeaders \ sun/awt/CClassHeaders sun/tawt/CClassHeaders sun/jpeg/CClassHeaders cd ../.. patch < .../jdk-sunos.diff cd build; mkdir classes; cd classes unzip /usr/local/java/lib/classes.zip touch `find . -print` cd ../sunos ALT_BOOTDIR=${JAVASRC}/build ALT_JAVAHOME=${JAVASRC}/build gmake.../javasrc1.0.2.tar.gz is the (renamed) file you downloaded from javasoft subsequent to the acceptance of your signed license agreement. .../jdk-sunos.diff is the diff file from above.
Here's how I'd build the FreeBSD version of the JDK1.0.2:
/bin/ksh cd /tmp (or cd /local/java, or ...) JAVASRC=`pwd`/javasrc tar xvfz .../javasrc1.0.2.tar.gz javasrc/README \ javasrc/build/solaris javasrc/src/solaris javasrc/src/share cd javasrc rm -rf Motif build/win32 src/win32 mv src/solaris src/freebsd mv build/solaris build/freebsd patch < .../jdk-freebsd.diff cd build; mkdir classes; cd classes unzip /usr/local/java/lib/classes.zip touch `find . -print` cd ../freebsd mkdir java/java/CClassHeaders java/net/CClassHeaders \ sun/debug/CClassHeaders sun/mmedia/CClassHeaders \ sun/awt/CClassHeaders sun/tawt/CClassHeaders sun/jpeg/CClassHeaders ALT_MOTIF_DIR=/usr/X11R6 ALT_BOOTDIR=${JAVASRC}/build \ ALT_JAVAHOME=${JAVASRC}/build gmake
.../javasrc1.0.2.tar.gz is the (renamed) file you downloaded from javasoft subsequent to the acceptance of your signed license agreement. .../jdk-freebsd.diff is the diff file from above.
It's assumed that you've installed the motif includes and libraries in /usr/X11R6.
Here's how I'd build the SunOS version of the JDK1.1 (you'll need roughly 56M free diskspace):
/bin/ksh cd /tmp (or cd /local/java, or ...) JAVASRC=`pwd`/javasrc gtar xvfz .../javasrc1.1.tar.gz javasrc/README \ javasrc/build/solaris javasrc/build/minclude javasrc/src/solaris \ javasrc/src/share cd javasrc rm -rf Motif ODBC2.11 src/win32 build/win32 mv build/solaris build/sunos mv src/solaris src/sunos patch < .../jdk1.1-sunos.diff cd build; mkdir classes; cd classes unzip /usr/local/java/jdk1.1/lib/classes.zip touch `find . -print` cd .. cd sunos ALT_BOOTDIR=${JAVASRC}/build ALT_JAVAHOME=${JAVASRC}/build \ STRIP=true CC_VERSION=gcc gmake
Here's how I'd build the FreeBSD version of the JDK1.1 (you'll need roughly 83M free diskspace):
/bin/ksh cd /tmp (or cd /local/java, or ...) JAVASRC=`pwd`/javasrc tar xvfz .../javasrc1.1.tar.gz javasrc/README \ javasrc/build/solaris javasrc/build/minclude javasrc/src/solaris \ javasrc/src/share cd javasrc rm -rf Motif ODBC2.11 src/win32 build/win32 mv build/solaris build/freebsd mv src/solaris src/freebsd patch < .../jdk1.1-freebsd.diff cd build; mkdir classes; cd classes unzip /usr/local/java/jdk1.1/lib/classes.zip touch `find . -print` cd .. cd freebsd ALT_MOTIF_DIR=/usr/X11R6 ALT_BOOTDIR=${JAVASRC}/build \ ALT_JAVAHOME=${JAVASRC}/build CC_VERSION=gcc gmake.../javasrc1.1.tar.gz is the (renamed) file you downloaded from javasoft subsequent to the acceptance of your signed license agreement. .../jdk1.1-freebsd.diff is the diff file from above.
It's assumed that you've installed the motif includes and libraries in /usr/X11R6.
The JREs are covered by the JRE license agreement. In particular you may redistribute the binary (see the JRE LICENSE and README files for details).
By downloading and installing any of these binaries, you agree to be bound by the Sun license agreement. In particular, you may not redistribute these binaries (including offering them for FTP or web access) or include them in a product.
If you're using the JDK1.1 with FreeBSD 2.2.2R you can use the jdk1.1-FreeBSD-update.sh shell script to remove dependencies on the pdksh and compat21 packages.
If you installed the JDK1.1 in /usr/local/jdk1.1 and downloaded the script to /tmp/jdk1.1-FreeBSD-update.sh the following should do the trick:
cd /usr/local sh /tmp/jdk1.1-FreeBSD-update.sh
If you're running a version of SunOS earlier than 4.1.3_U1 you'll need to replace java and java_g with the versions in this 404,940 byte gzipped tar archive (/usr/5bin/sum of 44062 791).
If you installed the JDK1.1 in /usr/local/jdk1.1 and downloaded the archive to /tmp/jdk1.1-sunos-patch.tar.gz the following should do the trick:
gtar xvfzpC /tmp/jdk1.1-sunos-patch.tar.gz /usr/local
If you downloaded my versions of the LessTif and X11R5 libraries, you'll also need the nls and XKeysymDB files in jdk1.1-sunos-patch2.tar.gz. Also included is a modified version of jdk1.1/bin/.java_wrapper that removes the dependency on /bin/ksh.
Here's a typical install:mv /usr/local/jdk1.1/bin/.java_wrapper \ /usr/local/jdk1.1/bin/.java_wrapper.orig gtar xvfzpC jdk1.1-sunos-patch2.tar.gz /usr/local
gtar xvfzpC jdk1.1-sunos.patch3.tar.gz /usr/local