7003845: README-builds document proper location of forest extension, provide alternatives

Wed, 22 Dec 2010 12:25:52 -0800

author
ohair
date
Wed, 22 Dec 2010 12:25:52 -0800
changeset 276
dc9eb519c6ed
parent 263
6d8ed82e5070
child 277
4d044e6e1080

7003845: README-builds document proper location of forest extension, provide alternatives
Reviewed-by: robilad

README file | annotate | diff | comparison | revisions
README-builds.html file | annotate | diff | comparison | revisions
get_source.sh file | annotate | diff | comparison | revisions
make/scripts/hgforest.sh file | annotate | diff | comparison | revisions
     1.1 --- a/README	Mon Dec 20 08:44:58 2010 -0800
     1.2 +++ b/README	Wed Dec 22 12:25:52 2010 -0800
     1.3 @@ -1,28 +1,38 @@
     1.4  README:
     1.5 -  This file should be located at the top of the OpenJDK Mercurial repository
     1.6 -  forest. This top or enclosing repository will include a "make" directory,
     1.7 -  and a Makefile at the very top of the repository.
     1.8 -  It should also include the 6 repositories: "jdk", "hotspot", "langtools",
     1.9 -  "corba", "jaxws"  and "jaxp".
    1.10 +  This file should be located at the top of the OpenJDK Mercurial root
    1.11 +  repository. This root repository will include a "make" directory,
    1.12 +  and a Makefile for building the entire OpenJDK.
    1.13 +  A full OpenJDK repository set (forest) should also include the following
    1.14 +  6 nested repositories:
    1.15 +    "jdk", "hotspot", "langtools", "corba", "jaxws"  and "jaxp".
    1.16 +  There are also several source downloads for the jax* repositories that
    1.17 +  will be needed.
    1.18 +
    1.19 +  This one root repository can be obtained with something like:
    1.20 +    hg clone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7
    1.21 +  To make sure you have all the nested repositories, you can run:
    1.22 +    cd openjdk7 && sh ./get_source.sh
    1.23 +  (This is identical to using the Mercurial Forest Extension command 
    1.24 +   'hg fclone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7').
    1.25 +  People unfamiliar with Mercurial should read the first few chapters of
    1.26 +  the Mercurial book: http://hgbook.red-bean.com/read/
    1.27  
    1.28    See http://openjdk.java.net/ for more information about the OpenJDK.
    1.29  
    1.30  Simple Build Instructions:
    1.31 +  
    1.32 +  0. Get the necessary system software/packages installed on your system, see
    1.33 +     http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html
    1.34  
    1.35 -  1. Download and install a JDK 6 from
    1.36 +  1. If you don't have a jdk6 installed, download and install a JDK 6 from
    1.37       http://java.sun.com/javase/downloads/index.jsp
    1.38 -     Set the environment variable ALT_BOOTDIR to the location of this JDK 6.
    1.39 +     Set the environment variable ALT_BOOTDIR to the location of JDK 6.
    1.40  
    1.41 -  2. Download and install the Binary Plugs for the most recent JDK7 from
    1.42 -     http://download.java.net/openjdk/jdk7/
    1.43 -     Set the environment variable ALT_BINARY_PLUGS_PATH to the location of
    1.44 -     these binary plugs.
    1.45 -     
    1.46 -  3. Check the sanity of doing a build with the current machine:
    1.47 +  2. Check the sanity of doing a build with your current system:
    1.48         gnumake sanity
    1.49       See README-builds.html if you run into problems.
    1.50    
    1.51 -  4. Do a complete build of the jdk:
    1.52 +  3. Do a complete build of the OpenJDK:
    1.53         gnumake all
    1.54       The resulting JDK image should be found in build/*/j2sdk-image
    1.55  
     2.1 --- a/README-builds.html	Mon Dec 20 08:44:58 2010 -0800
     2.2 +++ b/README-builds.html	Wed Dec 22 12:25:52 2010 -0800
     2.3 @@ -24,12 +24,12 @@
     2.4          <h2><a name="introduction">Introduction</a></h2>
     2.5          <blockquote>
     2.6              <p>
     2.7 -            This README file contains build instructions for the 
     2.8 -            <a href="http://openjdk.java.net"  target="_blank">OpenJDK</a>.
     2.9 -            Building the source code for the 
    2.10 -            OpenJDK
    2.11 -            requires
    2.12 -            a certain degree of technical expertise.
    2.13 +                This README file contains build instructions for the
    2.14 +                <a href="http://openjdk.java.net"  target="_blank">OpenJDK</a>.
    2.15 +                Building the source code for the
    2.16 +                OpenJDK
    2.17 +                requires
    2.18 +                a certain degree of technical expertise.
    2.19          </blockquote>
    2.20          <!-- ------------------------------------------------------ -->
    2.21          <hr>
    2.22 @@ -37,18 +37,23 @@
    2.23          <blockquote>
    2.24              <ul>
    2.25                  <li><a href="#introduction">Introduction</a></li>
    2.26 +                <li><a href="#hg">Use of Mercurial</a>
    2.27 +                    <ul>
    2.28 +                        <li><a href="#get_source">Getting the Source</a></li>
    2.29 +                    </ul>
    2.30 +                </li>
    2.31                  <li><a href="#MBE">Minimum Build Environments</a></li>
    2.32                  <li><a href="#SDBE">Specific Developer Build Environments</a>
    2.33                      <ul>
    2.34                          <li><a href="#fedora">Fedora Linux</a> </li>
    2.35                          <li><a href="#centos">CentOS Linux</a> </li>
    2.36 -		        <li><a href="#debian">Debian GNU/Linux</a></li>
    2.37 -			<li><a href="#ubuntu">Ubuntu Linux</a> </li>
    2.38 -		        <li><a href="#opensuse">OpenSUSE</a></li>
    2.39 -		        <li><a href="#mandriva">Mandriva</a></li>
    2.40 -		        <li><a href="#opensolaris">OpenSolaris</a></li>
    2.41 +                        <li><a href="#debian">Debian GNU/Linux</a></li>
    2.42 +                        <li><a href="#ubuntu">Ubuntu Linux</a> </li>
    2.43 +                        <li><a href="#opensuse">OpenSUSE</a></li>
    2.44 +                        <li><a href="#mandriva">Mandriva</a></li>
    2.45 +                        <li><a href="#opensolaris">OpenSolaris</a></li>
    2.46                      </ul>
    2.47 -		</li>
    2.48 +                </li>
    2.49                  <li><a href="#directories">Source Directory Structure</a> </li>
    2.50                  <li><a href="#building">Build Information</a>
    2.51                      <ul>
    2.52 @@ -56,42 +61,43 @@
    2.53                          <li><a href="#linux">Basic Linux System Setup</a> </li>
    2.54                          <li><a href="#solaris">Basic Solaris System Setup</a> </li>
    2.55                          <li><a href="#windows">Basic Windows System Setup</a> </li>
    2.56 -                        <li><a href="#dependencies">Build Dependencies</a> </li>
    2.57 -                        <ul>
    2.58 -                            <li><a href="#bootjdk">Bootstrap JDK</a> </li>
    2.59 -                            <li><a href="#binaryplugs">Binary Plugs</a> </li>
    2.60 -                            <li><a href="#importjdk">Optional Import JDK</a> </li>
    2.61 -                            <li><a href="#ant">Ant</a> </li>
    2.62 -                            <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
    2.63 -                            <li><a href="#compilers">Compilers</a> 
    2.64 -                                <ul>
    2.65 -                                    <li><a href="#msvc32">Microsoft Visual Studio Professional/Express for 32 bit</a> </li>
    2.66 -                                    <li><a href="#msvc64">Microsoft Visual Studio Professional for 64 bit</a> </li>
    2.67 -                                    <li><a href="#mssdk64">Microsoft Windows SDK for 64 bit</a> </li>
    2.68 -                                    <li><a href="#gcc">Linux gcc/binutils</a> </li>
    2.69 -                                    <li><a href="#studio">Sun Studio</a> </li>
    2.70 -                                </ul>
    2.71 -                            </li>
    2.72 -                            <li><a href="#zip">Zip and Unzip</a> </li>
    2.73 -                            <li><a href="#freetype">FreeType2 Fonts</a> </li>
    2.74 -                            <li>Linux and Solaris:
    2.75 -                                <ul>
    2.76 -                                    <li><a href="#cups">CUPS Include files</a> </li>
    2.77 -                                    <li><a href="#xrender">XRender Include files</a></li>
    2.78 -                                </ul>
    2.79 -                            </li>
    2.80 -                            <li>Linux only:
    2.81 -                                <ul>
    2.82 -                                    <li><a href="#alsa">ALSA files</a> </li>
    2.83 -                                </ul>
    2.84 -                            </li>
    2.85 -                            <li>Windows only:
    2.86 -                                <ul>
    2.87 -                                    <li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>)</li>
    2.88 -                                    <li><a href="#dxsdk">DirectX 9.0 SDK</a> </li>
    2.89 -                                </ul>
    2.90 -                            </li>
    2.91 -                        </ul>
    2.92 +                        <li><a href="#dependencies">Build Dependencies</a>
    2.93 +                            <ul>
    2.94 +                                <li><a href="#bootjdk">Bootstrap JDK</a> </li>
    2.95 +                                <li><a href="#binaryplugs">Binary Plugs</a> </li>
    2.96 +                                <li><a href="#importjdk">Optional Import JDK</a> </li>
    2.97 +                                <li><a href="#ant">Ant</a> </li>
    2.98 +                                <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
    2.99 +                                <li><a href="#compilers">Compilers</a>
   2.100 +                                    <ul>
   2.101 +                                        <li><a href="#msvc32">Microsoft Visual Studio Professional/Express for 32 bit</a> </li>
   2.102 +                                        <li><a href="#msvc64">Microsoft Visual Studio Professional for 64 bit</a> </li>
   2.103 +                                        <li><a href="#mssdk64">Microsoft Windows SDK for 64 bit</a> </li>
   2.104 +                                        <li><a href="#gcc">Linux gcc/binutils</a> </li>
   2.105 +                                        <li><a href="#studio">Sun Studio</a> </li>
   2.106 +                                    </ul>
   2.107 +                                </li>
   2.108 +                                <li><a href="#zip">Zip and Unzip</a> </li>
   2.109 +                                <li><a href="#freetype">FreeType2 Fonts</a> </li>
   2.110 +                                <li>Linux and Solaris:
   2.111 +                                    <ul>
   2.112 +                                        <li><a href="#cups">CUPS Include files</a> </li>
   2.113 +                                        <li><a href="#xrender">XRender Include files</a></li>
   2.114 +                                    </ul>
   2.115 +                                </li>
   2.116 +                                <li>Linux only:
   2.117 +                                    <ul>
   2.118 +                                        <li><a href="#alsa">ALSA files</a> </li>
   2.119 +                                    </ul>
   2.120 +                                </li>
   2.121 +                                <li>Windows only:
   2.122 +                                    <ul>
   2.123 +                                        <li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>)</li>
   2.124 +                                        <li><a href="#dxsdk">DirectX 9.0 SDK</a> </li>
   2.125 +                                    </ul>
   2.126 +                                </li>
   2.127 +                            </ul>
   2.128 +                        </li>
   2.129                      </ul>
   2.130                  </li>
   2.131                  <li><a href="#creating">Creating the Build</a> </li>
   2.132 @@ -100,6 +106,76 @@
   2.133                  <li><a href="#troubleshooting">Troubleshooting</a></li>
   2.134              </ul>
   2.135          </blockquote>
   2.136 +
   2.137 +        <!-- ------------------------------------------------------ -->
   2.138 +        <hr>
   2.139 +        <h2><a name="hg">Use of Mercurial</a></h2>
   2.140 +        <blockquote>
   2.141 +            The OpenJDK sources are maintained with the revision control system
   2.142 +            <a href="http://mercurial.selenic.com/wiki/Mercurial">Mercurial</a>.
   2.143 +            If you are new to Mercurial, please see the
   2.144 +            <a href="http://mercurial.selenic.com/wiki/BeginnersGuides">Beginner Guides</a>
   2.145 +            or refer to the <a href=""http://hgbook.red-bean.com/">Mercurial Book</a>.
   2.146 +            The first few chapters of the book provide an excellent overview of
   2.147 +            Mercurial, what it is and how it works.
   2.148 +            <br>
   2.149 +            For using Mercurial with the OpenJDK refer to the
   2.150 +            <a href=""http://openjdk.java.net/guide/repositories.html#installConfig">
   2.151 +               Developer Guide: Installing and Configuring Mercurial</a>
   2.152 +            section for more information.
   2.153 +            The Forest Extension is not part of the Mercurial install,
   2.154 +            and is optional,
   2.155 +            but can be obtained with the following commands:
   2.156 +            <blockquote>
   2.157 +                <tt>
   2.158 +                    hg clone https://bitbucket.org/pmezard/hgforest-crew/overview/ <i>YourHgForest</i>
   2.159 +                </tt>
   2.160 +            </blockquote>
   2.161 +            Once you have the file <tt>forest.py</tt>, you need to add these
   2.162 +            lines to your <tt>${HOME}/.hgrc</tt> file:
   2.163 +            <blockquote>
   2.164 +                <tt>
   2.165 +                    [extensions]
   2.166 +                    <br>forest = <i>YourHgForest</i>/forest.py
   2.167 +                </tt>
   2.168 +            </blockquote>
   2.169 +
   2.170 +            <!-- ------------------------------------------------------ -->
   2.171 +            <h3><a name="get_source">Getting the Source</a></h3>
   2.172 +            <blockquote>
   2.173 +                To get the entire set of OpenJDK Mercurial repositories
   2.174 +                using the Forest Extension:
   2.175 +                <blockquote>
   2.176 +                    <tt>
   2.177 +                        hg fclone http://openjdk.java.net/jdk7/jdk7 <i>YourOpenJDK</i>
   2.178 +                    </tt>
   2.179 +                </blockquote>
   2.180 +                To get the entire set of OpenJDK Mercurial repositories
   2.181 +                without using the Forest Extension:
   2.182 +                <blockquote>
   2.183 +                    <tt>
   2.184 +                        hg clone http://openjdk.java.net/jdk7/jdk7 <i>YourOpenJDK</i>
   2.185 +                        <br>cd <i>YourOpenJDK</i>
   2.186 +                        <br>sh ./get_source.sh
   2.187 +                    </tt>
   2.188 +                </blockquote>
   2.189 +                Once you have all the repositories, the
   2.190 +                script <tt>make/scripts/hgforest.sh</tt>
   2.191 +                can be used to repeat the same <tt>hg</tt>
   2.192 +                command on every repository in the forest, e.g.
   2.193 +                <blockquote>
   2.194 +                    <tt>
   2.195 +                        cd <i>YourOpenJDK</i>
   2.196 +                        <br>sh ./make/scripts/hgforest.sh pull -u
   2.197 +                    </tt>
   2.198 +                </blockquote>
   2.199 +                You may find this script <tt>make/scripts/hgforest.sh</tt> faster
   2.200 +                than the <tt>hg</tt> forest commands provided by the
   2.201 +                Forest Extension.
   2.202 +            </blockquote>
   2.203 +
   2.204 +        </blockquote>
   2.205 +
   2.206          <!-- ------------------------------------------------------ -->
   2.207          <hr>
   2.208          <h2><a name="MBE">Minimum Build Environments</a></h2>
   2.209 @@ -116,8 +192,8 @@
   2.210              specific platforms, and in fact creating these specific platforms
   2.211              may be difficult due to the age of some of this software.
   2.212              <p>
   2.213 -            The minimum OS and C/C++ compiler versions needed for building the
   2.214 -            OpenJDK:
   2.215 +                The minimum OS and C/C++ compiler versions needed for building the
   2.216 +                OpenJDK:
   2.217              <p>
   2.218              <table border="1">
   2.219                  <thead>
   2.220 @@ -146,7 +222,7 @@
   2.221                          <td>Solaris 10u2 + patches 
   2.222                              <br>
   2.223                              See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
   2.224 -                            SunSolve</a> for patch downloads.
   2.225 +                                SunSolve</a> for patch downloads.
   2.226                          </td>
   2.227                          <td>Sun Studio 12 Update 1 + patches</td>
   2.228                          <td>JDK 6u14 FCS </td>
   2.229 @@ -156,7 +232,7 @@
   2.230                          <td>Solaris 10u2 + patches
   2.231                              <br>
   2.232                              See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
   2.233 -                            SunSolve</a> for patch downloads.
   2.234 +                                SunSolve</a> for patch downloads.
   2.235                          </td>
   2.236                          <td>Sun Studio 12 Update 1 + patches</td>
   2.237                          <td>JDK 6u14 FCS </td>
   2.238 @@ -166,7 +242,7 @@
   2.239                          <td>Solaris 10u2 + patches
   2.240                              <br>
   2.241                              See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
   2.242 -                            SunSolve</a> for patch downloads.
   2.243 +                                SunSolve</a> for patch downloads.
   2.244                          </td>
   2.245                          <td>Sun Studio 12 Update 1 + patches</td>
   2.246                          <td>JDK 6u14 FCS </td>
   2.247 @@ -176,7 +252,7 @@
   2.248                          <td>Solaris 10u2 + patches
   2.249                              <br>
   2.250                              See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
   2.251 -                            SunSolve</a> for patch downloads.
   2.252 +                                SunSolve</a> for patch downloads.
   2.253                          </td>
   2.254                          <td>Sun Studio 12 Update 1 + patches</td>
   2.255                          <td>JDK 6u14 FCS </td>
   2.256 @@ -195,14 +271,14 @@
   2.257                      </tr>
   2.258                  </tbody>
   2.259              </table>
   2.260 -	    <p>
   2.261 +            <p>
   2.262  	    These same sources do indeed build on many more systems than the
   2.263  	    above older generation systems, again the above is just a minimum.
   2.264 -	    <p>
   2.265 +            <p>
   2.266  	    Compilation problems with newer or different C/C++ compilers is a
   2.267  	    common problem.
   2.268  	    Similarly, compilation problems related to changes to the
   2.269 -	    <tt>/usr/include</tt> or system header files is also a
   2.270 +                <tt>/usr/include</tt> or system header files is also a
   2.271  	    common problem with newer or unreleased OS versions.
   2.272  	    Please report these types of problems as bugs so that they
   2.273  	    can be dealt with accordingly.
   2.274 @@ -217,57 +293,57 @@
   2.275          <!-- ------------------------------------------------------ -->
   2.276          <h3><a name="fedora">Fedora</a></h3>
   2.277          <blockquote>
   2.278 -	  <h4>Fedora 9</h4>
   2.279 -	  <p>
   2.280 -	    <blockquote>
   2.281 -              After installing <a href="http://fedoraproject.org">Fedora</a> 9 
   2.282 +            <h4>Fedora 9</h4>
   2.283 +            <p>
   2.284 +            <blockquote>
   2.285 +                After installing <a href="http://fedoraproject.org">Fedora</a> 9
   2.286  	      you need to install several build dependencies. The simplest
   2.287  	      way to do it is to execute the following commands as user 
   2.288 -	      <tt>root</tt>:
   2.289 -	      <p/>
   2.290 -	      <code>yum-builddep java-openjdk</code>
   2.291 -	      <p/>
   2.292 -	      <code>yum install gcc gcc-c++</code>
   2.293 -	      <p/>
   2.294 +                <tt>root</tt>:
   2.295 +                <p/>
   2.296 +                <code>yum-builddep java-openjdk</code>
   2.297 +                <p/>
   2.298 +                <code>yum install gcc gcc-c++</code>
   2.299 +                <p/>
   2.300  	      In addition, it's necessary to set a few environment variables for the build:
   2.301  
   2.302 -	      <p/>
   2.303 -	      <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.304 +                <p/>
   2.305 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.306              </blockquote>
   2.307 -	  <h4>Fedora 10</h4>
   2.308 -	  <p>
   2.309 -	    <blockquote>
   2.310 -              After installing <a href="http://fedoraproject.org">Fedora</a> 10 
   2.311 +            <h4>Fedora 10</h4>
   2.312 +            <p>
   2.313 +            <blockquote>
   2.314 +                After installing <a href="http://fedoraproject.org">Fedora</a> 10
   2.315  	      you need to install several build dependencies. The simplest
   2.316  	      way to do it is to execute the following commands as user 
   2.317 -	      <tt>root</tt>:
   2.318 -	      <p/>
   2.319 -	      <code>yum-builddep java-1.6.0-openjdk</code>
   2.320 -	      <p/>
   2.321 -	      <code>yum install gcc gcc-c++</code>
   2.322 -	      <p/>
   2.323 +                <tt>root</tt>:
   2.324 +                <p/>
   2.325 +                <code>yum-builddep java-1.6.0-openjdk</code>
   2.326 +                <p/>
   2.327 +                <code>yum install gcc gcc-c++</code>
   2.328 +                <p/>
   2.329  	      In addition, it's necessary to set a few environment variables for the build:
   2.330  
   2.331 -	      <p/>
   2.332 -	      <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.333 +                <p/>
   2.334 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.335              </blockquote>
   2.336 -	  <h4>Fedora 11</h4>
   2.337 -	  <p>
   2.338 -	    <blockquote>
   2.339 -              After installing <a href="http://fedoraproject.org">Fedora</a> 11 
   2.340 +            <h4>Fedora 11</h4>
   2.341 +            <p>
   2.342 +            <blockquote>
   2.343 +                After installing <a href="http://fedoraproject.org">Fedora</a> 11
   2.344  	      you need to install several build dependencies. The simplest
   2.345  	      way to do it is to execute the following commands as user 
   2.346 -	      <tt>root</tt>:
   2.347 -	      <p/>
   2.348 -	      <code>yum-builddep java-1.6.0-openjdk</code>
   2.349 -	      <p/>
   2.350 -	      <code>yum install gcc gcc-c++</code>
   2.351 -	      <p/>
   2.352 +                <tt>root</tt>:
   2.353 +                <p/>
   2.354 +                <code>yum-builddep java-1.6.0-openjdk</code>
   2.355 +                <p/>
   2.356 +                <code>yum install gcc gcc-c++</code>
   2.357 +                <p/>
   2.358  	      In addition, it's necessary to set a few environment variables for the build:
   2.359  
   2.360 -	      <p/>
   2.361 -	      <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.362 -             </blockquote>
   2.363 +                <p/>
   2.364 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
   2.365 +            </blockquote>
   2.366          </blockquote>
   2.367          <!-- ------------------------------------------------------ -->
   2.368          <h3><a name="centos">CentOS 5.2</a></h3>
   2.369 @@ -285,7 +361,7 @@
   2.370                  </ul>
   2.371              </blockquote>
   2.372              <p>
   2.373 -            Plus the following packages:
   2.374 +                Plus the following packages:
   2.375              <blockquote>
   2.376                  <ul>
   2.377                      <li>cups devel: Cups Development Package</li>
   2.378 @@ -295,188 +371,188 @@
   2.379                  </ul>
   2.380              </blockquote>
   2.381              <p>
   2.382 -            The freetype 2.3 packages don't seem to be available,
   2.383 -            but the freetype 2.3 sources can be downloaded, built,
   2.384 -            and installed easily enough from
   2.385 -            <a href="http://downloads.sourceforge.net/freetype">
   2.386 -            the freetype site</a>.
   2.387 -            Build and install with something like:
   2.388 +                The freetype 2.3 packages don't seem to be available,
   2.389 +                but the freetype 2.3 sources can be downloaded, built,
   2.390 +                and installed easily enough from
   2.391 +                <a href="http://downloads.sourceforge.net/freetype">
   2.392 +                    the freetype site</a>.
   2.393 +                Build and install with something like:
   2.394              <blockquote>
   2.395                  <tt>./configure && make && sudo -u root make install</tt>
   2.396              </blockquote>
   2.397              <p>
   2.398 -            Mercurial packages could not be found easily, but a Google
   2.399 -            search should find ones, and they usually include Python if
   2.400 -            it's needed.
   2.401 +                Mercurial packages could not be found easily, but a Google
   2.402 +                search should find ones, and they usually include Python if
   2.403 +                it's needed.
   2.404          </blockquote>
   2.405          <!-- ------------------------------------------------------ -->
   2.406          <h3><a name="debian">Debian</a></h3>
   2.407          <blockquote>
   2.408              <h4>Debian 5.0 (Lenny)</h4>
   2.409              <p>
   2.410 -	      <blockquote>
   2.411 +            <blockquote>
   2.412  		After installing <a href="http://debian.org">Debian</a> 5 
   2.413  		you need to install several build dependencies. 
   2.414  		The simplest way to install the build dependencies is to 
   2.415  		execute the following commands as user <tt>root</tt>:
   2.416 -		<p/>
   2.417 -		<code>aptitude build-dep openjdk-6</code>
   2.418 -		<p/>
   2.419 -		<code>aptitude install openjdk-6-jdk libmotif-dev</code>
   2.420 -		<p/>
   2.421 +                <p/>
   2.422 +                <code>aptitude build-dep openjdk-6</code>
   2.423 +                <p/>
   2.424 +                <code>aptitude install openjdk-6-jdk libmotif-dev</code>
   2.425 +                <p/>
   2.426  		In addition, it's necessary to set a few environment variables for the build:
   2.427 -		<p/>
   2.428 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.429 -	      </blockquote>
   2.430 +                <p/>
   2.431 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.432 +            </blockquote>
   2.433          </blockquote>
   2.434          <!-- ====================================================== -->
   2.435 -	<h3><a name="ubuntu">Ubuntu</a></h3>
   2.436 +        <h3><a name="ubuntu">Ubuntu</a></h3>
   2.437          <blockquote>
   2.438              <h4>Ubuntu 8.04</h4>
   2.439              <p>
   2.440 -	      <blockquote>
   2.441 +            <blockquote>
   2.442  		After installing <a href="http://ubuntu.org">Ubuntu</a> 8.04 
   2.443  		you need to install several build dependencies. 
   2.444 -		<p/>
   2.445 +                <p/>
   2.446  		First, you need to enable the universe repository in the 
   2.447  		Software Sources application and reload the repository 
   2.448  		information. The Software Sources application is available 
   2.449  		under the System/Administration menu. 
   2.450 -		<p/>
   2.451 +                <p/>
   2.452  		The simplest way to install the build dependencies is to 
   2.453  		execute the following commands:
   2.454 -		<p/>
   2.455 -		<code>sudo aptitude build-dep openjdk-6</code>
   2.456 -		<p/>
   2.457 -		<code>sudo aptitude install openjdk-6-jdk</code>
   2.458 -		<p/>
   2.459 +                <p/>
   2.460 +                <code>sudo aptitude build-dep openjdk-6</code>
   2.461 +                <p/>
   2.462 +                <code>sudo aptitude install openjdk-6-jdk</code>
   2.463 +                <p/>
   2.464  		In addition, it's necessary to set a few environment variables for the build:
   2.465 -		<p/>
   2.466 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.467 -              </blockquote>
   2.468 -           <h4>Ubuntu 8.10</h4>
   2.469 +                <p/>
   2.470 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.471 +            </blockquote>
   2.472 +            <h4>Ubuntu 8.10</h4>
   2.473              <p>
   2.474 -	      <blockquote>
   2.475 +            <blockquote>
   2.476  		After installing <a href="http://ubuntu.org">Ubuntu</a> 8.10 
   2.477  		you need to install several build dependencies. The simplest
   2.478  		way to do it is to execute the following commands:
   2.479 -		<p/>
   2.480 -		<code>sudo aptitude build-dep openjdk-6</code>
   2.481 -		<p/>
   2.482 -		<code>sudo aptitude install openjdk-6-jdk</code>
   2.483 -		<p/>
   2.484 +                <p/>
   2.485 +                <code>sudo aptitude build-dep openjdk-6</code>
   2.486 +                <p/>
   2.487 +                <code>sudo aptitude install openjdk-6-jdk</code>
   2.488 +                <p/>
   2.489  		In addition, it's necessary to set a few environment variables for the build:
   2.490 -		<p/>
   2.491 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.492 -             </blockquote>
   2.493 -           <h4>Ubuntu 9.04</h4>
   2.494 +                <p/>
   2.495 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.496 +            </blockquote>
   2.497 +            <h4>Ubuntu 9.04</h4>
   2.498              <p>
   2.499 -	      <blockquote>
   2.500 +            <blockquote>
   2.501  		After installing <a href="http://ubuntu.org">Ubuntu</a> 9.04 
   2.502  		you need to install several build dependencies. The simplest
   2.503  		way to do it is to execute the following commands:
   2.504 -		<p/>
   2.505 -		<code>sudo aptitude build-dep openjdk-6</code>
   2.506 -		<p/>
   2.507 -		<code>sudo aptitude install openjdk-6-jdk</code>
   2.508 -		<p/>
   2.509 +                <p/>
   2.510 +                <code>sudo aptitude build-dep openjdk-6</code>
   2.511 +                <p/>
   2.512 +                <code>sudo aptitude install openjdk-6-jdk</code>
   2.513 +                <p/>
   2.514  		In addition, it's necessary to set a few environment variables for the build:
   2.515 -		<p/>
   2.516 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.517 -             </blockquote>
   2.518 +                <p/>
   2.519 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
   2.520 +            </blockquote>
   2.521          </blockquote>
   2.522          <!-- ====================================================== -->
   2.523          <h3><a name="opensuse">OpenSUSE</a></h3>
   2.524          <blockquote>
   2.525              <h4>OpenSUSE 11.1</h4>
   2.526              <p>
   2.527 -	      <blockquote>
   2.528 +            <blockquote>
   2.529  		After installing <a href="http://opensuse.org">OpenSUSE</a> 11.1 
   2.530  		you need to install several build dependencies. 
   2.531  		The simplest way to install the build dependencies is to 
   2.532  		execute the following commands:
   2.533 -		<p/>
   2.534 -		<code>sudo zypper source-install -d java-1_6_0-openjdk</code>
   2.535 -		<p/>
   2.536 -		<code>sudo zypper install make</code>
   2.537 -		<p/>
   2.538 +                <p/>
   2.539 +                <code>sudo zypper source-install -d java-1_6_0-openjdk</code>
   2.540 +                <p/>
   2.541 +                <code>sudo zypper install make</code>
   2.542 +                <p/>
   2.543  		In addition, it is necessary to set a few environment variables for the build:
   2.544 -		<p/>
   2.545 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
   2.546 -		<p/>
   2.547 +                <p/>
   2.548 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
   2.549 +                <p/>
   2.550  		Finally, you need to unset the <code>JAVA_HOME</code> environment variable:
   2.551 -		<p/>
   2.552 -		<code>export -n JAVA_HOME</code>
   2.553 -	      </blockquote>
   2.554 -	</blockquote>
   2.555 +                <p/>
   2.556 +                <code>export -n JAVA_HOME</code>
   2.557 +            </blockquote>
   2.558 +        </blockquote>
   2.559          <!-- ====================================================== -->
   2.560          <h3><a name="mandriva">Mandriva</a></h3>
   2.561          <blockquote>
   2.562              <h4>Mandriva Linux One 2009 Spring</h4>
   2.563              <p>
   2.564 -	      <blockquote>
   2.565 +            <blockquote>
   2.566  		After installing <a href="http://mandriva.org">Mandriva</a> Linux One 2009 Spring 
   2.567  		you need to install several build dependencies. 
   2.568  		The simplest way to install the build dependencies is to 
   2.569  		execute the following commands as user <tt>root</tt>:
   2.570 -		<p/>
   2.571 -		<code>urpmi java-1.6.0-openjdk-devel ant make gcc gcc-c++ freetype-devel zip unzip libcups2-devel libxrender1-devel libalsa2-devel libstc++-static-devel libxtst6-devel libxi-devel</code>
   2.572 +                <p/>
   2.573 +                <code>urpmi java-1.6.0-openjdk-devel ant make gcc gcc-c++ freetype-devel zip unzip libcups2-devel libxrender1-devel libalsa2-devel libstc++-static-devel libxtst6-devel libxi-devel</code>
   2.574                  <p/>
   2.575  		In addition, it is necessary to set a few environment variables for the build:
   2.576 -		<p/>
   2.577 -		<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
   2.578 -	      </blockquote>
   2.579 +                <p/>
   2.580 +                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
   2.581 +            </blockquote>
   2.582          </blockquote>
   2.583          <!-- ====================================================== -->
   2.584          <h3><a name="opensolaris">OpenSolaris</a></h3>
   2.585          <blockquote>
   2.586              <h4>OpenSolaris 2009.06</h4>
   2.587              <p>
   2.588 -	      <blockquote>
   2.589 +            <blockquote>
   2.590  		After installing <a href="http://opensolaris.org">OpenSolaris</a> 2009.06 
   2.591  		you need to install several build dependencies. 
   2.592  		The simplest way to install the build dependencies is to 
   2.593  		execute the following commands:
   2.594 -		<p/>
   2.595 -		<code>pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2</code>
   2.596 +                <p/>
   2.597 +                <code>pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2</code>
   2.598                  <p/>
   2.599  		In addition, it is necessary to set a few environment variables for the build:
   2.600 -		<p/>
   2.601 -		<code>export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/</code>
   2.602 -		<p/>
   2.603 +                <p/>
   2.604 +                <code>export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/</code>
   2.605 +                <p/>
   2.606  		Finally, you need to make sure that the build process can find the Sun Studio compilers:
   2.607 -		<p/>
   2.608 -		<code>export PATH=$PATH:/opt/SunStudioExpress/bin/</code>
   2.609 -	      </blockquote>
   2.610 +                <p/>
   2.611 +                <code>export PATH=$PATH:/opt/SunStudioExpress/bin/</code>
   2.612 +            </blockquote>
   2.613          </blockquote>
   2.614          <!-- ------------------------------------------------------ -->  
   2.615          <hr>
   2.616          <h2><a name="directories">Source Directory Structure</a></h2>
   2.617          <blockquote>
   2.618              <p>
   2.619 -            The source code for the OpenJDK is delivered in a set of
   2.620 -            directories:
   2.621 -            <tt>hotspot</tt>, 
   2.622 -            <tt>langtools</tt>, 
   2.623 -            <tt>corba</tt>, 
   2.624 -            <tt>jaxws</tt>, 
   2.625 -            <tt>jaxp</tt>, 
   2.626 -            and
   2.627 -            <tt>jdk</tt>.
   2.628 -            The <tt>hotspot</tt> directory contains the source code and make
   2.629 -            files for building the OpenJDK Hotspot Virtual Machine. 
   2.630 -            The <tt>langtools</tt> directory contains the source code and make
   2.631 -            files for building the OpenJDK javac and language tools.
   2.632 -            The <tt>corba</tt> directory contains the source code and make
   2.633 -            files for building the OpenJDK Corba files.
   2.634 -            The <tt>jaxws</tt> directory contains the source code and make
   2.635 -            files for building the OpenJDK JAXWS files.
   2.636 -            The <tt>jaxp</tt> directory contains the source code and make
   2.637 -            files for building the OpenJDK JAXP files.
   2.638 -            The <tt>jdk</tt> directory contains the source code and make files for
   2.639 -            building the OpenJDK runtime libraries and misc files.
   2.640 -            The top level <tt>Makefile</tt>
   2.641 -            is used to build the entire OpenJDK.
   2.642 +                The source code for the OpenJDK is delivered in a set of
   2.643 +                directories:
   2.644 +                <tt>hotspot</tt>,
   2.645 +                <tt>langtools</tt>,
   2.646 +                <tt>corba</tt>,
   2.647 +                <tt>jaxws</tt>,
   2.648 +                <tt>jaxp</tt>,
   2.649 +                and
   2.650 +                <tt>jdk</tt>.
   2.651 +                The <tt>hotspot</tt> directory contains the source code and make
   2.652 +                files for building the OpenJDK Hotspot Virtual Machine.
   2.653 +                The <tt>langtools</tt> directory contains the source code and make
   2.654 +                files for building the OpenJDK javac and language tools.
   2.655 +                The <tt>corba</tt> directory contains the source code and make
   2.656 +                files for building the OpenJDK Corba files.
   2.657 +                The <tt>jaxws</tt> directory contains the source code and make
   2.658 +                files for building the OpenJDK JAXWS files.
   2.659 +                The <tt>jaxp</tt> directory contains the source code and make
   2.660 +                files for building the OpenJDK JAXP files.
   2.661 +                The <tt>jdk</tt> directory contains the source code and make files for
   2.662 +                building the OpenJDK runtime libraries and misc files.
   2.663 +                The top level <tt>Makefile</tt>
   2.664 +                is used to build the entire OpenJDK.
   2.665          </blockquote>
   2.666          <!-- ------------------------------------------------------ -->
   2.667          <hr>
   2.668 @@ -495,10 +571,10 @@
   2.669              <tt>ALT_*</tt> variables (alternates)
   2.670              can be used to help the makefiles locate components.
   2.671              <p>
   2.672 -            Refer to the bash/sh/ksh setup file
   2.673 -            <tt>jdk/make/jdk_generic_profile.sh</tt>
   2.674 -            if you need help in setting up your environment variables.
   2.675 -            A build could be as simple as:
   2.676 +                Refer to the bash/sh/ksh setup file
   2.677 +                <tt>jdk/make/jdk_generic_profile.sh</tt>
   2.678 +                if you need help in setting up your environment variables.
   2.679 +                A build could be as simple as:
   2.680              <blockquote>
   2.681                  <pre><tt>
   2.682                  bash
   2.683 @@ -507,12 +583,12 @@
   2.684                  </tt></pre>
   2.685              </blockquote>
   2.686              <p>
   2.687 -            Of course ksh or sh would work too.
   2.688 -            But some customization will probably be necessary.
   2.689 -            The <tt>sanity</tt> rule will make some basic checks on build
   2.690 -            dependencies and generate appropriate warning messages
   2.691 -            regarding missing, out of date, or newer than expected components
   2.692 -            found on your system.
   2.693 +                Of course ksh or sh would work too.
   2.694 +                But some customization will probably be necessary.
   2.695 +                The <tt>sanity</tt> rule will make some basic checks on build
   2.696 +                dependencies and generate appropriate warning messages
   2.697 +                regarding missing, out of date, or newer than expected components
   2.698 +                found on your system.
   2.699          </blockquote>
   2.700          <!-- ------------------------------------------------------ -->
   2.701          <hr>
   2.702 @@ -559,14 +635,14 @@
   2.703                      version that has this problem fixed.
   2.704                      The older 3.80 version of make.exe can be downloaded with this
   2.705                      <a href="http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2" target="_blank">
   2.706 -                    link</a>.
   2.707 +                        link</a>.
   2.708                      Use of this older 3.80 make.exe may require that you install the
   2.709                      libintl2.dll library or libintl2 cygwin package which is
   2.710                      no longer installed by default by the cygwin installer.
   2.711                      <br>
   2.712                      Also see the
   2.713                      <a href="http://developer.mozilla.org/en/docs/Windows_build_prerequisites_using_cygwin#make" target="_blank">
   2.714 -                    mozilla developer center</a>
   2.715 +                        mozilla developer center</a>
   2.716                      on this topic.
   2.717                      <br>
   2.718                      It's hoped that when make 3.82 starts shipping in a future cygwin
   2.719 @@ -574,19 +650,19 @@
   2.720                      In addition to the above 3.80 make.exe you can download 
   2.721                      this
   2.722                      <a href="http://www.cmake.org/files/cygwin/make.exe">
   2.723 -                    www.cmake.org make.exe</a> which will not have a libintl2.dll
   2.724 +                        www.cmake.org make.exe</a> which will not have a libintl2.dll
   2.725                      dependency.
   2.726                  </li>
   2.727              </ul>
   2.728              <p>
   2.729 -            Information on GNU make, and access to ftp download sites, are
   2.730 -            available on the
   2.731 -            <a href="http://www.gnu.org/software/make/make.html" target="_blank">
   2.732 -                GNU make web site
   2.733 -            </a>.
   2.734 -            The latest source to GNU make is available at
   2.735 -            <a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
   2.736 -            ftp.gnu.org/pub/gnu/make/</a>.
   2.737 +                Information on GNU make, and access to ftp download sites, are
   2.738 +                available on the
   2.739 +                <a href="http://www.gnu.org/software/make/make.html" target="_blank">
   2.740 +                    GNU make web site
   2.741 +                </a>.
   2.742 +                The latest source to GNU make is available at
   2.743 +                <a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
   2.744 +                    ftp.gnu.org/pub/gnu/make/</a>.
   2.745          </blockquote>
   2.746          <!-- ------------------------------------------------------ -->
   2.747          <hr>
   2.748 @@ -597,27 +673,27 @@
   2.749              is a Pentium class processor or better, at least 256 MB of RAM, and
   2.750              approximately 1.5 GB of free disk space.
   2.751              <p> 
   2.752 -            <strong>X64 only:</strong>
   2.753 -            The minimum recommended hardware for building the Linux
   2.754 -            version is an AMD Opteron class processor, at least 512 MB of RAM, and
   2.755 -            approximately 4 GB of free disk space.
   2.756 +                <strong>X64 only:</strong>
   2.757 +                The minimum recommended hardware for building the Linux
   2.758 +                version is an AMD Opteron class processor, at least 512 MB of RAM, and
   2.759 +                approximately 4 GB of free disk space.
   2.760              <p> 
   2.761 -            The build will use the tools contained in 
   2.762 -            <tt>/bin</tt> and 
   2.763 -            <tt>/usr/bin</tt>
   2.764 -            of a standard installation of the Linux operating environment. 
   2.765 -            You should ensure that these directories are in your 
   2.766 -            <tt>PATH</tt>.
   2.767 +                The build will use the tools contained in
   2.768 +                <tt>/bin</tt> and
   2.769 +                <tt>/usr/bin</tt>
   2.770 +                of a standard installation of the Linux operating environment.
   2.771 +                You should ensure that these directories are in your
   2.772 +                <tt>PATH</tt>.
   2.773              <p>
   2.774 -            Note that some Linux systems have a habit of pre-populating
   2.775 -            your environment variables for you, for example <tt>JAVA_HOME</tt>
   2.776 -            might get pre-defined for you to refer to the JDK installed on
   2.777 -            your Linux system. 
   2.778 -            You will need to unset <tt>JAVA_HOME</tt>.
   2.779 -            It's a good idea to run <tt>env</tt> and verify the
   2.780 -            environment variables you are getting from the default system
   2.781 -            settings make sense for building the 
   2.782 -            OpenJDK.
   2.783 +                Note that some Linux systems have a habit of pre-populating
   2.784 +                your environment variables for you, for example <tt>JAVA_HOME</tt>
   2.785 +                might get pre-defined for you to refer to the JDK installed on
   2.786 +                your Linux system.
   2.787 +                You will need to unset <tt>JAVA_HOME</tt>.
   2.788 +                It's a good idea to run <tt>env</tt> and verify the
   2.789 +                environment variables you are getting from the default system
   2.790 +                settings make sense for building the
   2.791 +                OpenJDK.
   2.792          </blockquote>
   2.793          <!-- ------------------------------------------------------ -->
   2.794          <h4><a name="linux_checklist">Basic Linux Check List</a></h4>
   2.795 @@ -639,7 +715,7 @@
   2.796                  </li>
   2.797                  <li>
   2.798                      Install or upgrade the <a href="#freetype">FreeType development
   2.799 -                    package</a>.
   2.800 +                        package</a>.
   2.801                  </li>
   2.802                  <li>
   2.803                      Install
   2.804 @@ -660,23 +736,23 @@
   2.805              Approximately 1.4 GB of free disk
   2.806              space is needed for a 32-bit build.
   2.807              <p>
   2.808 -            If you are building the 64-bit version, you should
   2.809 -            run the command "isainfo -v" to verify that you have a
   2.810 -            64-bit installation, it should say <tt>sparcv9</tt> or
   2.811 -            <tt>amd64</tt>.
   2.812 -            An additional 7 GB of free disk space is needed
   2.813 -            for a 64-bit build.
   2.814 +                If you are building the 64-bit version, you should
   2.815 +                run the command "isainfo -v" to verify that you have a
   2.816 +                64-bit installation, it should say <tt>sparcv9</tt> or
   2.817 +                <tt>amd64</tt>.
   2.818 +                An additional 7 GB of free disk space is needed
   2.819 +                for a 64-bit build.
   2.820              <p> 
   2.821 -            The build uses the tools contained in <tt>/usr/ccs/bin</tt>
   2.822 -            and <tt>/usr/bin</tt> of a standard developer or full installation of
   2.823 -            the Solaris operating environment.
   2.824 +                The build uses the tools contained in <tt>/usr/ccs/bin</tt>
   2.825 +                and <tt>/usr/bin</tt> of a standard developer or full installation of
   2.826 +                the Solaris operating environment.
   2.827              <p> 
   2.828 -            Solaris patches specific to the JDK can be downloaded from the 
   2.829 -            <a href="http://sunsolve.sun.com/show.do?target=patches/JavaSE" target="_blank">
   2.830 -            SunSolve JDK Solaris patches download page</a>.
   2.831 -            You should ensure that the latest patch cluster for
   2.832 -            your version of the Solaris operating environment has also
   2.833 -            been installed.
   2.834 +                Solaris patches specific to the JDK can be downloaded from the
   2.835 +                <a href="http://sunsolve.sun.com/show.do?target=patches/JavaSE" target="_blank">
   2.836 +                    SunSolve JDK Solaris patches download page</a>.
   2.837 +                You should ensure that the latest patch cluster for
   2.838 +                your version of the Solaris operating environment has also
   2.839 +                been installed.
   2.840          </blockquote>
   2.841          <!-- ------------------------------------------------------ -->
   2.842          <h4><a name="solaris_checklist">Basic Solaris Check List</a></h4>
   2.843 @@ -731,10 +807,10 @@
   2.844                  because FAT32 doesn't support case-sensitivity in file names.
   2.845              </strong>
   2.846              <p> 
   2.847 -            <strong>X64 only:</strong>
   2.848 -            The minimum recommended hardware for building
   2.849 -            the Windows X64 version is an AMD Opteron class processor, at least 1
   2.850 -            GB of RAM, and approximately 10 GB of free disk space.
   2.851 +                <strong>X64 only:</strong>
   2.852 +                The minimum recommended hardware for building
   2.853 +                the Windows X64 version is an AMD Opteron class processor, at least 1
   2.854 +                GB of RAM, and approximately 10 GB of free disk space.
   2.855          </blockquote>
   2.856          <!-- ------------------------------------------------------ -->
   2.857          <h4><a name="paths">Windows Paths</a></h4>
   2.858 @@ -753,18 +829,18 @@
   2.859              (called 'mixed'), e.g.
   2.860              <tt>cygpath -s -m "<i>path</i>"</tt>.
   2.861              <p>
   2.862 -            The makefiles will try to translate any pathnames supplied
   2.863 -            to it into the <tt>C:/</tt> style automatically.
   2.864 +                The makefiles will try to translate any pathnames supplied
   2.865 +                to it into the <tt>C:/</tt> style automatically.
   2.866              <p>
   2.867 -            Note that use of CYGWIN creates a unique problem with regards to
   2.868 -            setting <a href="#path"><tt>PATH</tt></a>. Normally on Windows
   2.869 -            the <tt>PATH</tt> variable contains directories
   2.870 -            separated with the ";" character (Solaris and Linux uses ":").
   2.871 -            With CYGWIN, it uses ":", but that means that paths like "C:/path"
   2.872 -            cannot be placed in the CYGWIN version  of <tt>PATH</tt> and
   2.873 -            instead CYGWIN uses something like <tt>/cygdrive/c/path</tt>
   2.874 -            which CYGWIN understands, but only CYGWIN understands.
   2.875 -            So be careful with paths on Windows.
   2.876 +                Note that use of CYGWIN creates a unique problem with regards to
   2.877 +                setting <a href="#path"><tt>PATH</tt></a>. Normally on Windows
   2.878 +                the <tt>PATH</tt> variable contains directories
   2.879 +                separated with the ";" character (Solaris and Linux uses ":").
   2.880 +                With CYGWIN, it uses ":", but that means that paths like "C:/path"
   2.881 +                cannot be placed in the CYGWIN version  of <tt>PATH</tt> and
   2.882 +                instead CYGWIN uses something like <tt>/cygdrive/c/path</tt>
   2.883 +                which CYGWIN understands, but only CYGWIN understands.
   2.884 +                So be careful with paths on Windows.
   2.885          </blockquote>
   2.886          <!-- ------------------------------------------------------ -->
   2.887          <h4><a name="windows_checklist">Basic Windows Check List</a></h4>
   2.888 @@ -828,7 +904,7 @@
   2.889                  JDK 6, this is often called a bootstrap JDK.
   2.890                  The JDK 6 binaries can be downloaded from Sun's 
   2.891                  <a href="http://java.sun.com/javase/downloads/index.jsp"
   2.892 -		target="_blank">JDK 6 download site</a>.
   2.893 +                   target="_blank">JDK 6 download site</a>.
   2.894                  For build performance reasons
   2.895                  is very important that this bootstrap JDK be made available on the
   2.896                  local disk of the machine doing the build.
   2.897 @@ -841,12 +917,12 @@
   2.898                  in the <tt>PATH</tt> environment variable, although it's
   2.899                  not required.
   2.900                  <p>
   2.901 -                <strong>Solaris:</strong>
   2.902 -                Some pre-installed JDK images may be available to you in the
   2.903 -                directory <tt>/usr/jdk/instances</tt>.
   2.904 -                If you don't set
   2.905 -                <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>
   2.906 -                the makefiles will look in that location for a JDK it can use.
   2.907 +                    <strong>Solaris:</strong>
   2.908 +                    Some pre-installed JDK images may be available to you in the
   2.909 +                    directory <tt>/usr/jdk/instances</tt>.
   2.910 +                    If you don't set
   2.911 +                    <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>
   2.912 +                    the makefiles will look in that location for a JDK it can use.
   2.913              </blockquote>
   2.914              <!-- ------------------------------------------------------ -->
   2.915              <h4><a name="binaryplugs">Binary Plugs</a></h4>
   2.916 @@ -896,7 +972,7 @@
   2.917                  All OpenJDK builds require access to least Ant 1.6.5.
   2.918                  The Ant tool is available from the 
   2.919                  <a href="http://ant.apache.org" target="_blank">
   2.920 -                Ant download site</a>.
   2.921 +                    Ant download site</a>.
   2.922                  You should always make sure <tt>ant</tt> is in your PATH, and
   2.923                  on Windows you may also need to set 
   2.924                  <tt><a href="#ANT_HOME">ANT_HOME</a></tt>
   2.925 @@ -908,7 +984,7 @@
   2.926              <h4><a name="cacerts">Certificate Authority File (cacert)</a></h4>
   2.927              <blockquote>
   2.928                  See <a href="http://en.wikipedia.org/wiki/Certificate_Authority" target="_blank">
   2.929 -                http://en.wikipedia.org/wiki/Certificate_Authority</a>
   2.930 +                    http://en.wikipedia.org/wiki/Certificate_Authority</a>
   2.931                  for a better understanding of the Certificate Authority (CA).
   2.932                  A certificates file named "cacerts"
   2.933                  represents a system-wide keystore with CA certificates. 
   2.934 @@ -942,121 +1018,121 @@
   2.935                  <blockquote>
   2.936                      At a minimum, the
   2.937                      <a href="http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/index.htm" target="_blank">
   2.938 -                    Sun Studio 12 Update 1 Compilers</a>
   2.939 +                        Sun Studio 12 Update 1 Compilers</a>
   2.940                      (containing version 5.10 of the C and C++ compilers) is required,
   2.941  		    including specific patches.
   2.942 -		    <p>
   2.943 +                    <p>
   2.944  		    The Solaris SPARC patch list is:
   2.945 -		    <ul>
   2.946 -		    <li>
   2.947 -                    118683-05: SunOS 5.10: Patch for profiling libraries and assembler
   2.948 -                    </li>
   2.949 -                    <li>
   2.950 -                    119963-21: SunOS 5.10: Shared library patch for C++
   2.951 -                    </li>
   2.952 -                    <li>
   2.953 -                    120753-08: SunOS 5.10: Microtasking libraries (libmtsk) patch
   2.954 -                    </li>
   2.955 -                    <li>
   2.956 -                    128228-09: Sun Studio 12 Update 1: Patch for Sun C++ Compiler
   2.957 -                    </li>
   2.958 -                    <li>
   2.959 -                    141860-03: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95
   2.960 -                    </li>
   2.961 -                    <li>
   2.962 -                    141861-05: Sun Studio 12 Update 1: Patch for Sun C Compiler
   2.963 -                    </li>
   2.964 -                    <li>
   2.965 -                    142371-01: Sun Studio 12.1 Update 1: Patch for dbx
   2.966 -                    </li>
   2.967 -                    <li>
   2.968 -                    143384-02: Sun Studio 12 Update 1: Patch for debuginfo handling
   2.969 -                    </li>
   2.970 -                    <li>
   2.971 -                    143385-02: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95
   2.972 -                    </li>
   2.973 -                    <li>
   2.974 -                    142369-01: Sun Studio 12.1: Patch for Performance Analyzer Tools
   2.975 -                    </li>
   2.976 +                    <ul>
   2.977 +                        <li>
   2.978 +                            118683-05: SunOS 5.10: Patch for profiling libraries and assembler
   2.979 +                        </li>
   2.980 +                        <li>
   2.981 +                            119963-21: SunOS 5.10: Shared library patch for C++
   2.982 +                        </li>
   2.983 +                        <li>
   2.984 +                            120753-08: SunOS 5.10: Microtasking libraries (libmtsk) patch
   2.985 +                        </li>
   2.986 +                        <li>
   2.987 +                            128228-09: Sun Studio 12 Update 1: Patch for Sun C++ Compiler
   2.988 +                        </li>
   2.989 +                        <li>
   2.990 +                            141860-03: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95
   2.991 +                        </li>
   2.992 +                        <li>
   2.993 +                            141861-05: Sun Studio 12 Update 1: Patch for Sun C Compiler
   2.994 +                        </li>
   2.995 +                        <li>
   2.996 +                            142371-01: Sun Studio 12.1 Update 1: Patch for dbx
   2.997 +                        </li>
   2.998 +                        <li>
   2.999 +                            143384-02: Sun Studio 12 Update 1: Patch for debuginfo handling
  2.1000 +                        </li>
  2.1001 +                        <li>
  2.1002 +                            143385-02: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95
  2.1003 +                        </li>
  2.1004 +                        <li>
  2.1005 +                            142369-01: Sun Studio 12.1: Patch for Performance Analyzer Tools
  2.1006 +                        </li>
  2.1007                      </ul>
  2.1008                      <p>
  2.1009 -                    The Solaris X86 patch list is:
  2.1010 +                        The Solaris X86 patch list is:
  2.1011                      <ul>
  2.1012 -                    <li>
  2.1013 -                    119961-07: SunOS 5.10_x86, x64, Patch for profiling libraries and assembler
  2.1014 -                    </li>
  2.1015 -                    <li>
  2.1016 -                    119964-21: SunOS 5.10_x86: Shared library patch for C++_x86
  2.1017 -                    </li>
  2.1018 -                    <li>
  2.1019 -                    120754-08: SunOS 5.10_x86: Microtasking libraries (libmtsk) patch
  2.1020 -                    </li>
  2.1021 -                    <li>
  2.1022 -                    141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86 backend
  2.1023 -                    </li>
  2.1024 -                    <li>
  2.1025 -                    128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler
  2.1026 -                    </li>
  2.1027 -                    <li>
  2.1028 -                    142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler
  2.1029 -                    </li>
  2.1030 -                    <li>
  2.1031 -                    142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools
  2.1032 -                    </li>
  2.1033 +                        <li>
  2.1034 +                            119961-07: SunOS 5.10_x86, x64, Patch for profiling libraries and assembler
  2.1035 +                        </li>
  2.1036 +                        <li>
  2.1037 +                            119964-21: SunOS 5.10_x86: Shared library patch for C++_x86
  2.1038 +                        </li>
  2.1039 +                        <li>
  2.1040 +                            120754-08: SunOS 5.10_x86: Microtasking libraries (libmtsk) patch
  2.1041 +                        </li>
  2.1042 +                        <li>
  2.1043 +                            141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86 backend
  2.1044 +                        </li>
  2.1045 +                        <li>
  2.1046 +                            128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler
  2.1047 +                        </li>
  2.1048 +                        <li>
  2.1049 +                            142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler
  2.1050 +                        </li>
  2.1051 +                        <li>
  2.1052 +                            142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools
  2.1053 +                        </li>
  2.1054                      </ul>
  2.1055                      <p> 
  2.1056 -                    Set 
  2.1057 -                    <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>
  2.1058 -                    to point to the location of
  2.1059 -                    the compiler binaries, and place this location in the <tt>PATH</tt>.
  2.1060 +                        Set
  2.1061 +                        <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>
  2.1062 +                        to point to the location of
  2.1063 +                        the compiler binaries, and place this location in the <tt>PATH</tt>.
  2.1064                      <p>
  2.1065 -                    The Oracle Solaris Studio Express compilers at:
  2.1066 -                    <a href="http://developers.sun.com/sunstudio/downloads/express.jsp" target="_blank">
  2.1067 -                    Oracle Solaris Studio Express Download site</a>
  2.1068 -                    are also an option, although these compilers have not
  2.1069 -                    been extensively used yet.
  2.1070 +                        The Oracle Solaris Studio Express compilers at:
  2.1071 +                        <a href="http://developers.sun.com/sunstudio/downloads/express.jsp" target="_blank">
  2.1072 +                            Oracle Solaris Studio Express Download site</a>
  2.1073 +                        are also an option, although these compilers have not
  2.1074 +                        been extensively used yet.
  2.1075                  </blockquote>
  2.1076                  <strong><a name="msvc32">Windows i586: Microsoft Visual Studio 2010 Compilers</a></strong>
  2.1077                  <blockquote>
  2.1078 -<p>
  2.1079 -<b>BEGIN WARNING</b>: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
  2.1080 -use the newest VS2010 Microsoft compilers. These build instructions are updated
  2.1081 -to show where we are going. We have a QA process to go through before
  2.1082 -official builds actually use VS2010. So for now, official builds are
  2.1083 -still using VS2003. No other compilers are known to build the entire JDK,
  2.1084 -including non-open portions.
  2.1085 -So for now you should be able to build with either VS2003 or VS2010.
  2.1086 -We do not guarantee that VS2008 will work, although there is sufficient
  2.1087 -makefile support to make at least basic JDK builds plausible.
  2.1088 -Visual Studio 2010 Express compilers are now able to build all the
  2.1089 -open source repositories, but this is 32 bit only. To build 64 bit
  2.1090 -Windows binaries use the the 7.1 Windows SDK.<b>END WARNING.</b>
  2.1091 -<p>
  2.1092 -                    The 32-bit OpenJDK Windows build
  2.1093 -                    requires 
  2.1094 -                    Microsoft Visual Studio C++ 2010 (VS2010) Professional
  2.1095 -                    Edition or Express compiler.
  2.1096 -                    The compiler and other tools are expected to reside
  2.1097 -                    in the location defined by the variable 
  2.1098 -                    <tt>VS100COMNTOOLS</tt> which
  2.1099 -                    is set by the Microsoft Visual Studio installer.
  2.1100 +                    <p>
  2.1101 +                        <b>BEGIN WARNING</b>: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
  2.1102 +                        use the newest VS2010 Microsoft compilers. These build instructions are updated
  2.1103 +                        to show where we are going. We have a QA process to go through before
  2.1104 +                        official builds actually use VS2010. So for now, official builds are
  2.1105 +                        still using VS2003. No other compilers are known to build the entire JDK,
  2.1106 +                        including non-open portions.
  2.1107 +                        So for now you should be able to build with either VS2003 or VS2010.
  2.1108 +                        We do not guarantee that VS2008 will work, although there is sufficient
  2.1109 +                        makefile support to make at least basic JDK builds plausible.
  2.1110 +                        Visual Studio 2010 Express compilers are now able to build all the
  2.1111 +                        open source repositories, but this is 32 bit only. To build 64 bit
  2.1112 +                        Windows binaries use the the 7.1 Windows SDK.<b>END WARNING.</b>
  2.1113 +                    <p>
  2.1114 +                        The 32-bit OpenJDK Windows build
  2.1115 +                        requires
  2.1116 +                        Microsoft Visual Studio C++ 2010 (VS2010) Professional
  2.1117 +                        Edition or Express compiler.
  2.1118 +                        The compiler and other tools are expected to reside
  2.1119 +                        in the location defined by the variable
  2.1120 +                        <tt>VS100COMNTOOLS</tt> which
  2.1121 +                        is set by the Microsoft Visual Studio installer.
  2.1122                      <p> 
  2.1123 -                    Once the compiler is installed, 
  2.1124 -                    it is recommended that you run <tt>VCVARS32.BAT</tt> 
  2.1125 -                    to set the compiler environment variables
  2.1126 -                    <tt>INCLUDE</tt>,
  2.1127 -                    <tt>LIB</tt>, and
  2.1128 -                    <tt>PATH</tt> 
  2.1129 -                    prior to building the 
  2.1130 -                    OpenJDK.
  2.1131 -                    The above environment variables <b>MUST</b> be set.
  2.1132 -                    This compiler also contains the Windows SDK v 7.0a,
  2.1133 -                    which is an update to the Windows 7 SDK.
  2.1134 +                        Once the compiler is installed,
  2.1135 +                        it is recommended that you run <tt>VCVARS32.BAT</tt>
  2.1136 +                        to set the compiler environment variables
  2.1137 +                        <tt>INCLUDE</tt>,
  2.1138 +                        <tt>LIB</tt>, and
  2.1139 +                        <tt>PATH</tt>
  2.1140 +                        prior to building the
  2.1141 +                        OpenJDK.
  2.1142 +                        The above environment variables <b>MUST</b> be set.
  2.1143 +                        This compiler also contains the Windows SDK v 7.0a,
  2.1144 +                        which is an update to the Windows 7 SDK.
  2.1145                      <p>
  2.1146 -                    <b>WARNING:</b> Make sure you check out the
  2.1147 -                    <a href="#cygwin">CYGWIN link.exe WARNING</a>.
  2.1148 -                    The path <tt>/usr/bin</tt> must be after the path to the
  2.1149 -                    Visual Studio product.
  2.1150 +                        <b>WARNING:</b> Make sure you check out the
  2.1151 +                        <a href="#cygwin">CYGWIN link.exe WARNING</a>.
  2.1152 +                        The path <tt>/usr/bin</tt> must be after the path to the
  2.1153 +                        Visual Studio product.
  2.1154                  </blockquote>
  2.1155                  <strong><a name="msvc64">Windows x64: Microsoft Visual Studio 2010 Professional Compiler</a></strong>
  2.1156                  <blockquote>
  2.1157 @@ -1069,22 +1145,22 @@
  2.1158                      you have VS2010 Professional.
  2.1159                  </blockquote>
  2.1160                  <strong><a name="mssdk64">Windows x64: Microsoft Windows 7.1 SDK 64 bit compilers.</a></strong>
  2.1161 -                   For a free alternative for 64 bit builds, use the 7.1 SDK.
  2.1162 -                   Microsoft say that to set up your paths for this run
  2.1163 -<pre>
  2.1164 +                For a free alternative for 64 bit builds, use the 7.1 SDK.
  2.1165 +                Microsoft say that to set up your paths for this run
  2.1166 +                <pre>
  2.1167      c:\Program Files\Microsoft SDKs\Windows\v7.1\bin\setenv.cmd /x64.
  2.1168 -</pre>
  2.1169 -                   What was tested is just directly setting up LIB, INCLUDE,
  2.1170 -                   PATH and based on the installation directories using the
  2.1171 -                   DOS short name appropriate for the system, (you will
  2.1172 -                   need to set them for yours, not just blindly copy this) eg :
  2.1173 -<pre>
  2.1174 +                </pre>
  2.1175 +                What was tested is just directly setting up LIB, INCLUDE,
  2.1176 +                PATH and based on the installation directories using the
  2.1177 +                DOS short name appropriate for the system, (you will
  2.1178 +                need to set them for yours, not just blindly copy this) eg :
  2.1179 +                <pre>
  2.1180      set VSINSTALLDIR=c:\PROGRA~2\MICROS~1.0
  2.1181      set WindowsSdkDir=c:\PROGRA~1\MICROS~1\Windows\v7.1
  2.1182      set PATH=%VSINSTALLDIR%\vc\bin\amd64;%VSINSTALLDIR%\Common7\IDE;%WindowsSdkDir%\bin;%PATH%
  2.1183      set INCLUDE=%VSINSTALLDIR%\vc\include;%WindowsSdkDir%\include
  2.1184      set LIB=%VSINSTALLDIR%\vc\lib\amd64;%WindowsSdkDir%\lib\x64
  2.1185 -</pre>
  2.1186 +                </pre>
  2.1187              </blockquote>
  2.1188              <!-- ------------------------------------------------------ --> 
  2.1189              <h4><a name="zip">Zip and Unzip</a></h4>
  2.1190 @@ -1110,41 +1186,41 @@
  2.1191                  Companion CD/DVD, these often will be installed into 
  2.1192                  <tt>/opt/sfw/cups</tt>.
  2.1193                  <p>
  2.1194 -                <strong>Linux:</strong>
  2.1195 -                CUPS header files are required for building the 
  2.1196 -                OpenJDK on Linux.
  2.1197 -                The Linux header files are usually available from a "cups"
  2.1198 -                development package, it's recommended that you try and use
  2.1199 -                the package provided by the particular version of Linux that
  2.1200 -                you are using.
  2.1201 +                    <strong>Linux:</strong>
  2.1202 +                    CUPS header files are required for building the
  2.1203 +                    OpenJDK on Linux.
  2.1204 +                    The Linux header files are usually available from a "cups"
  2.1205 +                    development package, it's recommended that you try and use
  2.1206 +                    the package provided by the particular version of Linux that
  2.1207 +                    you are using.
  2.1208                  <p>
  2.1209 -                The CUPS header files can always be downloaded from 
  2.1210 -                <a href="http://www.cups.org" target="_blank">www.cups.org</a>.
  2.1211 -                The variable 
  2.1212 -                <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>
  2.1213 -                can be used to override the default location of the
  2.1214 -                CUPS Header files.
  2.1215 +                    The CUPS header files can always be downloaded from
  2.1216 +                    <a href="http://www.cups.org" target="_blank">www.cups.org</a>.
  2.1217 +                    The variable
  2.1218 +                    <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>
  2.1219 +                    can be used to override the default location of the
  2.1220 +                    CUPS Header files.
  2.1221              </blockquote>
  2.1222              <!-- ------------------------------------------------------ -->
  2.1223              <h4><a name="xrender">XRender Extension Headers (Solaris &amp; Linux)</a></h4>
  2.1224              <blockquote>
  2.1225                  <p>
  2.1226 -                <strong>Solaris:</strong>
  2.1227 -                XRender header files are required for building the 
  2.1228 -                OpenJDK on Solaris.
  2.1229 -                The XRender header file is included with the other X11 header files
  2.1230 -                in the package <strong>SFWxwinc</strong> on new enough versions of
  2.1231 -                Solaris and will be installed in
  2.1232 -	        <tt>/usr/X11/include/X11/extensions/Xrender.h</tt>
  2.1233 +                    <strong>Solaris:</strong>
  2.1234 +                    XRender header files are required for building the
  2.1235 +                    OpenJDK on Solaris.
  2.1236 +                    The XRender header file is included with the other X11 header files
  2.1237 +                    in the package <strong>SFWxwinc</strong> on new enough versions of
  2.1238 +                    Solaris and will be installed in
  2.1239 +                    <tt>/usr/X11/include/X11/extensions/Xrender.h</tt>
  2.1240                  </p><p>
  2.1241 -                <strong>Linux:</strong>
  2.1242 -                XRender header files are required for building the 
  2.1243 -                OpenJDK on Linux.
  2.1244 -                The Linux header files are usually available from a "Xrender"
  2.1245 -                development package, it's recommended that you try and use
  2.1246 -                the package provided by the particular distribution of Linux that
  2.1247 -                you are using.
  2.1248 -	        </p>
  2.1249 +                    <strong>Linux:</strong>
  2.1250 +                    XRender header files are required for building the
  2.1251 +                    OpenJDK on Linux.
  2.1252 +                    The Linux header files are usually available from a "Xrender"
  2.1253 +                    development package, it's recommended that you try and use
  2.1254 +                    the package provided by the particular distribution of Linux that
  2.1255 +                    you are using.
  2.1256 +                </p>
  2.1257              </blockquote>
  2.1258              <!-- ------------------------------------------------------ -->
  2.1259              <h4><a name="freetype">FreeType 2</a></h4>
  2.1260 @@ -1155,31 +1231,31 @@
  2.1261                  Note that you need development version of package that 
  2.1262                  includes both FreeType library and header files.
  2.1263                  <p>
  2.1264 -                You can always download latest FreeType version from the
  2.1265 -                <a href="http://www.freetype.org" target="_blank">FreeType website</a>.
  2.1266 +                    You can always download latest FreeType version from the
  2.1267 +                    <a href="http://www.freetype.org" target="_blank">FreeType website</a>.
  2.1268                  <p>
  2.1269 -                Makefiles will try to pick FreeType from /usr/lib and /usr/include.
  2.1270 -                In case it is installed elsewhere you will need to set environment
  2.1271 -                variables 
  2.1272 -                <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
  2.1273 -                and 
  2.1274 -                <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
  2.1275 -                to refer to place where library and header files are installed.
  2.1276 +                    Makefiles will try to pick FreeType from /usr/lib and /usr/include.
  2.1277 +                    In case it is installed elsewhere you will need to set environment
  2.1278 +                    variables
  2.1279 +                    <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
  2.1280 +                    and
  2.1281 +                    <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
  2.1282 +                    to refer to place where library and header files are installed.
  2.1283                  <p>
  2.1284 -                Building the freetype 2 libraries from scratch is also possible,
  2.1285 -                however on Windows refer to the
  2.1286 -                <a href="http://freetype.freedesktop.org/wiki/FreeType_DLL">
  2.1287 -                Windows FreeType DLL build instructions</a>.
  2.1288 +                    Building the freetype 2 libraries from scratch is also possible,
  2.1289 +                    however on Windows refer to the
  2.1290 +                    <a href="http://freetype.freedesktop.org/wiki/FreeType_DLL">
  2.1291 +                        Windows FreeType DLL build instructions</a>.
  2.1292                  <p>
  2.1293 -                Note that by default FreeType is built with byte code hinting
  2.1294 -                support disabled due to licensing restrictions.
  2.1295 -                In this case, text appearance and metrics are expected to
  2.1296 -                differ from Sun's official JDK build.
  2.1297 -                See
  2.1298 -                <a href="http://freetype.sourceforge.net/freetype2/index.html">
  2.1299 -                    the SourceForge FreeType2 Home Page
  2.1300 -                </a>
  2.1301 -                for more information.
  2.1302 +                    Note that by default FreeType is built with byte code hinting
  2.1303 +                    support disabled due to licensing restrictions.
  2.1304 +                    In this case, text appearance and metrics are expected to
  2.1305 +                    differ from Sun's official JDK build.
  2.1306 +                    See
  2.1307 +                    <a href="http://freetype.sourceforge.net/freetype2/index.html">
  2.1308 +                        the SourceForge FreeType2 Home Page
  2.1309 +                    </a>
  2.1310 +                    for more information.
  2.1311              </blockquote>    
  2.1312              <!-- ------------------------------------------------------ -->
  2.1313              <h4><a name="alsa">Advanced Linux Sound Architecture (ALSA) (Linux only)</a></h4>
  2.1314 @@ -1195,25 +1271,25 @@
  2.1315                  The makefiles will check this emit a sanity error if it is
  2.1316                  missing or the wrong version.
  2.1317                  <p>
  2.1318 -                In particular, older Linux systems will likely not have the
  2.1319 -                right version of ALSA installed, for example
  2.1320 -                Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently 
  2.1321 -                recent ALSA distribution.
  2.1322 -                On rpm-based systems, you can see if ALSA is installed by 
  2.1323 -                running this command:
  2.1324 +                    In particular, older Linux systems will likely not have the
  2.1325 +                    right version of ALSA installed, for example
  2.1326 +                    Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently
  2.1327 +                    recent ALSA distribution.
  2.1328 +                    On rpm-based systems, you can see if ALSA is installed by
  2.1329 +                    running this command:
  2.1330                  <pre>
  2.1331                      <tt>rpm -qa | grep alsa</tt>
  2.1332                  </pre>
  2.1333                  Both <tt>alsa</tt> and <tt>alsa-devel</tt> packages are needed.
  2.1334                  <p> 
  2.1335 -                If your distribution does not come with ALSA, and you can't
  2.1336 -                find ALSA packages built for your particular system,
  2.1337 -                you can try to install the pre-built ALSA rpm packages from
  2.1338 -                <a href="http://www.freshrpms.net/" target="_blank">
  2.1339 -                <tt>www.freshrpms.net</tt></a>. 
  2.1340 -                Note that installing a newer ALSA could
  2.1341 -                break sound output if an older version of ALSA was previously
  2.1342 -                installed on the system, but it will enable JDK compilation.
  2.1343 +                    If your distribution does not come with ALSA, and you can't
  2.1344 +                    find ALSA packages built for your particular system,
  2.1345 +                    you can try to install the pre-built ALSA rpm packages from
  2.1346 +                    <a href="http://www.freshrpms.net/" target="_blank">
  2.1347 +                        <tt>www.freshrpms.net</tt></a>.
  2.1348 +                    Note that installing a newer ALSA could
  2.1349 +                    break sound output if an older version of ALSA was previously
  2.1350 +                    installed on the system, but it will enable JDK compilation.
  2.1351                  <blockquote>
  2.1352                      Installation: execute as root<br>
  2.1353                      [i586]: <code>rpm -Uv --force alsa-lib-devel-0.9.1-rh61.i386.rpm</code><br>
  2.1354 @@ -1228,7 +1304,7 @@
  2.1355                  </blockquote>
  2.1356                  As a last resort you can go to the
  2.1357                  <a href="http://www.alsa-project.org" target="_blank">
  2.1358 -                Advanced Linux Sound Architecture Site</a> and build it from
  2.1359 +                    Advanced Linux Sound Architecture Site</a> and build it from
  2.1360                  source.
  2.1361                  <blockquote>
  2.1362                      Download driver and library
  2.1363 @@ -1256,9 +1332,9 @@
  2.1364                  building the JDK platform. To actually use ALSA sound drivers, more
  2.1365                  steps are necessary as outlined in the documentation on ALSA's homepage.
  2.1366                  <p>
  2.1367 -                ALSA can be uninstalled by executing <tt>make uninstall</tt> first in
  2.1368 -                the <tt>alsa-lib-0.9.1</tt> directory and then in 
  2.1369 -                <tt>alsa-driver-0.9.1</tt>.
  2.1370 +                    ALSA can be uninstalled by executing <tt>make uninstall</tt> first in
  2.1371 +                    the <tt>alsa-lib-0.9.1</tt> directory and then in
  2.1372 +                    <tt>alsa-driver-0.9.1</tt>.
  2.1373              </blockquote>
  2.1374              There are no ALT* variables to change the assumed locations of ALSA,
  2.1375              the makefiles will expect to find the ALSA include files and library at:
  2.1376 @@ -1273,15 +1349,15 @@
  2.1377                  on Windows which can be supplied by 
  2.1378                  <a href="http://www.cygwin.com" target="_blank">CYGWIN</a>. 
  2.1379                  <p>
  2.1380 -                The OpenJDK build requires CYGWIN version 1.5.12 or newer. 
  2.1381 -                Information about CYGWIN can
  2.1382 -                be obtained from the CYGWIN website at 
  2.1383 -                <a href="http://www.cygwin.com" target="_blank">www.cygwin.com</a>. 
  2.1384 +                    The OpenJDK build requires CYGWIN version 1.5.12 or newer.
  2.1385 +                    Information about CYGWIN can
  2.1386 +                    be obtained from the CYGWIN website at
  2.1387 +                    <a href="http://www.cygwin.com" target="_blank">www.cygwin.com</a>.
  2.1388                  <p>
  2.1389 -                By default CYGWIN doesn't install all the tools required for building
  2.1390 -                the OpenJDK.
  2.1391 -                Along with the default installation, you need to install
  2.1392 -                the following tools.
  2.1393 +                    By default CYGWIN doesn't install all the tools required for building
  2.1394 +                    the OpenJDK.
  2.1395 +                    Along with the default installation, you need to install
  2.1396 +                    the following tools.
  2.1397                  <blockquote>
  2.1398                      <table border="1">
  2.1399                          <thead>
  2.1400 @@ -1298,21 +1374,21 @@
  2.1401                                  <td>Devel</td>
  2.1402                                  <td>binutils</td>
  2.1403                                  <td>The GNU assembler, linker and binary
  2.1404 -                                utilities</td>
  2.1405 +                                    utilities</td>
  2.1406                              </tr>
  2.1407                              <tr>
  2.1408                                  <td>make.exe</td>
  2.1409                                  <td>Devel</td>
  2.1410                                  <td>make</td>
  2.1411                                  <td>The GNU version of the 'make' utility built for CYGWIN.<br>
  2.1412 -                                <b>NOTE</b>: See <a href="#gmake">the GNU make section</a></td>
  2.1413 +                                    <b>NOTE</b>: See <a href="#gmake">the GNU make section</a></td>
  2.1414                              </tr>
  2.1415                              <tr>
  2.1416                                  <td>m4.exe</td>
  2.1417                                  <td>Interpreters</td>
  2.1418                                  <td>m4</td>
  2.1419                                  <td>GNU implementation of the traditional Unix macro
  2.1420 -                                processor</td>
  2.1421 +                                    processor</td>
  2.1422                              </tr>
  2.1423                              <tr>
  2.1424                                  <td>cpio.exe</td>
  2.1425 @@ -1354,21 +1430,21 @@
  2.1426                      </table>
  2.1427                  </blockquote>
  2.1428                  <p>
  2.1429 -                Note that the CYGWIN software can conflict with other non-CYGWIN
  2.1430 -                software on your Windows system.
  2.1431 -                CYGWIN provides a
  2.1432 -                <a href="http://cygwin.com/faq/faq.using.html" target="_blank">FAQ</a> for
  2.1433 -                known issues and problems, of particular interest is the
  2.1434 -                section on
  2.1435 -                <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
  2.1436 -                BLODA (applications that interfere with CYGWIN)</a>.
  2.1437 +                    Note that the CYGWIN software can conflict with other non-CYGWIN
  2.1438 +                    software on your Windows system.
  2.1439 +                    CYGWIN provides a
  2.1440 +                    <a href="http://cygwin.com/faq/faq.using.html" target="_blank">FAQ</a> for
  2.1441 +                    known issues and problems, of particular interest is the
  2.1442 +                    section on
  2.1443 +                    <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
  2.1444 +                        BLODA (applications that interfere with CYGWIN)</a>.
  2.1445                  <p>
  2.1446 -                <b>WARNING:</b>
  2.1447 -                Be very careful with <b><tt>link.exe</tt></b>, it will conflict
  2.1448 -                with the Visual Studio version. You need the Visual Studio
  2.1449 -                version of <tt>link.exe</tt>, not the CYGWIN one.
  2.1450 -                So it's important that the Visual Studio paths in PATH preceed
  2.1451 -                the CYGWIN path <tt>/usr/bin</tt>.
  2.1452 +                    <b>WARNING:</b>
  2.1453 +                    Be very careful with <b><tt>link.exe</tt></b>, it will conflict
  2.1454 +                    with the Visual Studio version. You need the Visual Studio
  2.1455 +                    version of <tt>link.exe</tt>, not the CYGWIN one.
  2.1456 +                    So it's important that the Visual Studio paths in PATH preceed
  2.1457 +                    the CYGWIN path <tt>/usr/bin</tt>.
  2.1458              </blockquote>
  2.1459              <strong><a name="dxsdk">Microsoft DirectX 9.0 SDK header files and libraries</a></strong>
  2.1460              <blockquote>
  2.1461 @@ -1377,7 +1453,7 @@
  2.1462                  OpenJDK.
  2.1463                  This SDK can be downloaded from 
  2.1464                  <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FD044A42-9912-42A3-9A9E-D857199F888E&amp;displaylang=en" target="_blank">
  2.1465 -                Microsoft DirectX 9.0 SDK (Summer 2004)</a>.
  2.1466 +                    Microsoft DirectX 9.0 SDK (Summer 2004)</a>.
  2.1467                  If the link above becomes obsolete, the SDK can be found from 
  2.1468                  <a href="http://download.microsoft.com" target="_blank">the Microsoft Download Site</a>
  2.1469                  (search with "DirectX 9.0 SDK Update Summer 2004"). 
  2.1470 @@ -1431,14 +1507,14 @@
  2.1471                  </li>
  2.1472              </ol>
  2.1473              <p>
  2.1474 -            <strong>Solaris:</strong>
  2.1475 -            Note that ARCH_DATA_MODEL is really only needed on Solaris to
  2.1476 -            indicate you want to built the 64-bit version.
  2.1477 -            And before the Solaris 64-bit binaries can be used, they
  2.1478 -            must be merged with the binaries from a separate 32-bit build. 
  2.1479 -            The merged binaries may then be used in either 32-bit or 64-bit mode, with
  2.1480 -            the selection occurring at runtime 
  2.1481 -            with the <tt>-d32</tt> or <tt>-d64</tt> options. 
  2.1482 +                <strong>Solaris:</strong>
  2.1483 +                Note that ARCH_DATA_MODEL is really only needed on Solaris to
  2.1484 +                indicate you want to built the 64-bit version.
  2.1485 +                And before the Solaris 64-bit binaries can be used, they
  2.1486 +                must be merged with the binaries from a separate 32-bit build.
  2.1487 +                The merged binaries may then be used in either 32-bit or 64-bit mode, with
  2.1488 +                the selection occurring at runtime
  2.1489 +                with the <tt>-d32</tt> or <tt>-d64</tt> options.
  2.1490          </blockquote>
  2.1491          <!-- ------------------------------------------------------ -->
  2.1492          <hr>
  2.1493 @@ -1450,37 +1526,39 @@
  2.1494              The default output directory is
  2.1495              <tt>build/<i>platform</i></tt>,
  2.1496              where <tt><i>platform</i></tt> is one of
  2.1497 -            <tt><ul>
  2.1498 -                    <li>solaris-sparc</li>
  2.1499 -                    <li>solaris-sparcv9</li>
  2.1500 -                    <li>solaris-i586</li>
  2.1501 -                    <li>solaris-amd64</li>
  2.1502 -                    <li>linux-i586</li>
  2.1503 -                    <li>linux-amd64</li>
  2.1504 -                    <li>windows-i586</li>
  2.1505 -                    <li>windows-amd64</li>
  2.1506 -            </ul></tt>
  2.1507 +            <blockquote>
  2.1508 +                <ul>
  2.1509 +                    <li><tt>solaris-sparc</tt></li>
  2.1510 +                    <li><tt>solaris-sparcv9</tt></li>
  2.1511 +                    <li><tt>solaris-i586</tt></li>
  2.1512 +                    <li><tt>solaris-amd64</tt></li>
  2.1513 +                    <li><tt>linux-i586</tt></li>
  2.1514 +                    <li><tt>linux-amd64</tt></li>
  2.1515 +                    <li><tt>windows-i586</tt></li>
  2.1516 +                    <li><tt>windows-amd64</tt></li>
  2.1517 +                </ul>
  2.1518 +            </blockquote>
  2.1519              In particular, the 
  2.1520              <tt>build/<i>platform</i>/j2sdk-image/bin</tt>
  2.1521              directory should contain executables for the 
  2.1522              OpenJDK tools and utilities.
  2.1523              <p>
  2.1524 -            You can test that the build completed properly by using the build
  2.1525 -            to run the various demos that you will find in the 
  2.1526 -            <tt>build/<i>platform</i>/j2sdk-image/demo</tt>
  2.1527 -            directory.
  2.1528 +                You can test that the build completed properly by using the build
  2.1529 +                to run the various demos that you will find in the
  2.1530 +                <tt>build/<i>platform</i>/j2sdk-image/demo</tt>
  2.1531 +                directory.
  2.1532              <p>
  2.1533 -            The provided regression tests can be run with the <tt>jtreg</tt>
  2.1534 -            utility from 
  2.1535 -            <a href="http://openjdk.java.net/jtreg/" target="_blank">the jtreg site</a>.
  2.1536 +                The provided regression tests can be run with the <tt>jtreg</tt>
  2.1537 +                utility from
  2.1538 +                <a href="http://openjdk.java.net/jtreg/" target="_blank">the jtreg site</a>.
  2.1539          </blockquote>
  2.1540          <!-- ------------------------------------------------------ -->
  2.1541          <hr>
  2.1542          <h2><a name="variables">Environment/Make Variables</a></h2>
  2.1543          <p>
  2.1544 -        Some of the
  2.1545 -        environment or make variables (just called <b>variables</b> in this
  2.1546 -        document) that can impact the build are:
  2.1547 +            Some of the
  2.1548 +            environment or make variables (just called <b>variables</b> in this
  2.1549 +            document) that can impact the build are:
  2.1550          <blockquote>
  2.1551              <dl>
  2.1552                  <dt><a name="path"><tt>PATH</tt></a> </dt>
  2.1553 @@ -1488,11 +1566,11 @@
  2.1554                      <ul>
  2.1555                          <li>The location of the GNU make binary</li>
  2.1556                          <li>The location of the Bootstrap JDK <tt>java</tt> 
  2.1557 -                        (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
  2.1558 +                            (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
  2.1559                          <li>The location of the C/C++ compilers 
  2.1560 -                        (see <a href="#compilers"><tt>compilers</tt></a>)</li>
  2.1561 +                            (see <a href="#compilers"><tt>compilers</tt></a>)</li>
  2.1562                          <li>The location or locations for the Unix command utilities
  2.1563 -                        (e.g. <tt>/usr/bin</tt>)</li>
  2.1564 +                            (e.g. <tt>/usr/bin</tt>)</li>
  2.1565                      </ul>
  2.1566                  </dd>
  2.1567                  <dt><tt>MILESTONE</tt> </dt>
  2.1568 @@ -1694,17 +1772,17 @@
  2.1569              Look for the check list of the platform you are building on in the
  2.1570              <a href="#contents">Table of Contents</a>.
  2.1571              <p>
  2.1572 -            You can validate your build environment by using the <tt>sanity</tt>
  2.1573 -            target.
  2.1574 -            Any errors listed
  2.1575 -            will stop the build from starting, and any warnings may result in
  2.1576 -            a flawed product build.
  2.1577 -            We strongly encourage you to evaluate every
  2.1578 -            sanity check warning and fix it if required, before you proceed
  2.1579 -            further with your build.
  2.1580 +                You can validate your build environment by using the <tt>sanity</tt>
  2.1581 +                target.
  2.1582 +                Any errors listed
  2.1583 +                will stop the build from starting, and any warnings may result in
  2.1584 +                a flawed product build.
  2.1585 +                We strongly encourage you to evaluate every
  2.1586 +                sanity check warning and fix it if required, before you proceed
  2.1587 +                further with your build.
  2.1588              <p>
  2.1589 -            Some of the more common problems with builds are briefly described
  2.1590 -            below, with suggestions for remedies.
  2.1591 +                Some of the more common problems with builds are briefly described
  2.1592 +                below, with suggestions for remedies.
  2.1593              <ul>
  2.1594                  <li>
  2.1595                      <b>Slow Builds:</b>
  2.1596 @@ -1715,15 +1793,15 @@
  2.1597                          machine, setting it to more than the the number of CPUs is probably
  2.1598                          not a good idea).
  2.1599                          <p>
  2.1600 -                        Creating the javadocs can be very slow, if you are running
  2.1601 -                        javadoc, consider skipping that step.
  2.1602 +                            Creating the javadocs can be very slow, if you are running
  2.1603 +                            javadoc, consider skipping that step.
  2.1604                          <p>
  2.1605 -                        Faster hardware and more RAM always helps too.
  2.1606 -                        The VM build tends to be CPU intensive (many C++ compiles),
  2.1607 -                        and the rest of the JDK will often be disk intensive.
  2.1608 +                            Faster hardware and more RAM always helps too.
  2.1609 +                            The VM build tends to be CPU intensive (many C++ compiles),
  2.1610 +                            and the rest of the JDK will often be disk intensive.
  2.1611                          <p>
  2.1612 -                        Faster compiles are possible using a tool called
  2.1613 -                        <a href="http://ccache.samba.org/" target="_blank">ccache</a>.
  2.1614 +                            Faster compiles are possible using a tool called
  2.1615 +                            <a href="http://ccache.samba.org/" target="_blank">ccache</a>.
  2.1616                      </blockquote>
  2.1617                  </li>
  2.1618                  <li>
  2.1619 @@ -1732,10 +1810,10 @@
  2.1620                          If you see warnings that refer to file time stamps, e.g.
  2.1621                          <blockquote>
  2.1622                              <i>Warning message:</i><tt> File `xxx' has modification time in
  2.1623 -                            the future.</tt>
  2.1624 +                                the future.</tt>
  2.1625                              <br>
  2.1626                              <i>Warning message:</i> <tt> Clock skew detected. Your build may
  2.1627 -                            be incomplete.</tt> 
  2.1628 +                                be incomplete.</tt>
  2.1629                          </blockquote>
  2.1630                          These warnings can occur when the clock on the build machine is out of
  2.1631                          sync with the timestamps on the source files. Other errors, apparently
  2.1632 @@ -1747,9 +1825,9 @@
  2.1633                          when the pre-1.4 compiler ran across the new <tt>assert</tt> keyword
  2.1634                          in the 1.4 source code.
  2.1635                          <p>
  2.1636 -                        If you see these warnings, reset the clock on the build
  2.1637 -                        machine, run "<tt><i>gmake</i> clobber</tt>" or delete the directory
  2.1638 -                        containing the build output, and restart the build from the beginning.
  2.1639 +                            If you see these warnings, reset the clock on the build
  2.1640 +                            machine, run "<tt><i>gmake</i> clobber</tt>" or delete the directory
  2.1641 +                            containing the build output, and restart the build from the beginning.
  2.1642                      </blockquote>
  2.1643                  </li>
  2.1644                  <li>
  2.1645 @@ -1776,32 +1854,28 @@
  2.1646                      <blockquote>
  2.1647                          This is probably an issue with SELinux (See
  2.1648                          <a href="http://en.wikipedia.org/wiki/SELinux" target="_blank">
  2.1649 -                        http://en.wikipedia.org/wiki/SELinux</a>).
  2.1650 +                            http://en.wikipedia.org/wiki/SELinux</a>).
  2.1651                          Parts of the VM is built without the <tt>-fPIC</tt> for
  2.1652                          performance reasons.
  2.1653                          <p>
  2.1654 -                        To completely disable SELinux:
  2.1655 -                        <tt>
  2.1656 -                            <ol>
  2.1657 -                                <li>$ su root</li>
  2.1658 -                                <li># system-config-securitylevel</li>
  2.1659 -                                <li>In the window that appears, select the SELinux tab</li>
  2.1660 -                                <li>Disable SELinux</li>
  2.1661 -                            </ol>
  2.1662 -                        </tt>
  2.1663 +                            To completely disable SELinux:
  2.1664 +                        <ol>
  2.1665 +                            <li><tt>$ su root</tt></li>
  2.1666 +                            <li><tt># system-config-securitylevel</tt></li>
  2.1667 +                            <li><tt>In the window that appears, select the SELinux tab</tt></li>
  2.1668 +                            <li><tt>Disable SELinux</tt></li>
  2.1669 +                        </ol>
  2.1670                          <p>
  2.1671 -                        Alternatively, instead of completely disabling it you could
  2.1672 -                        disable just this one check.
  2.1673 -                        <tt>
  2.1674 -                            <ol>
  2.1675 -                                <li>Select System->Administration->SELinux Management</li>
  2.1676 -                                <li>In the SELinux Management Tool which appears, 
  2.1677 +                            Alternatively, instead of completely disabling it you could
  2.1678 +                            disable just this one check.
  2.1679 +                        <ol>
  2.1680 +                            <li>Select System->Administration->SELinux Management</li>
  2.1681 +                            <li>In the SELinux Management Tool which appears,
  2.1682                                  select "Boolean" from the menu on the left</li>
  2.1683 -                                <li>Expand the "Memory Protection" group</li>
  2.1684 -                                <li>Check the first item, labeled
  2.1685 +                            <li>Expand the "Memory Protection" group</li>
  2.1686 +                            <li>Check the first item, labeled
  2.1687                                  "Allow all unconfined executables to use libraries requiring text relocation ..."</li>
  2.1688 -                            </ol>
  2.1689 -                        </tt>
  2.1690 +                        </ol>
  2.1691                      </blockquote>
  2.1692                  </li>
  2.1693                  <li>
  2.1694 @@ -1810,7 +1884,7 @@
  2.1695                          The CYGWIN software can conflict with other non-CYGWIN
  2.1696                          software. See the CYGWIN FAQ section on
  2.1697                          <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
  2.1698 -                        BLODA (applications that interfere with CYGWIN)</a>.
  2.1699 +                            BLODA (applications that interfere with CYGWIN)</a>.
  2.1700                      </blockquote>
  2.1701                  </li>
  2.1702                  <li>
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/get_source.sh	Wed Dec 22 12:25:52 2010 -0800
     3.3 @@ -0,0 +1,33 @@
     3.4 +#!/bin/sh
     3.5 +
     3.6 +#
     3.7 +# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
     3.8 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3.9 +#
    3.10 +# This code is free software; you can redistribute it and/or modify it
    3.11 +# under the terms of the GNU General Public License version 2 only, as
    3.12 +# published by the Free Software Foundation.  Oracle designates this
    3.13 +# particular file as subject to the "Classpath" exception as provided
    3.14 +# by Oracle in the LICENSE file that accompanied this code.
    3.15 +#
    3.16 +# This code is distributed in the hope that it will be useful, but WITHOUT
    3.17 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    3.18 +# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    3.19 +# version 2 for more details (a copy is included in the LICENSE file that
    3.20 +# accompanied this code).
    3.21 +#
    3.22 +# You should have received a copy of the GNU General Public License version
    3.23 +# 2 along with this work; if not, write to the Free Software Foundation,
    3.24 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    3.25 +#
    3.26 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    3.27 +# or visit www.oracle.com if you need additional information or have any
    3.28 +# questions.
    3.29 +#
    3.30 +
    3.31 +# Get clones of all nested repositories
    3.32 +sh ./make/scripts/hgforest.sh clone
    3.33 +
    3.34 +# Update all existing repositories to the latest sources
    3.35 +sh ./make/scripts/hgforest.sh pull -u
    3.36 +
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/make/scripts/hgforest.sh	Wed Dec 22 12:25:52 2010 -0800
     4.3 @@ -0,0 +1,104 @@
     4.4 +#!/bin/sh
     4.5 +
     4.6 +#
     4.7 +# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
     4.8 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4.9 +#
    4.10 +# This code is free software; you can redistribute it and/or modify it
    4.11 +# under the terms of the GNU General Public License version 2 only, as
    4.12 +# published by the Free Software Foundation.
    4.13 +#
    4.14 +# This code is distributed in the hope that it will be useful, but WITHOUT
    4.15 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    4.16 +# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    4.17 +# version 2 for more details (a copy is included in the LICENSE file that
    4.18 +# accompanied this code).
    4.19 +#
    4.20 +# You should have received a copy of the GNU General Public License version
    4.21 +# 2 along with this work; if not, write to the Free Software Foundation,
    4.22 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    4.23 +#
    4.24 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    4.25 +# or visit www.oracle.com if you need additional information or have any
    4.26 +# questions.
    4.27 +#
    4.28 +
    4.29 +# Shell script for a fast parallel forest command
    4.30 +
    4.31 +tmp=/tmp/forest.$$
    4.32 +rm -f -r ${tmp}
    4.33 +mkdir -p ${tmp}
    4.34 +
    4.35 +# Remove tmp area on A. B. Normal termination
    4.36 +trap 'rm -f -r ${tmp}' KILL
    4.37 +trap 'rm -f -r ${tmp}' EXIT
    4.38 +
    4.39 +# Only look in specific locations for possible forests (avoids long searches)
    4.40 +pull_default=""
    4.41 +if [ "$1" = "clone" -o "$1" = "fclone" ] ; then
    4.42 +  subrepos="corba jaxp jaxws langtools jdk hotspot"
    4.43 +  if [ -f .hg/hgrc ] ; then
    4.44 +    pull_default=`hg paths default`
    4.45 +  fi
    4.46 +  if [ "${pull_default}" = "" ] ; then
    4.47 +    echo "ERROR: Need initial clone with 'hg paths default' defined"
    4.48 +    exit 1
    4.49 +  fi
    4.50 +  repos=""
    4.51 +  for i in ${subrepos} ; do
    4.52 +    if [ ! -f ${i}/.hg/hgrc ] ; then
    4.53 +      repos="${repos} ${i}"
    4.54 +    fi
    4.55 +  done
    4.56 +  at_a_time=2
    4.57 +else
    4.58 +  hgdirs=`ls -d ./.hg ./*/.hg ./*/*/.hg ./*/*/*/.hg ./*/*/*/*/.hg 2>/dev/null`
    4.59 +  # Derive repository names from the .hg directory locations
    4.60 +  repos=""
    4.61 +  for i in ${hgdirs} ; do
    4.62 +    repos="${repos} `echo ${i} | sed -e 's@/.hg$@@'`"
    4.63 +  done
    4.64 +  at_a_time=8
    4.65 +fi
    4.66 +
    4.67 +# Any repos to deal with?
    4.68 +if [ "${repos}" = "" ] ; then
    4.69 +  echo "No repositories to process."
    4.70 +  exit
    4.71 +fi
    4.72 +
    4.73 +# Echo out what repositories we will process
    4.74 +echo "# Repos: ${repos}"
    4.75 +
    4.76 +# Run the supplied command on all repos in parallel, save output until end
    4.77 +n=0
    4.78 +for i in ${repos} ; do
    4.79 +  echo "Starting on ${i}"
    4.80 +  n=`expr ${n} '+' 1`
    4.81 +  (
    4.82 +    (
    4.83 +      if [ "$1" = "clone" -o "$1" = "fclone" ] ; then
    4.84 +        cline="hg $* ${pull_default}/${i} ${i}"
    4.85 +        echo "# ${cline}"
    4.86 +        ( eval "${cline}" )
    4.87 +      else
    4.88 +        cline="hg $*"
    4.89 +        echo "# cd ${i} && ${cline}"
    4.90 +        ( cd ${i} && eval "${cline}" )
    4.91 +      fi
    4.92 +      echo "# exit code $?"
    4.93 +    ) > ${tmp}/repo.${n} 2>&1 ; cat ${tmp}/repo.${n} ) &
    4.94 +  if [ `expr ${n} '%' ${at_a_time}` -eq 0 ] ; then
    4.95 +    sleep 5
    4.96 +  fi
    4.97 +done
    4.98 +
    4.99 +# Wait for all hg commands to complete
   4.100 +wait
   4.101 +
   4.102 +# Cleanup
   4.103 +rm -f -r ${tmp}
   4.104 +
   4.105 +# Terminate with exit 0 all the time (hard to know when to say "failed")
   4.106 +exit 0
   4.107 +

mercurial