Index: general/prog/java.xml
===================================================================
--- general/prog/java.xml	(revision 1590eb90746937895f919a902297a53b565e6417)
+++ general/prog/java.xml	(revision 5aa8088907f6871c1ea334a955242363b3f84ff6)
@@ -7,10 +7,10 @@
   <!ENTITY anduin-download             "http://anduin.linuxfromscratch.org/files/BLFS/OpenJDK-&openjdk-version;">
   <!ENTITY openjdk-download-binary-x86 "&anduin-download;/OpenJDK-&openjdk-version;-i686-bin.tar.xz">
-  <!ENTITY openjdk-bin-md5sum-x86      "752a869d9dfb6c3a978f59f87eedafbf">
+  <!ENTITY openjdk-bin-md5sum-x86      "38296c3c879afde561726fa8505016f1">
   <!ENTITY openjdk-bin-size-x86        "57 MB">
   <!ENTITY openjdk-bin-buildsize-x86   "166 MB">
 
   <!ENTITY openjdk-download-binary-x64 "&anduin-download;/OpenJDK-&openjdk-version;-x86_64-bin.tar.xz">
-  <!ENTITY openjdk-bin-md5sum-x64      "91331d899c4f42dfe5f4016e173cafab">
+  <!ENTITY openjdk-bin-md5sum-x64      "82e13c0ff68e8f3ac8d1a5cd32f1f65c">
   <!ENTITY openjdk-bin-size-x64        "58 MB">
   <!ENTITY openjdk-bin-buildsize-x64   "169 MB">
Index: general/prog/openjdk.xml
===================================================================
--- general/prog/openjdk.xml	(revision 1590eb90746937895f919a902297a53b565e6417)
+++ general/prog/openjdk.xml	(revision 5aa8088907f6871c1ea334a955242363b3f84ff6)
@@ -5,6 +5,6 @@
   %general-entities;
 
-  <!ENTITY ojdk-upd                  "51">
-  <!ENTITY ojdk-bd                   "b16">
+  <!ENTITY ojdk-upd                  "60">
+  <!ENTITY ojdk-bd                   "b27">
   <!ENTITY ojdk-tarball              "jdk8u&ojdk-upd;-&ojdk-bd;.tar.bz2">
   <!ENTITY ojdk-repo                 "http://hg.openjdk.java.net/jdk8u/jdk8u60">
@@ -13,44 +13,25 @@
   <!ENTITY anduin-download           "http://anduin.linuxfromscratch.org/files/BLFS/OpenJDK-&openjdk-version;">
 
-  <!ENTITY ojdk-md5sum               "b7ff36d84ddef546ea84e7e05c19a43f">
-  <!ENTITY ojdk-size                 "388 KB">
-
-  <!ENTITY corba-download            "&anduin-download;/corba.tar.xz">
-  <!ENTITY corba-md5sum              "90bf1db1628913a590b1be044dc61569">
-  <!ENTITY corba-size                "918 KB">
-
-  <!ENTITY hotspot-download          "&anduin-download;/hotspot.tar.xz">
-  <!ENTITY hotspot-md5sum            "5702b0b10817111fd2136e9abc82f4d8">
-  <!ENTITY hotspot-size              "6.3 MB">
-
-  <!ENTITY jaxp-download             "&anduin-download;/jaxp.tar.xz">
-  <!ENTITY jaxp-md5sum               "37afb7eea36dd0443baa6de379f441b1">
-  <!ENTITY jaxp-size                 "2.2 MB">
-
-  <!ENTITY jaxws-download            "&anduin-download;/jaxws.tar.xz">
-  <!ENTITY jaxws-md5sum              "180c01db60522f2e349348cca72ff90c">
-  <!ENTITY jaxws-size                "2.2 MB">
-
-  <!ENTITY jdk-download              "&anduin-download;/jdk.tar.xz">
-  <!ENTITY jdk-md5sum                "0c0b0c3a4698ca8669e78251327ec3ad">
-  <!ENTITY jdk-size                  "36.4 MB">
-
-  <!ENTITY langtools-download        "&anduin-download;/langtools.tar.xz">
-  <!ENTITY langtools-md5sum          "b2f3787e284e1df1abe66d728e290abb">
-  <!ENTITY langtools-size            "2.0 MB">
-
-  <!ENTITY nashorn-download          "&anduin-download;/nashorn.tar.xz">
-  <!ENTITY nashorn-md5sum            "9c9882d6b603274be3e9c7def0edba40">
-  <!ENTITY nashorn-size              "2.1 MB">
-
-  <!ENTITY jtreg-version             "4.1-b12-356">
-  <!ENTITY jtreg-download            "&anduin-download;/jtreg&jtreg-version;.tar.xz">
-  <!ENTITY jtreg-md5sum              "1c8609e1078411a4f6efdd0c194c1716">
-  <!ENTITY jtreg-size                "7.2 MB">
+  <!ENTITY ojdk-md5sum               "bcaf6f51627e8f052eff0fdcd8578b4f">
+  <!ENTITY ojdk-size                 "395 KB">
+
+  <!ENTITY corba-md5sum              "002432f496bab8c85f6baf61d65dca27">
+  <!ENTITY hotspot-md5sum            "a4ebec7c61aa154804761127a1f75eae">
+  <!ENTITY jaxp-md5sum               "9a7b2a534b4a01ebb559b60023882809">
+  <!ENTITY jaxws-md5sum              "7ff3e1154d79d208ae89c24355254b49">
+  <!ENTITY jdk-md5sum                "2f5874a62c2bc74b99118f66d82886da">
+  <!ENTITY langtools-md5sum          "57ccac8dc86d993e64ff920feb9e54ab">
+  <!ENTITY nashorn-md5sum            "a8fccf7be7451205e6048b9b2fcd5b24">
+  <!ENTITY total-download-size       "52 MB">
+
+  <!ENTITY jtreg-version             "4.1-b12-389">
+  <!ENTITY jtreg-download            "&anduin-download;/jtreg-&jtreg-version;.tar.gz">
+  <!ENTITY jtreg-md5sum              "30a99ab95186741778ae3fa2b248b83b">
+  <!ENTITY jtreg-size                "7.4 MB">
 
   <!ENTITY icedtea-web-download      "http://icedtea.classpath.org/download/source/icedtea-web-&icedtea-web-version;.tar.gz">
 
-  <!ENTITY ojdk-buildsize           "3.6 GB (additional 536 MB for tests)">
-  <!ENTITY ojdk-time                "10 SBU (additional 105 SBU for tests)">
+  <!ENTITY ojdk-buildsize           "3.7 GB (additional 371 MB for tests)">
+  <!ENTITY ojdk-time                "12 SBU (additional 100 SBU for tests)">
 ]>
 
@@ -81,5 +62,5 @@
     </para>
 
-    &lfs77_checked;&gcc5_checked;
+    &lfs78_checked;
 
     <note>
@@ -151,79 +132,9 @@
         </para>
       </listitem>
-    </itemizedlist>
-
-    <para>
-      The following files may be downladed from the OpenJDK mercurial
-      repository using the addresses <ulink
-      url="&ojdk-repo;/&lt;component&gt;/archive/&ojdk-tarball;"/>,
-      where &lt;component&gt; is the name of the JVM component (corba,
-      hostspot, and so on), but that involves renaming the downloaded files,
-      and renaming the extracted directories.
-      For convenience, the BLFS editors have made the files available in an LFS
-      website.
-    </para>
-
-    <itemizedlist spacing="compact">
       <listitem>
-        <para>Corba Source
-          <simplelist>
-            <member>Download: <ulink url="&corba-download;"/></member>
-            <member>Download MD5 sum: &corba-md5sum;</member>
-            <member>Download Size: &corba-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>Hotspot Source
-          <simplelist>
-            <member>Download: <ulink url="&hotspot-download;"/></member>
-            <member>Download MD5 sum: &hotspot-md5sum;</member>
-            <member>Download Size: &hotspot-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>JAXP Source
-          <simplelist>
-            <member>Download: <ulink url="&jaxp-download;"/></member>
-            <member>Download MD5 sum: &jaxp-md5sum;</member>
-            <member>Download Size: &jaxp-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>JAXWS Source
-          <simplelist>
-            <member>Download: <ulink url="&jaxws-download;"/></member>
-            <member>Download MD5 sum: &jaxws-md5sum;</member>
-            <member>Download Size: &jaxws-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>Langtools Source
-          <simplelist>
-            <member>Download: <ulink url="&langtools-download;"/></member>
-            <member>Download MD5 sum: &langtools-md5sum;</member>
-            <member>Download Size: &langtools-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>JDK Source
-          <simplelist>
-            <member>Download: <ulink url="&jdk-download;"/></member>
-            <member>Download MD5 sum: &jdk-md5sum;</member>
-            <member>Download Size: &jdk-size;</member>
-          </simplelist>
-        </para>
-      </listitem>
-      <listitem>
-        <para>Nashorn Source
-          <simplelist>
-            <member>Download: <ulink url="&nashorn-download;"/></member>
-            <member>Download MD5 sum: &nashorn-md5sum;</member>
-            <member>Download Size: &nashorn-size;</member>
-          </simplelist>
+        <para>
+          In addition to the root package, the instructions below first
+          download seven subproject tarballs,
+          whose total size is &total-download-size;.
         </para>
       </listitem>
@@ -270,6 +181,7 @@
     <bridgehead renderas="sect4">Recommended</bridgehead>
     <para role="recommended">
-      <xref linkend="cacerts"/> and
-      <xref linkend="giflib"/>
+      <xref linkend="cacerts"/>,
+      <xref linkend="giflib"/>, and
+      <xref linkend="wget"/>
     </para>
 
@@ -296,11 +208,25 @@
     </para>
 
-<screen><userinput>tar -xf ../corba.tar.xz      &amp;&amp;
-tar -xf ../hotspot.tar.xz    &amp;&amp;
-tar -xf ../jaxp.tar.xz       &amp;&amp;
-tar -xf ../jaxws.tar.xz      &amp;&amp;
-tar -xf ../jdk.tar.xz        &amp;&amp;
-tar -xf ../langtools.tar.xz  &amp;&amp;
-tar -xf ../nashorn.tar.xz</userinput></screen>
+<screen><userinput>cat &gt; subprojects.md5 &lt;&lt; EOF &amp;&amp;
+&corba-md5sum;  corba.tar.bz2
+&hotspot-md5sum;  hotspot.tar.bz2
+&jaxp-md5sum;  jaxp.tar.bz2
+&jaxws-md5sum;  jaxws.tar.bz2
+&langtools-md5sum;  langtools.tar.bz2
+&jdk-md5sum;  jdk.tar.bz2
+&nashorn-md5sum;  nashorn.tar.bz2
+EOF
+
+for subproject in corba hotspot jaxp jaxws langtools jdk nashorn; do
+  wget -c &ojdk-repo;/${subproject}/archive/&ojdk-tarball; \
+       -O ${subproject}.tar.bz2
+done &amp;&amp;
+
+md5sum -c subprojects.md5 &amp;&amp;
+
+for subproject in corba hotspot jaxp jaxws langtools jdk nashorn; do
+  mkdir -pv ${subproject} &amp;&amp;
+  tar -xf ${subproject}.tar.bz2 --strip-components=1 -C ${subproject}
+done</userinput></screen>
 
     <para>
@@ -308,26 +234,8 @@
     </para>
 
-<screen><userinput>tar -xf ../jtreg&jtreg-version;.tar.xz</userinput></screen>
+<screen><userinput>tar -xf ../jtreg-&jtreg-version;.tar.gz</userinput></screen>
 
 <!--TODO: it might be better to add instructions for the cacerts file at
 this place and to use the switch "with-cacerts-file" -->
-
-    <para>
-      Fix an issue with the new (since 5.1.0) giflib API:
-    </para>
-
-<screen><userinput>sed -e 's/DGifCloseFile(gif/&amp;, NULL/' \
-    -e '/DGifOpen/s/c)/c, NULL)/'     \
-    -i jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c</userinput></screen>
-
-    <para>
-      One file in hotspot needs a change, since it relies on a non-normative
-      compiler behavior, which has changed with GCC version 5. Note that the change
-      works also with previous versions.
-    </para>
-
-<screen><userinput>sed -e 's/(hi - lo)/ hi - lo /' \
-    -e 's/(lo - hi)/ lo - hi /' \
-    -i hotspot/src/share/vm/opto/type.cpp</userinput></screen>
 
     <note>
@@ -348,6 +256,8 @@
     </note>
 
-    <para>Configure and build the package with the following commands
-    (--with-milestone value can be modified to fit user preferences):</para>
+    <para>
+      Configure and build the package with the following commands
+      (--with-milestone value can be modified to fit user preferences):
+    </para>
 
 <screen><userinput>unset JAVA_HOME               &amp;&amp;
@@ -359,7 +269,5 @@
    --with-zlib=system         \
    --with-giflib=system       &amp;&amp;
-make DEBUG_BINARIES=true                 \
-     DISABLE_HOTSPOT_OS_VERSION_CHECK=ok \
-     all  &amp;&amp;
+make DEBUG_BINARIES=true all  &amp;&amp;
 find build/*/images/j2sdk-image -iname \*.diz -delete
 </userinput></screen>
@@ -384,5 +292,5 @@
 "export DISPLAY=... && somecommand &" exports only DISPLAY to "somecommand"
 but not to the current environment, and
-"echo $! .... &&" does not echo the right PID. SO all && suppressed.-->
+"echo $! .... &&" does not echo the right PID. So all && suppressed.-->
 <screen role='nodump'><userinput>if [ -n "$DISPLAY" ]; then
   OLD_DISP=$DISPLAY
@@ -460,6 +368,6 @@
     <para>
       Next some cleanup has to be done. The instructions below only stop the
-      frame buffer, but it has been reported that some java VM may be left running
-      after the tests, so it is necessary to check orphaned processes:
+      frame buffer, but it has been reported that some java VM may be left
+      running after the tests, so it is necessary to check orphaned processes:
     </para>
 
@@ -587,9 +495,6 @@
 
     <para>
-      <command>make DEBUG_BINARIES=true
-      DISABLE_HOTSPOT_OS_VERSION_CHECK=ok all</command>: The build fails on
-      32 bit machines if DEBUG_BINARIES is not set to true. Furthermore, OS
-      version checking in hotspot's Makefile does not account for Linux version
-      4.x. Disabling the test is harmless and allows building.
+      <command>make DEBUG_BINARIES=true all</command>: The build fails on
+      32 bit machines if DEBUG_BINARIES is not set to true.
     </para>
 
@@ -609,12 +514,16 @@
       <title>Configuration Information</title>
 
-    <para>Normally, the JAVA environment has been configured after installing
-    the binary version, and can be used with the just built package as well.
-    Review <xref linkend="ojdk-conf"/> in case you want to modify
-    something.</para>
-
-    <para>To test if the man pages are correctly installed, issue
-    <command>source /etc/profile</command> and <command>man java</command> to
-    display the respective man page.</para>
+      <para>
+        Normally, the JAVA environment has been configured after installing
+        the binary version, and can be used with the just built package as well.
+        Review <xref linkend="ojdk-conf"/> in case you want to modify
+        something.
+      </para>
+
+      <para>
+        To test if the man pages are correctly installed, issue
+        <command>source /etc/profile</command> and <command>man java</command>
+        to display the respective man page.
+      </para>
 
     </sect3>
@@ -626,8 +535,8 @@
       <para>
         <application>OpenJDK</application> uses its own format for the
-        CA certificates. Those certificates are located in a file named <filename>
-        /opt/jdk/jre/lib/security/cacerts</filename>. That file may be generated
-        from the one installed using the instructions on the <xref
-        linkend="cacerts"/> page, using the following procedure.
+        CA certificates. Those certificates are located in a file named
+        <filename>/opt/jdk/jre/lib/security/cacerts</filename>. That file
+        may be generated from the one installed using the instructions on the
+        <xref linkend="cacerts"/> page, with the following procedure.
         First, generate the <command>mkcacerts</command> script
         as the <systemitem class="username">root</systemitem> user:
Index: introduction/welcome/changelog.xml
===================================================================
--- introduction/welcome/changelog.xml	(revision 1590eb90746937895f919a902297a53b565e6417)
+++ introduction/welcome/changelog.xml	(revision 5aa8088907f6871c1ea334a955242363b3f84ff6)
@@ -48,4 +48,8 @@
       <para>September 13th, 2015</para>
       <itemizedlist>
+        <listitem>
+          <para>[pierre] - Update to OpenJDK-1.8.0.60. Fixes
+           <ulink url="&blfs-ticket-root;6903">#6903</ulink>.</para>
+        </listitem>
         <listitem>
           <para>[fernando] - Update to zsh-5.1.1. Fixes
Index: packages.ent
===================================================================
--- packages.ent	(revision 1590eb90746937895f919a902297a53b565e6417)
+++ packages.ent	(revision 5aa8088907f6871c1ea334a955242363b3f84ff6)
@@ -287,5 +287,5 @@
 <!ENTITY junit-version                "4.11">
 <!ENTITY hamcrest-version             "1.3">
-<!ENTITY openjdk-version              "1.8.0.51">
+<!ENTITY openjdk-version              "1.8.0.60">
 
 <!ENTITY python2-majorver             "2.7">
