From 2c25a568a50bcbfc1471523b6de850d966f35f50 Mon Sep 17 00:00:00 2001 From: DJ Lucas Date: Wed, 8 Sep 2010 05:56:02 +0000 Subject: [PATCH] Added IcedTea6-1.9. git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8596 af4574ff-66df-0310-9fd7-8a98e5e911e0 --- general.ent | 7 +- general/prog/icedtea6.xml | 920 +++++++++++++++++++++++++++++ general/prog/prog.xml | 1 + introduction/welcome/changelog.xml | 9 + introduction/welcome/credits.xml | 7 +- 5 files changed, 937 insertions(+), 7 deletions(-) create mode 100644 general/prog/icedtea6.xml diff --git a/general.ent b/general.ent index aa1fcec3ef..d81c8beb31 100644 --- a/general.ent +++ b/general.ent @@ -3,13 +3,13 @@ $LastChangedBy$ $Date$ --> - - + + - + @@ -290,6 +290,7 @@ $Date$ + diff --git a/general/prog/icedtea6.xml b/general/prog/icedtea6.xml new file mode 100644 index 0000000000..aa655a17db --- /dev/null +++ b/general/prog/icedtea6.xml @@ -0,0 +1,920 @@ + + + %general-entities; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + $LastChangedBy$ + $Date$ + + + IcedTea6-&icedtea6-version; + + + IcedTea6 + + + + Introduction to IcedTea6 + + IcedTea6 provides a build harness for the + OpenJDK package, Oracle's recently open-sourced + Java development environment. In order to + provide a completely free runtime environment, similar to Oracle's closed + distribution, the IcedTea6 package also + provides free versions of the Java browser + plugin, and Java Web Start application, which + have not been open-sourced to date. IcedTea6 is + useful for developing Java programs and provides + a complete runtime environment to run Java + programs. + + OpenJDK (and IcedTea6) is GPL'd code, however, it should be explained + that there has been a special exception made for non-free projects to use + these classes in their products. In similar fashion to the LGPL, which + allows non-free programs to link to libraries provided by free software, + the GNU + General Public License, version 2, with the Classpath Exception + allows third party programs to use classes provided by free software + without the requirment that the third party software also be free. As with + the LGPL, any modifictaions made to the free software portions of a + third party application, must also be made freely availible. + + + The OpenJDK source bundle includes a very thorough, open source + test suite titled JTreg. + JTreg is intended to test the just built JDK + for reasonable compatibility with the closed Oracle JDK. However, in + order for an independent implementation to claim compatibility, including + the Oracle sponsored OpenJDK project, it must + pass a closed JCK/TCK test suite. No claims + of compatibility, even partial compatibility, may be made without + passing an approved test suite. + + Oracle does provide free community access, on a case by case basis, + to a closed toolkit to ensure 100% compatibility with its proprietary JDK. + The binary version provided here has not been tested against the + + TCK. Any version that is built using the instructions given, + cannot claim to be compatible with the proprietary JDK, without the user + applying for, and completing the compatibility tests themselves. + + With that in mind, the binaries produced using this build method are + regularly tested against the TCK by the members listed on the site above. + In addition to the community license above, an educational, non-commercial + license for the TCK can be obtained from + + here. + + + Binary Package Information + + + Binary download: + + + Download MD5 sum: &icedtea6-bin-md5sum; + + + Download size (binary): &icedtea6-bin-size; + + + Estimated disk space required: &icedtea6-bin-buildsize; + + + + Source Package Information + + + + IcedTea6 Source + + + &icedtea6-source-md5sum; + &icedtea6-source-size; + + + + + OpenJDK Source + + + &openjdk-md5sum; + &openjdk-size; + + + + + JAF Source + + + &jaf-md5sum; + &jaf-size; + + + + + JAXP Source + + + &jaxp-md5sum; + &jaxp-size; + + + + + JAXWS Source + + + &jaxws-md5sum; + &jaxws-size; + + + + + Estimated disk space required: &icedtea6-src-buildsize; + + + Estimated build time: &icedtea6-time; + + + + Additional Downloads + + Required Patches + + + + + + + + + + + + + Required Jar Files + + + Eclipse Java Complier + + + &ecj-md5sum; + &ecj-size; + + + + + Rhino Java Script + + + &rhino-md5sum; + &rhino-size; + + + + + Xalan + + + &xalan-md5sum; + &xalan-size; + + + + + Xerces + + + &xerces-md5sum; + &xerces-size; + + + + + IcedTea6 Dependencies + + Optional Runtime Dependencies (required for + source installation) + + , + , + , and + + libXp + + + + Additional Requirements + (for source build, including optional requirements) + + , + , + , and + + + User Notes: + + + + + + Installation of IcedTea6 + + The instructions below install both the binary and source versions. + You may stop after installing the binary version or continue on installing + the source version. You can choose to keep either or both. + + Install the binary IcedTea6 with the + following commands as the root + user: + +cp -R j2sdk-image /opt/icedtea6-&icedtea6-version;-bin && +chown -R root:root /opt/icedtea6-&icedtea6-version;-bin + + Configure the temporary IcedTea6 + installation with the following commands: + +export PATH_HOLD="${PATH}" && +export JAVA_HOME="/opt/icedtea6-&icedtea6-version;-bin" && +export CLASSPATH=".:/usr/share/java" && +export PATH="${PATH}:${JAVA_HOME}/bin" + + The binary version is now installed. + + If you don't want to compile the sources, skip ahead to the + configuration section. + + The source build of IcedTea6 requires + . You'll need to build that first to satisfy + the reciprocal dependency, and return to this section to continue building + IcedTea6. + + IcedTea6 requires several freely + available jar files for the bootstrap compiler. You may leave these + items in place after the build is complete, as they will be needed by other + programs, or remove them if you choose. You can optionally choose not to + install them at all, and provide the necessary configure options to find + the files. Install the necessary tools with the following commands as the + root user: + +mkdir jarfiles && +cd jarfiles && +unzip ../../rhino1_7R2.zip && +unzip ../../xalan-j_2_7_1-bin.zip && +unzip ../../Xerces-J-bin.2.9.0.zip && +install -v -d -m755 /usr/share/java && +install -v -m755 rhino1_7R2/*.jar /usr/share/java && +install -v -m755 xalan-j_2_7_1/*.jar /usr/share/java && +install -v -m755 xerces-2_9_0/*.jar /usr/share/java && +install -v -m755 ../../ecj-3.6.jar /usr/share/java && +ln -s ecj-3.6.jar /usr/share/java/ecj.jar && +ln -s xalan.jar /usr/share/java/xalan2.jar && +cd .. && +rm -r jarfiles + + IcedTea6 is composed of several individual + components of the proprietary JDK that have been + relicensed under an open source license. Put all of the individual + components into the source tree with the following commands: + +mkdir drops && +cp -v ../jdk6-jaf-&openjdk-build;.zip drops/ && +cp -v ../jdk6-jaxp-&openjdk-build;.zip drops/ && +cp -v ../jdk6-jaxws-&openjdk-build;.zip drops/ && +cp -v ../openjdk-6-src-&openjdk-build;-&openjdk-date;.tar.gz . + + Apply a patch to allow building with an installed + IcedTea6 as the bootstrap JDK: + +patch -Np1 -i ../icedtea6-&icedtea6-version;-upstream_fixes-1.patch + + Apply a patch to fix several tests, and disable invalid tests: + +patch -Np1 -i ../icedtea6-&icedtea6-version;-testsuite_fixes-1.patch + + Apply a patch to generate a valid cacerts file using the system CA + certificates: + +patch -Np1 -i ../icedtea6-&icedtea6-version;-generate_cacerts-1.patch + + Configure and build the package with the following commands: + +unset JAVA_HOME && +./autogen.sh && +./configure --with-jdk-home=/opt/icedtea6-&icedtea6-version;-bin \ + --enable-cacerts && +make + + To test the results, issue: make check. The + testsuite should complete without error. + + Install the package with the following commands as the + root user: + +cp -R openjdk.build/j2sdk-image /opt/icedtea6-&icedtea6-version; && +chown -R root:root /opt/icedtea6-&icedtea6-version; + + + + + Command Explanations + + ./autogen.sh: This command forces rebuilding of + auto-generated files to account for new options added to + configure. + + --with-jdk-home: This switch provides the + location of our temporary JDK. + + --enable-cacerts: This switch enables the + build to generate a cacerts file, from the system installed CA + certificates, suitable for use by + IcedTea6. + + + + + Configuring IcedTea6 + + + Configuration Information + + There are now two IcedTea6 SDKs + installed in /opt. You should decide on which one + you would like to use as the default. For example if you decide to use + the precompiled IcedTea6, do the following as + the root user: + +ln -v -nsf icedtea6-&icedtea6-version;-bin /opt/icedtea + + The information below assumes your system is set up using the + instructions found in + . You may need to + extract the relevant information below and incorporate it into your + system's startup files if your system is set up differently. + + Add the following icedtea.sh shell startup file + to the /etc/profile.d directory with the following + commands as the root user: + +cat > /etc/profile.d/icedtea.sh << "EOF" +# Begin /etc/profile.d/icedtea.sh + +# Set JAVA_HOME directory +JAVA_HOME=/opt/icedtea + +# Adjust PATH +pathappend ${JAVA_HOME}/bin PATH + +# Auto Java CLASSPATH +# Copy jar files to, or create symlinks in this directory +AUTO_CLASSPATH_DIR=/usr/share/java +pathprepend . CLASSPATH +for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do + pathappend $dir CLASSPATH +done + +export JAVA_HOME CLASSPATH +unset AUTO_CLASSPATH_DIR +unset dir + +# End /etc/profile.d/icedtea.sh +EOF + + The Java plugin is located at + $JAVA_HOME/jre/plugin/arch/IcedTeaPlugin.so. + Make a symbolic link to the file in that directory from your browser(s) + plugins directory. + + + The plugin must be a symlink for it to work. If not, the browsers + will crash when you attempt to load a Java + application. + + + + + + + + Contents + + + Installed Programs + Installed Libraries + Installed Directory + + + appletviewer, apt, extcheck, idlj, HtmlConverter, jar, + jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi, + javaws, jconsole, jdb, jhat, jinfo, jmap, jps, + jrunscript, jsadebugd, jstack, jstat, jstatd, keytool, + native2ascii, orbd, pack200, policytool, rmic, rmid, rmiregistry, + schemagen, serialver, servertool, tnameserv, unpack200, + wsgen, wsimport, and xjc + $JAVA_HOME/lib/*, and + $JAVA_HOME/jre/lib/* + /opt/icedtea6-&icedtea6-version; + + + + + Short Descriptions + + + + + appletviewer + + runs Java applets outside of the context of a browser. + + appletviewer + + + + + + apt + + is an annotation processing tool. + + apt + + + + + + extcheck + + checks a specified jar file for title and version conflicts + with any extensions installed in the IcedTea + software. + + extcheck + + + + + + idlj + + generates Java bindings from a given IDL file. + + idlj + + + + + + jar + + combines multiple files into a single jar archive. + + jar + + + + + + jarsigner + + signs jar files and verifies the signatures and integrity + of a signed jar file. + + jarsigner + + + + + + java + + launches a Java application by starting a Java runtime + environment, loading a specified class and invoking its main + method. + + java + + + + + + javac + + reads class and interface definitions, written in the + Java programming language, and compiles them into bytecode + class files. + + javac + + + + + + javadoc + + parses the declarations and documentation comments in a + set of Java source files and produces a corresponding set of + HTML pages describing the classes, interfaces,constructors, + methods, and fields. + + javadoc + + + + + + javah + + generates C header and source files + that are needed to implement native methods. + + javah + + + + + + javap + + disassembles a Java class file. + + javap + + + + + + java-rmi.cgi + + is the Java RMI client. + + java-rmi.cgi + + + + + + javaws + + launches Java application/applets hosted on a network. + + javaws + + + + + + jconsole + + is a graphical console tool to monitor and manage both + local and remote Java applications and virtual machines. + + jconsole + + + + + + jdb + + is a simple command-line debugger for Java classes. + + jdb + + + + + + jhat + + parses a java heap dump file and allows viewing + in a webbrowser. + + jhat + + + + + + jinfo + + prints Java configuration information for a given Java + process, core file, or a remote debug server. + + jinfo + + + + + + jmap + + prints shared object memory maps or heap memory details + of a given process, core file, or a remote debug server. + + jmap + + + + + + jps + + lists the instrumented JVMs on the target system. + + jps + + + + + + jrunscript + + is a command line script shell. + + jrunscript + + + + + + jsadebugd + + attaches to a Java process or core file and acts as a + debug server. + + jsadebugd + + + + + + jstack + + prints Java stack traces of Java threads for a given + Java process, core file, or a remote debug server. + + jstack + + + + + + jstat + + displays performance statistics for an instrumented JVM. + + jstat + + + + + + jstatd + + is an RMI server application that monitors for the creation + and termination of instrumented JVMs. + + jstatd + + + + + + keytool + + is a key and certificate management utility. + + keytool + + + + + + native2ascii + + converts files that contain non-supported character encoding + into files containing Latin-1 or Unicode-encoded characters. + + native2ascii + + + + + + orbd + + is used to enable clients to transparently locate and invoke + persistent objects on servers in the CORBA environment. + + orbd + + + + + + pack200 + + is a Java application that transforms a jar file into a + compressed pack200 file using the Java gzip compressor. + + pack200 + + + + + + pluginappletviewer + + is a helper program for IcedTeaPlugin.so. + + pluginappletviewer + + + + + + policytool + + creates and manages a policy file graphically. + + policytool + + + + + + rmic + + generates stub and skeleton class files for remote objects + from the names of compiled Java classes that contain remote + object implementations. + + rmic + + + + + + rmid + + starts the activation system daemon. + + rmid + + + + + + rmiregistry + + creates and starts a remote object registry on the specified + port on the current host. + + rmiregistry + + + + + + schemagen + + is a Java XML binding schema generator. + + schemagen + + + + + + serialver + + returns the serialVersionUID for one or more classes in a + form suitable for copying into an evolving class. + + serialver + + + + + + servertool + + provides an ease-of-use interface for application programmers + to register, unregister, startup and shutdown a server. + + servertool + + + + + + tnameserv + + starts the Java IDL name server. + + tnameserv + + + + + + unpack200 + + is a native implementation that transforms a packed file + produced by pack200 into a jar + file. + + unpack200 + + + + + + wsgen + + generates JAX-WS portable artifacts used in JAX-WS + web services. + + wsgen + + + + + + wsimport + + generates JAX-WS portable artifacts. + + wsimport + + + + + + xjc + + is a Java XML binding compiler. + + xjc + + + + + + + + + diff --git a/general/prog/prog.xml b/general/prog/prog.xml index 15c14534e5..7ba5a75a70 100644 --- a/general/prog/prog.xml +++ b/general/prog/prog.xml @@ -29,6 +29,7 @@ $Date$ + diff --git a/introduction/welcome/changelog.xml b/introduction/welcome/changelog.xml index feee004a05..701fbb7543 100644 --- a/introduction/welcome/changelog.xml +++ b/introduction/welcome/changelog.xml @@ -40,6 +40,15 @@ --> + + September 8th, 2010 + + + [dj] - Added IcedTea6-1.9. + + + + September 6th, 2010 diff --git a/introduction/welcome/credits.xml b/introduction/welcome/credits.xml index d396663539..15b5b6c887 100644 --- a/introduction/welcome/credits.xml +++ b/introduction/welcome/credits.xml @@ -273,10 +273,9 @@ - Archive::Zip, cracklib, JDK6, ksh, libdrm, libpcap, Mesa, - - netfs, OpenOffice-2, PPP (update), Samba-3, Subversion, - Xorg-7 and xterm: + Archive::Zip, cracklib, IcedTea6, JDK6, ksh, libdrm, libpcap, + Mesa, netfs, OpenOffice-2, + PPP (update), Samba-3, Subversion, Xorg-7 and xterm: DJ Lucas