Ignore:
Timestamp:
Feb 13, 2012, 10:07:12 PM (14 years ago)
Author:
dmik
Message:

trunk: Merged in openjdk6 b24 from branches/vendor/oracle.

Location:
trunk/openjdk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/openjdk

  • trunk/openjdk/README-builds.html

    r278 r309  
    3030        <blockquote>
    3131            <p>
    32             This README file contains build instructions for the
    33             <a href="http://openjdk.java.net"  target="_blank">OpenJDK</a>.
    34             Building the source code for the
    35             OpenJDK
    36             requires
    37             a certain degree of technical expertise.
    38             <!-- OpenJDK 6 Specific -->
     32                This README file contains build instructions for the
     33                <a href="http://openjdk.java.net"  target="_blank">OpenJDK</a>.
     34                Building the source code for the
     35                OpenJDK
     36                requires
     37                a certain degree of technical expertise.
     38                <!-- OpenJDK 6 Specific -->
    3939            <blockquote style="background-color:white">
    4040                This document is specific to OpenJDK 6, which has some
     
    5252            <ul>
    5353                <li><a href="#introduction">Introduction</a></li>
     54                <li><a href="#hg">Use of Mercurial</a>
     55                    <ul>
     56                        <li><a href="#get_source">Getting the Source</a></li>
     57                    </ul>
     58                </li>
    5459                <li><a href="#MBE">Minimum Build Environments</a></li>
    5560                <li><a href="#SDBE">Specific Developer Build Environments</a>
    5661                    <ul>
    57                         <li><a href="#fedora">Fedora</a></li>
    58                         <li><a href="#debian">Debian</a></li>
    59                         <li><a href="#ubuntu">Ubuntu</a></li>
    60                         <li><a href="#opensuse">OpenSUSE</a></li>
    61                         <li><a href="#mandriva">Mandriva</a></li>
    62                         <li><a href="#opensolaris">OpenSolaris</a></li>
    63                     </ul>
    64                 </li>
    65                 <li><a href="#directories">Source Directory Structure</a> </li>
     62                        <li><a href="#fedora">Fedora</a></li>
     63                        <li><a href="#debian">Debian</a></li>
     64                        <li><a href="#ubuntu">Ubuntu</a></li>
     65                        <li><a href="#opensuse">OpenSUSE</a></li>
     66                        <li><a href="#mandriva">Mandriva</a></li>
     67                        <li><a href="#opensolaris">OpenSolaris</a></li>
     68                    </ul>
     69                </li>
     70                <li><a href="#directories">Source Directory Structure</a>
     71                    <ul>
     72                        <li><a href="#drops">Managing the Source Drops</a></li>
     73                    </ul>
     74                </li>
    6675                <li><a href="#building">Build Information</a>
    6776                    <ul>
     
    7079                        <li><a href="#solaris">Basic Solaris System Setup</a> </li>
    7180                        <li><a href="#windows">Basic Windows System Setup</a> </li>
    72                         <li><a href="#dependencies">Build Dependencies</a> </li>
    73                         <ul>
    74                             <li><a href="#bootjdk">Bootstrap JDK</a> </li>
    75                             <li><a href="#importjdk">Optional Import JDK</a> </li>
    76                             <li><a href="#ant">Ant</a> </li>
    77                             <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
    78                             <li><a href="#compilers">Compilers</a>
    79                                 <ul>
    80                                     <li><a href="#msvc">Microsoft Visual Studio</a> </li>
    81                                     <li><a href="#mssdk">Microsoft Platform SDK</a> </li>
    82                                     <li><a href="#gcc">Linux gcc/binutils</a> </li>
    83                                     <li><a href="#studio">Sun Studio</a> </li>
    84                                 </ul>
    85                             </li>
    86                             <li><a href="#zip">Zip and Unzip</a> </li>
    87                             <li><a href="#freetype">FreeType2 Fonts</a> </li>
    88                             <li>Linux and Solaris:
    89                                 <ul>
    90                                     <!-- OpenJDK 6 Specific -->
    91                                     <li style="background-color:white"><a href="#motif">Motif</a> </li>
    92                                     <li><a href="#cups">CUPS Include files</a> </li>
    93                                 </ul>
    94                             </li>
    95                             <li>Linux only:
    96                                 <ul>
    97                                     <li><a href="#alsa">ALSA files</a> </li>
    98                                 </ul>
    99                             </li>
    100                             <li>Windows only:
    101                                 <ul>
    102                                     <li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>)</li>
    103                                     <li><a href="#dxsdk">DirectX 9.0 SDK</a> </li>
    104                                 </ul>
    105                             </li>
    106                         </ul>
     81                        <li><a href="#dependencies">Build Dependencies</a>
     82                            <ul>
     83                                <li><a href="#bootjdk">Bootstrap JDK</a> </li>
     84                                <li><a href="#importjdk">Optional Import JDK</a> </li>
     85                                <li><a href="#ant">Ant 1.7.1</a> </li>
     86                                <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
     87                                <li><a href="#compilers">Compilers</a>
     88                                    <ul>
     89                                        <li><a href="#msvc">Microsoft Visual Studio</a> </li>
     90                                        <li><a href="#mssdk">Microsoft Platform SDK</a> </li>
     91                                        <li><a href="#gcc">Linux gcc/binutils</a> </li>
     92                                        <li><a href="#studio">Sun Studio</a> </li>
     93                                    </ul>
     94                                </li>
     95                                <li><a href="#zip">Zip and Unzip</a> </li>
     96                                <li><a href="#freetype">FreeType2 Fonts</a> </li>
     97                                <li>Linux and Solaris:
     98                                    <ul>
     99                                        <!-- OpenJDK 6 Specific -->
     100                                        <li style="background-color:white"><a href="#motif">Motif</a> </li>
     101                                        <li><a href="#cups">CUPS Include files</a> </li>
     102                                    </ul>
     103                                </li>
     104                                <li>Linux only:
     105                                    <ul>
     106                                        <li><a href="#alsa">ALSA files</a> </li>
     107                                    </ul>
     108                                </li>
     109                                <li>Windows only:
     110                                    <ul>
     111                                        <li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>)</li>
     112                                        <li><a href="#dxsdk">DirectX 9.0 SDK</a> </li>
     113                                    </ul>
     114                                </li>
     115                            </ul>
     116                        </li>
    107117                    </ul>
    108118                </li>
     
    113123            </ul>
    114124        </blockquote>
     125
     126        <!-- ------------------------------------------------------ -->
     127        <hr>
     128        <h2><a name="hg">Use of Mercurial</a></h2>
     129        <blockquote>
     130            The OpenJDK sources are maintained with the revision control system
     131            <a href="http://mercurial.selenic.com/wiki/Mercurial">Mercurial</a>.
     132            If you are new to Mercurial, please see the
     133            <a href="http://mercurial.selenic.com/wiki/BeginnersGuides">Beginner Guides</a>
     134            or refer to the <a href="http://hgbook.red-bean.com/">Mercurial Book</a>.
     135            The first few chapters of the book provide an excellent overview of
     136            Mercurial, what it is and how it works.
     137            <br>
     138            For using Mercurial with the OpenJDK refer to the
     139            <a href="http://openjdk.java.net/guide/repositories.html#installConfig">
     140                Developer Guide: Installing and Configuring Mercurial</a>
     141            section for more information.
     142            The Forest Extension is not part of the Mercurial install,
     143            and is optional,
     144            but can be obtained with the following commands:
     145            <blockquote>
     146                <tt>
     147                    hg clone https://bitbucket.org/pmezard/hgforest-crew/overview/ <i>YourHgForest</i>
     148                </tt>
     149            </blockquote>
     150            Once you have the file <tt>forest.py</tt>, you need to add these
     151            lines to your <tt>${HOME}/.hgrc</tt> file:
     152            <blockquote>
     153                <tt>
     154                    [extensions]
     155                    <br>forest = <i>YourHgForest</i>/forest.py
     156                </tt>
     157            </blockquote>
     158
     159            <!-- ------------------------------------------------------ -->
     160            <h3><a name="get_source">Getting the Source</a></h3>
     161            <blockquote>
     162                To get the entire set of OpenJDK Mercurial repositories
     163                using the Forest Extension:
     164                <blockquote>
     165                    <tt>
     166                        hg fclone http://hg.openjdk.java.net/jdk6/jdk6 <i>YourOpenJDK</i>
     167                    </tt>
     168                </blockquote>
     169                To get the entire set of OpenJDK Mercurial repositories
     170                without using the Forest Extension:
     171                <blockquote>
     172                    <tt>
     173                        hg clone http://hg.openjdk.java.net/jdk6/jdk6 <i>YourOpenJDK</i>
     174                        <br>cd <i>YourOpenJDK</i>
     175                        <br>sh ./get_source.sh
     176                    </tt>
     177                </blockquote>
     178                Once you have all the repositories, the
     179                script <tt>make/scripts/hgforest.sh</tt>
     180                can be used to repeat the same <tt>hg</tt>
     181                command on every repository in the forest, e.g.
     182                <blockquote>
     183                    <tt>
     184                        cd <i>YourOpenJDK</i>
     185                        <br>sh ./make/scripts/hgforest.sh pull -u
     186                    </tt>
     187                </blockquote>
     188                You may find this script <tt>make/scripts/hgforest.sh</tt> faster
     189                than the <tt>hg</tt> forest commands provided by the
     190                Forest Extension.
     191            </blockquote>
     192
     193        </blockquote>
     194
    115195        <!-- ------------------------------------------------------ -->
    116196        <hr>
     
    129209            may be difficult due to the age of some of this software.
    130210            <p>
    131             The minimum OS and C/C++ compiler versions needed for building the
    132             OpenJDK:
     211                The minimum OS and C/C++ compiler versions needed for building the
     212                OpenJDK6:
    133213            <p>
    134214            <table border="1">
     
    138218                        <th>OS</th>
    139219                        <th>C/C++ Compiler</th>
     220                        <th>BOOT JDK</th>
    140221                    </tr>
    141222                </thead>
     
    145226                        <td>Fedora 9</td>
    146227                        <td>gcc 4 </td>
     228                        <td>JDK 6u18</td>
    147229                    </tr>
    148230                    <tr>
     
    150232                        <td>Fedora 9</td>
    151233                        <td>gcc 4 </td>
     234                        <td>JDK 6u18</td>
    152235                    </tr>
    153236                    <tr>
    154                         <td>Solaris SPARC (32bit)</td>
    155                         <!-- OpenJDK 6 Specific -->
    156                         <td>Solaris 8 + patches
    157                             <br>
    158                             See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
    159                             SunSolve</a> for patch downloads.
    160                         </td>
    161                         <td>Sun Studio 11 </td>
     237                        <td>Solaris SPARC (32-bit)</td>
     238                        <td>Solaris 10 Update 6</td>
     239                        <td>Sun Studio 11</td>
     240                        <td>JDK 6u18</td>
    162241                    </tr>
    163242                    <tr>
    164                         <td>Solaris SPARCV9 (64bit)</td>
    165                         <!-- OpenJDK 6 Specific -->
    166                         <td>Solaris 8 + patches
    167                             <br>
    168                             See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
    169                             SunSolve</a> for patch downloads.
    170                         </td>
     243                        <td>Solaris SPARCV9 (64-bit)</td>
     244                        <td>Solaris 10 Update 6</td>
    171245                        <td>Sun Studio 11</td>
     246                        <td>JDK 6u18</td>
    172247                    </tr>
    173248                    <tr>
    174                         <td>Solaris X86 (32bit)</td>
    175                         <!-- OpenJDK 6 Specific -->
    176                         <td>Solaris 8 + patches
    177                             <br>
    178                             See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
    179                             SunSolve</a> for patch downloads.
    180                         </td>
     249                        <td>Solaris X86 (32-bit)</td>
     250                        <td>Solaris 10 Update 6</td>
    181251                        <td>Sun Studio 11</td>
     252                        <td>JDK 6u18</td>
    182253                    </tr>
    183254                    <tr>
    184                         <td>Solaris X64 (64bit)</td>
    185                         <td>Solaris 10 + patches
    186                             <br>
    187                             See <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/JavaSE" target="_blank">
    188                             SunSolve</a> for patch downloads.
    189                         </td>
     255                        <td>Solaris X64 (64-bit)</td>
     256                        <td>Solaris 10 Update 6</td>
    190257                        <td>Sun Studio 11</td>
     258                        <td>JDK 6u18</td>
    191259                    </tr>
    192260                    <tr>
     
    195263                        <td>Windows 2000</td>
    196264                        <td>Microsoft Visual Studio .NET 2003 Professional</td>
     265                        <td>JDK 6u18</td>
    197266                    </tr>
    198267                    <tr>
     
    200269                        <td>Windows Server 2003 - Enterprise x64 Edition</td>
    201270                        <td>Microsoft Platform SDK - April 2005</td>
     271                        <td>JDK 6u18</td>
    202272                    </tr>
    203273                </tbody>
    204274            </table>
    205             <p>
     275            <p>
    206276            These same sources do indeed build on many more systems than the
    207277            above older generation systems, again the above is just a minimum.
    208             <p>
     278            <p>
    209279            Compilation problems with newer or different C/C++ compilers is a
    210280            common problem.
    211281            Similarly, compilation problems related to changes to the
    212             <tt>/usr/include</tt> or system header files is also a
     282                <tt>/usr/include</tt> or system header files is also a
    213283            common problem with newer or unreleased OS versions.
    214284            Please report these types of problems as bugs so that they
     
    225295        <h3><a name="fedora">Fedora</a></h3>
    226296        <blockquote>
    227           <h4>Fedora 9</h4>
    228           <p>
    229             <blockquote>
    230               After installing <a href="http://fedoraproject.org">Fedora</a> 9
     297            <h4>Fedora 9</h4>
     298            <p>
     299            <blockquote>
     300                After installing <a href="http://fedoraproject.org">Fedora</a> 9
    231301              you need to install several build dependencies. The simplest
    232302              way to do it is to execute the following commands as user
    233               <tt>root</tt>:
    234               <p/>
    235               <code>yum-builddep java-1.6.0-openjdk</code>
    236               <p/>
    237               <code>yum install gcc gcc-c++</code>
    238               <p/>
     303                <tt>root</tt>:
     304                <p/>
     305                <code>yum-builddep java-1.6.0-openjdk</code>
     306                <p/>
     307                <code>yum install gcc gcc-c++</code>
     308                <p/>
    239309              In addition, it's necessary to set a few environment variables for the build:
    240310
    241               <p/>
    242               <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
    243             </blockquote>
    244           <h4>Fedora 10</h4>
    245           <p>
    246             <blockquote>
    247               After installing <a href="http://fedoraproject.org">Fedora</a> 10
     311                <p/>
     312                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
     313            </blockquote>
     314            <h4>Fedora 10</h4>
     315            <p>
     316            <blockquote>
     317                After installing <a href="http://fedoraproject.org">Fedora</a> 10
    248318              you need to install several build dependencies. The simplest
    249319              way to do it is to execute the following commands as user
    250               <tt>root</tt>:
    251               <p/>
    252               <code>yum-builddep java-1.6.0-openjdk</code>
    253               <p/>
    254               <code>yum install gcc gcc-c++</code>
    255               <p/>
     320                <tt>root</tt>:
     321                <p/>
     322                <code>yum-builddep java-1.6.0-openjdk</code>
     323                <p/>
     324                <code>yum install gcc gcc-c++</code>
     325                <p/>
    256326              In addition, it's necessary to set a few environment variables for the build:
    257327
    258               <p/>
    259               <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
    260             </blockquote>
    261           <h4>Fedora 11</h4>
    262           <p>
    263             <blockquote>
    264               After installing <a href="http://fedoraproject.org">Fedora</a> 11
     328                <p/>
     329                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
     330            </blockquote>
     331            <h4>Fedora 11</h4>
     332            <p>
     333            <blockquote>
     334                After installing <a href="http://fedoraproject.org">Fedora</a> 11
    265335              you need to install several build dependencies. The simplest
    266336              way to do it is to execute the following commands as user
    267               <tt>root</tt>:
    268               <p/>
    269               <code>yum-builddep java-1.6.0-openjdk</code>
    270               <p/>
    271               <code>yum install gcc gcc-c++</code>
    272               <p/>
     337                <tt>root</tt>:
     338                <p/>
     339                <code>yum-builddep java-1.6.0-openjdk</code>
     340                <p/>
     341                <code>yum install gcc gcc-c++</code>
     342                <p/>
    273343              In addition, it's necessary to set a few environment variables for the build:
    274344
    275               <p/>
    276               <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
    277             </blockquote>
    278         </blockquote>
     345                <p/>
     346                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
     347            </blockquote>
     348        </blockquote>
    279349        <!-- ====================================================== -->
    280350        <h3><a name="debian">Debian</a></h3>
     
    282352            <h4>Debian 5.0 (Lenny)</h4>
    283353            <p>
    284               <blockquote>
     354            <blockquote>
    285355                After installing <a href="http://debian.org">Debian</a> 5
    286356                you need to install several build dependencies.
    287357                The simplest way to install the build dependencies is to
    288358                execute the following commands as user <tt>root</tt>:
    289                 <p/>
    290                 <code>aptitude build-dep openjdk-6</code>
    291                 <p/>
    292                 <code>aptitude install openjdk-6-jdk</code>
     359                <p/>
     360                <code>aptitude build-dep openjdk-6</code>
     361                <p/>
     362                <code>aptitude install openjdk-6-jdk</code>
    293363                <p/>
    294364                <!-- OpenJDK 6 Specific -->
    295365                <code style="background-color:white">aptitude install libmotif-dev</code>
    296                 <p/>
     366                <p/>
    297367                In addition, it's necessary to set a few environment variables for the build:
    298                 <p/>
    299                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
    300               </blockquote>
     368                <p/>
     369                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
     370            </blockquote>
    301371        </blockquote>
    302372        <!-- ====================================================== -->
     
    305375            <h4>Ubuntu 8.04</h4>
    306376            <p>
    307               <blockquote>
     377            <blockquote>
    308378                After installing <a href="http://ubuntu.org">Ubuntu</a> 8.04
    309379                you need to install several build dependencies.
    310                 <p/>
     380                <p/>
    311381                First, you need to enable the universe repository in the
    312382                Software Sources application and reload the repository
    313383                information. The Software Sources application is available
    314384                under the System/Administration menu.
    315                 <p/>
     385                <p/>
    316386                The simplest way to install the build dependencies is to
    317387                execute the following commands:
    318                 <p/>
    319                 <code>sudo aptitude build-dep openjdk-6</code>
    320                 <p/>
    321                 <code>sudo aptitude install openjdk-6-jdk</code>
     388                <p/>
     389                <code>sudo aptitude build-dep openjdk-6</code>
     390                <p/>
     391                <code>sudo aptitude install openjdk-6-jdk</code>
    322392                <p/>
    323393                <!-- OpenJDK 6 Specific -->
    324394                <code style="background-color:white">sudo aptitude install libmotif-dev</code>
    325                 <p/>
     395                <p/>
    326396                In addition, it's necessary to set a few environment variables for the build:
    327                 <p/>
    328                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
    329               </blockquote>
     397                <p/>
     398                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
     399            </blockquote>
    330400            <h4>Ubuntu 8.10</h4>
    331401            <p>
    332               <blockquote>
     402            <blockquote>
    333403                After installing <a href="http://ubuntu.org">Ubuntu</a> 8.10
    334404                you need to install several build dependencies. The simplest
    335405                way to do it is to execute the following commands:
    336                 <p/>
    337                 <code>sudo aptitude build-dep openjdk-6</code>
    338                 <p/>
    339                 <code>sudo aptitude install openjdk-6-jdk gcc-4.2 g++-4.2</code>
     406                <p/>
     407                <code>sudo aptitude build-dep openjdk-6</code>
     408                <p/>
     409                <code>sudo aptitude install openjdk-6-jdk gcc-4.2 g++-4.2</code>
    340410                <p/>
    341411                <!-- OpenJDK 6 Specific -->
    342412                <code style="background-color:white">sudo aptitude install libmotif-dev</code>
    343                 <p/>
     413                <p/>
    344414                In addition, it's necessary to set a few environment variables for the build:
    345                 <p/>
    346                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
    347                 <p/>
     415                <p/>
     416                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
     417                <p/>
    348418                Then, calling <tt>make</tt> in the top level OpenJDK source
    349419                code directory with the following parameters results in a
    350420                working build:
    351                 <p/>
    352                 <code>make all CC=gcc-4.2 CPP=g++-4.2</code>
    353               </blockquote>
     421                <p/>
     422                <code>make all CC=gcc-4.2 CPP=g++-4.2</code>
     423            </blockquote>
    354424            <h4>Ubuntu 9.04</h4>
    355425            <p>
    356               <blockquote>
     426            <blockquote>
    357427                After installing <a href="http://ubuntu.org">Ubuntu</a> 9.04
    358428                you need to install several build dependencies. The simplest
    359429                way to do it is to execute the following commands:
    360                 <p/>
    361                 <code>sudo aptitude build-dep openjdk-6</code>
    362                 <p/>
    363                 <code>sudo aptitude install openjdk-6-jdk gcc-4.2 g++-4.2</code>
     430                <p/>
     431                <code>sudo aptitude build-dep openjdk-6</code>
     432                <p/>
     433                <code>sudo aptitude install openjdk-6-jdk gcc-4.2 g++-4.2</code>
    364434                <p/>
    365435                <!-- OpenJDK 6 Specific -->
    366436                <code style="background-color:white">sudo aptitude install libmotif-dev</code>
    367                 <p/>
     437                <p/>
    368438                In addition, it's necessary to set a few environment variables for the build:
    369                 <p/>
    370                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
    371                 <p/>
     439                <p/>
     440                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
     441                <p/>
    372442                Then, calling <tt>make</tt> in the top level OpenJDK source
    373443                code directory with the following parameters results in a
    374444                working build:
    375                 <p/>
    376                 <code>make all CC=gcc-4.2 CPP=g++-4.2</code>
    377               </blockquote>
     445                <p/>
     446                <code>make all CC=gcc-4.2 CPP=g++-4.2</code>
     447            </blockquote>
    378448        </blockquote>
    379449        <!-- ====================================================== -->
     
    382452            <h4>OpenSUSE 11.1</h4>
    383453            <p>
    384               <blockquote>
     454            <blockquote>
    385455                After installing <a href="http://opensuse.org">OpenSUSE</a> 11.1
    386456                you need to install several build dependencies.
    387457                The simplest way to install the build dependencies is to
    388458                execute the following commands:
    389                 <p/>
    390                 <code>sudo zypper source-install -d java-1_6_0-openjdk</code>
    391                 <p/>
    392                 <code>sudo zypper install make</code>
    393                 <p/>
     459                <p/>
     460                <code>sudo zypper source-install -d java-1_6_0-openjdk</code>
     461                <p/>
     462                <code>sudo zypper install make</code>
     463                <p/>
    394464                In addition, it is necessary to set a few environment variables for the build:
    395                 <p/>
    396                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
    397                 <p/>
     465                <p/>
     466                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
     467                <p/>
    398468                Finally, you need to unset the <code>JAVA_HOME</code> environment variable:
    399                 <p/>
    400                 <code>export -n JAVA_HOME</code>
    401               </blockquote>
    402         </blockquote>
     469                <p/>
     470                <code>export -n JAVA_HOME</code>
     471            </blockquote>
     472        </blockquote>
    403473        <!-- ====================================================== -->
    404474        <h3><a name="mandriva">Mandriva</a></h3>
     
    406476            <h4>Mandriva Linux One 2009 Spring</h4>
    407477            <p>
    408               <blockquote>
     478            <blockquote>
    409479                After installing <a href="http://mandriva.org">Mandriva</a> Linux One 2009 Spring
    410480                you need to install several build dependencies.
    411481                The simplest way to install the build dependencies is to
    412482                execute the following commands as user <tt>root</tt>:
    413                 <p/>
    414                 <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>
     483                <p/>
     484                <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>
    415485                <p/>
    416486                <!-- OpenJDK 6 Specific -->
    417487                <code style="background-color:white">urpmi libopenmotif-devel</code>
    418                 <p/>
     488                <p/>
    419489                In addition, it is necessary to set a few environment variables for the build:
    420                 <p/>
    421                 <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
    422               </blockquote>
     490                <p/>
     491                <code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
     492            </blockquote>
    423493        </blockquote>
    424494        <!-- ====================================================== -->
     
    427497            <h4>OpenSolaris 2009.06</h4>
    428498            <p>
    429               <blockquote>
     499            <blockquote>
    430500                After installing <a href="http://opensolaris.org">OpenSolaris</a> 2009.06
    431501                you need to install several build dependencies.
    432502                The simplest way to install the build dependencies is to
    433503                execute the following commands:
    434                 <p/>
    435                 <code>pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2</code>
     504                <p/>
     505                <code>pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2</code>
    436506                <p/>
    437507                <!-- OpenJDK 6 Specific -->
    438508                <code style="background-color:white">pfexec pkg install SUNWmfrun</code>
    439                 <p/>
     509                <p/>
    440510                In addition, it is necessary to set a few environment variables for the build:
    441                 <p/>
    442                 <code>export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/</code>
    443                 <p/>
     511                <p/>
     512                <code>export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/</code>
     513                <p/>
    444514                Finally, you need to make sure that the build process can find the Sun Studio compilers:
    445                 <p/>
    446                 <code>export PATH=$PATH:/opt/SunStudioExpress/bin/</code>
    447               </blockquote>
     515                <p/>
     516                <code>export PATH=$PATH:/opt/SunStudioExpress/bin/</code>
     517            </blockquote>
    448518        </blockquote>
    449519        <!-- ------------------------------------------------------ -->
     
    452522        <blockquote>
    453523            <p>
    454             The source code for the OpenJDK is delivered in a set of
    455             directories:
    456             <tt>hotspot</tt>,
    457             <tt>langtools</tt>,
    458             <tt>corba</tt>,
    459             <tt>jaxws</tt>,
    460             <tt>jaxp</tt>,
    461             and
    462             <tt>jdk</tt>.
    463             The <tt>hotspot</tt> directory contains the source code and make
    464             files for building the OpenJDK Hotspot Virtual Machine.
    465             The <tt>langtools</tt> directory contains the source code and make
    466             files for building the OpenJDK javac and language tools.
    467             The <tt>corba</tt> directory contains the source code and make
    468             files for building the OpenJDK Corba files.
    469             The <tt>jaxws</tt> directory contains the source code and make
    470             files for building the OpenJDK JAXWS files.
    471             The <tt>jaxp</tt> directory contains the source code and make
    472             files for building the OpenJDK JAXP files.
    473             The <tt>jdk</tt> directory contains the source code and make files for
    474             building the OpenJDK runtime libraries and misc files.
    475             The top level <tt>Makefile</tt>
    476             is used to build the entire OpenJDK.
     524                The source code for the OpenJDK is delivered in a set of
     525                directories:
     526                <tt>hotspot</tt>,
     527                <tt>langtools</tt>,
     528                <tt>corba</tt>,
     529                <tt>jaxws</tt>,
     530                <tt>jaxp</tt>,
     531                and
     532                <tt>jdk</tt>.
     533                The <tt>hotspot</tt> directory contains the source code and make
     534                files for building the OpenJDK Hotspot Virtual Machine.
     535                The <tt>langtools</tt> directory contains the source code and make
     536                files for building the OpenJDK javac and language tools.
     537                The <tt>corba</tt> directory contains the source code and make
     538                files for building the OpenJDK Corba files.
     539                The <tt>jaxws</tt> directory contains the source code and make
     540                files for building the OpenJDK JAXWS files.
     541                The <tt>jaxp</tt> directory contains the source code and make
     542                files for building the OpenJDK JAXP files.
     543                The <tt>jdk</tt> directory contains the source code and make files for
     544                building the OpenJDK runtime libraries and misc files.
     545                The top level <tt>Makefile</tt>
     546                is used to build the entire OpenJDK.
     547            </p>
     548
     549            <h3><a name="drops">Managing the Source Drops</a></h3>
     550            <blockquote>
     551                <p>
     552                    The repositories <tt>jaxp</tt> and <tt>jaxws</tt> actually
     553                    do not contain the sources for JAXP or JAX-WS.
     554                    These products have their own open source procedures at their
     555                    <a href="http://jaxp.java.net/">JAXP</a> and
     556                    <a href="http://jax-ws.java.net/">JAX-WS</a> home pages.
     557                    The OpenJDK project does need access to these sources to build
     558                    a complete JDK image because JAXP and JAX-WS are part of the JDK.
     559                    The current process for delivery of the JAXP and JAX-WS sources
     560                    involves so called "source drop bundles" downloaded from a public
     561                    website.
     562                    There are many reasons for this current mechanism, and it is
     563                    understood that this is not ideal for the open source community.
     564                    It is possible this process could change in the future.
     565                    <br>
     566                    <b>NOTE:</b> The <a href="http://download.java.net/openjdk/jdk6/">
     567                        Complete OpenJDK Source Bundles</a> <u>will</u> contain the JAXP and
     568                    JAX-WS sources.
     569                </p>
     570
     571                <h4><a name="dropcreation">Creation of New Source Drop Bundles</a></h4>
     572                <blockquote>
     573                    <ol>
     574                        <li>
     575                            The JAXP or JAX-WS team prepares a new zip bundle,
     576                            places a copy in a public download area on java.net,
     577                            sends us a link and a list of CRs (Change Request Numbers).
     578                            The older download bundles should not be deleted.
     579                            It is the responsibility of the JAXP and JAX-WS team to
     580                            place the proper GPL legal notices on the sources
     581                            and do any filtering or java re-packaging for the
     582                            OpenJDK instances of these classes.
     583                        </li>
     584                        <li>
     585                            The OpenJDK team copies this new bundle into shared
     586                            area (e.g. <tt>/java/devtools/share/jdk6-drops</tt>).
     587                            Older bundles are never deleted so we retain the history.
     588                        </li>
     589                        <li>
     590                            The OpenJDK team edits the ant property file
     591                            <tt>jaxp/jaxp.properties</tt> or
     592                            <tt>jaxws/jaxws.properties</tt> to update the
     593                            base URL, the zip bundle name, and the MD5 checksum
     594                            of the zip bundle
     595                            (on Solaris: <tt>sum -c md5 <i>bundlename</i></tt>)
     596                        </li>
     597                        <li>
     598                            OpenJDK team reviews and commits those changes with the
     599                            given CRs.
     600                        </li>
     601                    </ol>
     602                </blockquote>
     603
     604                <h4><a name="dropusage">Using Source Drop Bundles</a></h4>
     605                <blockquote>
     606                    <p>
     607                        The ant scripts that build <tt>jaxp</tt> and <tt>jaxws</tt>
     608                        will attempt to locate these zip bundles from the directory
     609                        in the environment variable
     610                        <tt><a href="#ALT_DROPS_DIR">ALT_DROPS_DIR</a></tt>.
     611                        The checksums protect from getting the wrong, corrupted, or
     612                        improperly modified sources.
     613                        Once the sources are made available, the population will not
     614                        happen again unless a <tt>make clobber</tt> is requested
     615                        or the <tt>jaxp/drop/</tt> or <tt>jaxws/drop/</tt>
     616                        directory is explicitly deleted.
     617                        <br>
     618                        <b>NOTE:</b> The default Makefile and ant script behavior
     619                        is to NOT download these bundles from the public http site.
     620                        In general, doing downloads
     621                        during the build process is not advised, it creates too much
     622                        unpredictability in the build process.
     623                        However, you can use <tt>make ALLOW_DOWNLOADS=true</tt> to
     624                        tell the ant script that the download of the zip bundle is
     625                        acceptable.
     626                    </p>
     627                    <p>
     628                        The recommended procedure for keeping a cache of these
     629                        source bundles would be to download them once, place them
     630                        in a directory outside the repositories, and then set
     631                        <tt><a href="#ALT_DROPS_DIR">ALT_DROPS_DIR</a></tt> to refer
     632                        to that directory.
     633                        These drop bundles do change occasionally, so the newer
     634                        bundles may need to be added to this area from time to time.
     635                    </p>
     636                </blockquote>
     637            </blockquote>
    477638        </blockquote>
    478639        <!-- ------------------------------------------------------ -->
     
    481642        <blockquote>
    482643            Building the OpenJDK
    483             is done with a <tt><i>gmake</i></tt>
    484             command line and various
     644            is done with a <a href="#gmake">GNU <tt>make</tt></a> command line
     645            and various
    485646            environment or make variable settings that direct the make rules
    486647            to where various components have been installed.
     
    493654            can be used to help the makefiles locate components.
    494655            <p>
    495             Refer to the bash/sh/ksh setup file
    496             <tt>jdk/make/jdk_generic_profile.sh</tt>
    497             if you need help in setting up your environment variables.
    498             A build could be as simple as:
     656                Refer to the bash/sh/ksh setup file
     657                <tt>jdk/make/jdk_generic_profile.sh</tt>
     658                if you need help in setting up your environment variables.
     659                A build could be as simple as:
    499660            <blockquote>
    500661                <pre><tt>
    501662                bash
    502663                . jdk/make/jdk_generic_profile.sh
    503                 <i>gmake</i> sanity &amp;&amp; <i>gmake</i>
     664                <a href="#gmake"><tt>make</tt></a> sanity &amp;&amp; <a href="#gmake"><tt>make</tt></a>
    504665                </tt></pre>
    505666            </blockquote>
    506667            <p>
    507             Of course ksh or sh would work too.
    508             But some customization will probably be necessary.
    509             The <tt>sanity</tt> rule will make some basic checks on build
    510             dependencies and generate appropriate warning messages
    511             regarding missing, out of date, or newer than expected components
    512             found on your system.
     668                Of course ksh or sh would work too.
     669                But some customization will probably be necessary.
     670                The <tt>sanity</tt> rule will make some basic checks on build
     671                dependencies and generate appropriate warning messages
     672                regarding missing, out of date, or newer than expected components
     673                found on your system.
    513674        </blockquote>
    514675        <!-- ------------------------------------------------------ -->
     
    516677        <h3><a name="gmake">GNU make (<tt><i>gmake</i></tt>)</a></h3>
    517678        <blockquote>
    518             The Makefiles in the OpenJDK are only valid when used with the 
     679            The Makefiles in the OpenJDK are only valid when used with the
    519680            GNU version of the utility command <tt>make</tt>
    520681            (<tt><i>gmake</i></tt>).
     
    522683            <ul>
    523684                <li>
    524                     In general, you need GNU make version 3.78.1 or newer.
    525                 </li>
    526                 <li>
    527                     Place the location of the GNU make binary in the <tt>PATH</tt>. 
     685                    You need GNU make version 3.81 or newer.
     686                </li>
     687                <li>
     688                    Place the location of the GNU make binary in the <tt>PATH</tt>.
    528689                </li>
    529690                <li>
    530691                    <strong>Linux:</strong>
    531                     The <tt>/usr/bin/make</tt> command should work fine for you.
     692                    The <tt>/usr/bin/make</tt> should be 3.81 or newer
     693                    and should work fine for you.
     694                    If this version is not 3.81 or newer,
     695                    see the <a href="#buildgmake">"Building GNU make"</a> section.
    532696                </li>
    533697                <li>
     
    535699                    Do NOT use <tt>/usr/bin/make</tt> on Solaris.
    536700                    If your Solaris system has the software
    537                     from the Solaris Companion CD installed, 
    538                     you should use <tt>gmake</tt>
    539                     which will be located in either the <tt>/opt/sfw/bin</tt> or 
     701                    from the Solaris Companion CD installed,
     702                    you should try and use <tt>gmake</tt>
     703                    which will be located in either the <tt>/opt/sfw/bin</tt> or
    540704                    <tt>/usr/sfw/bin</tt> directory.
     705                    In more recent versions of Solaris GNU make might be found
     706                    at <tt>/usr/bin/gmake</tt>.<br>
     707                    <b>NOTE:</b> It is very likely that this <tt>gmake</tt>
     708                    could be 3.80, you need 3.81, in which case,
     709                    see the <a href="#buildgmake">"Building GNU make"</a> section.
    541710                </li>
    542711                <li>
    543712                    <strong>Windows:</strong>
    544713                    Make sure you start your build inside a bash/sh/ksh shell
    545                     and are using a <tt>make.exe</tt> utility built for that
    546                     environment (a cygwin <tt>make.exe</tt> is not the same
    547                     as a <tt>make.exe</tt> built for something like
    548                     <a href="http://www.mkssoftware.com/">MKS</a>).
     714                    and are using a <tt>make.exe</tt> utility built for that
     715                    environment (a cygwin <tt>make.exe</tt> is not the same
     716                    as a <tt>make.exe</tt> built for something like
     717                    <a href="http://www.mkssoftware.com/">MKS</a>).
    549718                    <br>
    550                     <b>WARNING:</b> Watch out for make version 3.81, it may
    551                     not work due to a lack of support for drive letter paths
    552                     like <tt>C:/</tt>. See
    553                     <a href="#gmake">section on gmake</a>.
    554                     Use a 3.80 version, or find a newer
    555                     version that has this problem fixed.
    556                     The older 3.80 version of make.exe can be downloaded with this
    557                     <a href="http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2" target="_blank">
    558                     link</a>.
    559                     Also see the
     719                    <b>WARNING:</b> Watch out on some make 3.81 versions, it may
     720                    not work due to a lack of support for MS-DOS drive letter paths
     721                    like <tt>C:/</tt> or <tt>C:\</tt>.
     722                    <br>
     723                    You may be able to use the information at the
    560724                    <a href="http://developer.mozilla.org/en/docs/Windows_build_prerequisites_using_cygwin#make" target="_blank">
    561                     mozilla developer center</a>
     725                        mozilla developer center</a>
    562726                    on this topic.
     727                    <br>
     728                    It's hoped that when make 3.82 starts shipping in a future cygwin
     729                    release that this MS-DOS path issue will be fixed.
     730                    <br>
     731                    It may be possible to download the version at
     732                    <a href="http://www.cmake.org/files/cygwin/make.exe">
     733                        www.cmake.org make.exe</a>.
     734                    <br>
     735                    It might be necessary for you to build your own GNU make 3.81,
     736                    see the <a href="#buildgmake">"Building GNU make"</a> section
     737                    in that case.
    563738                </li>
    564739            </ul>
    565740            <p>
    566             Information on GNU make, and access to ftp download sites, are
    567             available on the
    568             <a href="http://www.gnu.org/software/make/make.html" target="_blank">
    569                 GNU make web site
    570             </a>.
    571             The latest source to GNU make is available at
    572             <a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
    573             ftp.gnu.org/pub/gnu/make/</a>.
    574         </blockquote>
     741                Information on GNU make, and access to ftp download sites, are
     742                available on the
     743                <a href="http://www.gnu.org/software/make/make.html" target="_blank">
     744                    GNU make web site
     745                </a>.
     746                The latest source to GNU make is available at
     747                <a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
     748                    ftp.gnu.org/pub/gnu/make/</a>.
     749            </p>
     750            <!-- ------------------------------------------------------ -->
     751            <h4><a name="buildgmake">Building GNU make</a></h4>
     752            <blockquote>
     753                First step is to get the GNU make 3.81 source from
     754                <a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
     755                    ftp.gnu.org/pub/gnu/make/</a>.
     756                Building is a little different depending on the OS and unix toolset
     757                on Windows:
     758                <ul>
     759                    <li>
     760                        <strong>Linux:</strong>
     761                        <tt>./configure && make</tt>
     762                    </li>
     763                    <li>
     764                        <strong>Solaris:</strong>
     765                        <tt>./configure && gmake CC=gcc</tt>
     766                    </li>
     767                    <li>
     768                        <strong>Windows for CYGWIN:</strong>
     769                        <tt>./configure && make</tt>
     770                    </li>
     771                    <li>
     772                        <strong>Windows for MKS: (CYGWIN is recommended)</strong>
     773                        <tt>./configure && make -f Makefile.win32</tt>
     774                    </li>
     775                </ul>
     776            </blockquote>
     777        </blockquote>
     778
    575779        <!-- ------------------------------------------------------ -->
    576780        <hr>
     
    582786            approximately 1.5 GB of free disk space.
    583787            <p>
    584             <strong>X64 only:</strong>
    585             The minimum recommended hardware for building the Linux
    586             version is an AMD Opteron class processor, at least 512 MB of RAM, and
    587             approximately 4 GB of free disk space.
     788                <strong>X64 only:</strong>
     789                The minimum recommended hardware for building the Linux
     790                version is an AMD Opteron class processor, at least 512 MB of RAM, and
     791                approximately 4 GB of free disk space.
    588792            <p>
    589             The build will use the tools contained in
    590             <tt>/bin</tt> and
    591             <tt>/usr/bin</tt>
    592             of a standard installation of the Linux operating environment.
    593             You should ensure that these directories are in your
    594             <tt>PATH</tt>.
    595             <p>
    596             Note that some Linux systems have a habit of pre-populating
    597             your environment variables for you, for example <tt>JAVA_HOME</tt>
    598             might get pre-defined for you to refer to the JDK installed on
    599             your Linux system.
    600             You will need to unset <tt>JAVA_HOME</tt>.
    601             It's a good idea to run <tt>env</tt> and verify the
    602             environment variables you are getting from the default system
    603             settings make sense for building the
    604             OpenJDK.
     793                The build will use the tools contained in
     794                <tt>/bin</tt> and
     795                <tt>/usr/bin</tt>
     796                of a standard installation of the Linux operating environment.
     797                You should ensure that these directories are in your
     798                <tt>PATH</tt>.
     799            <p>
     800                Note that some Linux systems have a habit of pre-populating
     801                your environment variables for you, for example <tt>JAVA_HOME</tt>
     802                might get pre-defined for you to refer to the JDK installed on
     803                your Linux system.
     804                You will need to unset <tt>JAVA_HOME</tt>.
     805                It's a good idea to run <tt>env</tt> and verify the
     806                environment variables you are getting from the default system
     807                settings make sense for building the
     808                OpenJDK.
    605809        </blockquote>
    606810        <!-- ------------------------------------------------------ -->
     
    618822                </li>
    619823                <li>
    620                   Install or upgrade the <a href="#freetype">FreeType development
    621                     package</a>.
     824                    Install or upgrade the <a href="#freetype">FreeType development
     825                        package</a>.
    622826                </li>
    623827                <li>
    624828                    Install
    625                     <a href="#ant">Ant</a>,
     829                    <a href="#ant">Ant 1.7.1 or newer</a>,
    626830                    make sure it is in your PATH.
    627831                </li>
    628832                <li style="background-color:white">
    629                   <!-- OpenJDK 6 Specific -->
    630                   Install the
    631                   <a href="#motif">Motif header files</a>, set
    632                   <tt><a href="#ALT_MOTIF_DIR">ALT_MOTIF_DIR</a></tt>.
     833                    <!-- OpenJDK 6 Specific -->
     834                    Install the
     835                    <a href="#motif">Motif header files</a>, set
     836                    <tt><a href="#ALT_MOTIF_DIR">ALT_MOTIF_DIR</a></tt>.
    633837                </li>
    634838            </ol>
     
    646850            space is needed for a 32-bit build.
    647851            <p>
    648             If you are building the 64bit version, you should
    649             run the command "isainfo -v" to verify that you have a
    650             64-bit installation, it should say <tt>sparcv9</tt> or
    651             <tt>amd64</tt>.
    652             An additional 7 GB of free disk space is needed
    653             for a 64-bit build.
     852                If you are building the 64bit version, you should
     853                run the command "isainfo -v" to verify that you have a
     854                64-bit installation, it should say <tt>sparcv9</tt> or
     855                <tt>amd64</tt>.
     856                An additional 7 GB of free disk space is needed
     857                for a 64-bit build.
    654858            <p>
    655             The build uses the tools contained in <tt>/usr/ccs/bin</tt>
    656             and <tt>/usr/bin</tt> of a standard developer or full installation of
    657             the Solaris operating environment.
     859                The build uses the tools contained in <tt>/usr/ccs/bin</tt>
     860                and <tt>/usr/bin</tt> of a standard developer or full installation of
     861                the Solaris operating environment.
    658862            <p>
    659             Solaris patches specific to the JDK can be downloaded from the
    660             <a href="http://sunsolve.sun.com/show.do?target=patches/JavaSE" target="_blank">
    661             SunSolve JDK Solaris patches download page</a>.
    662             You should ensure that the latest patch cluster for
    663             your version of the Solaris operating environment has also
    664             been installed.
     863                Solaris patches specific to the JDK can be downloaded from the
     864                <a href="http://sunsolve.sun.com/show.do?target=patches/JavaSE" target="_blank">
     865                    SunSolve JDK Solaris patches download page</a>.
     866                You should ensure that the latest patch cluster for
     867                your version of the Solaris operating environment has also
     868                been installed.
    665869        </blockquote>
    666870        <!-- ------------------------------------------------------ -->
     
    689893                <li>
    690894                    Install
    691                     <a href="#ant">Ant</a>,
     895                    <a href="#ant">Ant 1.7.1 or newer</a>,
    692896                    make sure it is in your PATH.
    693897                </li>
     
    709913            </strong>
    710914            <p>
    711             <strong>X64 only:</strong>
    712             The minimum recommended hardware for building
    713             the Windows X64 version is an AMD Opteron class processor, at least 1
    714             GB of RAM, and approximately 10 GB of free disk space.
     915                <strong>X64 only:</strong>
     916                The minimum recommended hardware for building
     917                the Windows X64 version is an AMD Opteron class processor, at least 1
     918                GB of RAM, and approximately 10 GB of free disk space.
    715919        </blockquote>
    716920        <!-- ------------------------------------------------------ -->
     
    731935            <tt>cygpath -s -m "<i>path</i>"</tt>.
    732936            <p>
    733             The makefiles will try to translate any pathnames supplied
    734             to it into the <tt>C:/</tt> style automatically.
    735             <p>
    736             Note that use of CYGWIN creates a unique problem with regards to
    737             setting <a href="#path"><tt>PATH</tt></a>. Normally on Windows
    738             the <tt>PATH</tt> variable contains directories
    739             separated with the ";" character (Solaris and Linux uses ":").
    740             With CYGWIN, it uses ":", but that means that paths like "C:/path"
    741             cannot be placed in the CYGWIN version  of <tt>PATH</tt> and
    742             instead CYGWIN uses something like <tt>/cygdrive/c/path</tt>
    743             which CYGWIN understands, but only CYGWIN understands.
    744             So be careful with paths on Windows.
     937                The makefiles will try to translate any pathnames supplied
     938                to it into the <tt>C:/</tt> style automatically.
     939            <p>
     940                Note that use of CYGWIN creates a unique problem with regards to
     941                setting <a href="#path"><tt>PATH</tt></a>. Normally on Windows
     942                the <tt>PATH</tt> variable contains directories
     943                separated with the ";" character (Solaris and Linux uses ":").
     944                With CYGWIN, it uses ":", but that means that paths like "C:/path"
     945                cannot be placed in the CYGWIN version  of <tt>PATH</tt> and
     946                instead CYGWIN uses something like <tt>/cygdrive/c/path</tt>
     947                which CYGWIN understands, but only CYGWIN understands.
     948                So be careful with paths on Windows.
    745949        </blockquote>
    746950        <!-- ------------------------------------------------------ -->
     
    776980                <li>
    777981                    Install
    778                     <a href="#ant">Ant</a>,
     982                    <a href="#ant">Ant 1.7.1 or newer,</a>,
    779983                    make sure it is in your PATH and set
    780984                    <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
     
    8091013                </blockquote>
    8101014                The JDK 6 binaries can be downloaded from Sun's
    811                 <a href="http://java.sun.com/javase/1.6.0/download.html" target="_blank">JDK 6 download site</a>.
     1015                <a href="http://java.sun.com/javase/1.6.0/download.html" target="_blank">
     1016                    JDK 6 download site</a>.
    8121017                For build performance reasons
    8131018                is very important that this bootstrap JDK be made available on the
     
    8221027                not required.
    8231028                <p>
    824                 <strong>Solaris:</strong>
    825                 Some pre-installed JDK images may be available to you in the
    826                 directory <tt>/usr/jdk/instances</tt>.
    827                 If you don't set
    828                 <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>
    829                 The makefiles will look in that location for a JDK it can use.
    830                 <p>
    831                 <strong>Linux:</strong>
     1029                    <strong>Solaris:</strong>
     1030                    Some pre-installed JDK images may be available to you in the
     1031                    directory <tt>/usr/jdk/instances</tt>.
     1032                    If you don't set
     1033                    <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>
     1034                    The makefiles will look in that location for a JDK it can use.
     1035                <p>
     1036                    <strong>Linux:</strong>
    8321037                Many GNU/Linux distributions already include OpenJDK 6. OpenJDK 6
    8331038                can be used to bootstrap itself, so installing the corresponding
    8341039                distribution package is sufficient. You'll still need to set
    835                 <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>, though.
     1040                    <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a></tt>, though.
    8361041            </blockquote>
    8371042            <!-- ------------------------------------------------------ -->
     
    8481053            <h4><a name="ant">Ant</a></h4>
    8491054            <blockquote>
    850                 All OpenJDK builds require access to least Ant 1.6.5.
    851                 The Ant tool is available from the
    852                 <a href="http://ant.apache.org" target="_blank">
    853                 Ant download site</a>.
     1055                All OpenJDK builds require access to least Ant 1.7.1.
     1056                The Ant 1.7.1 tool is available from the
     1057                <a href="http://archive.apache.org/dist/ant/binaries/apache-ant-1.7.1-bin.zip" target="_blank">
     1058                    Ant 1.7.1 archive download site</a>.
    8541059                You should always make sure <tt>ant</tt> is in your PATH, and
    8551060                on Windows you may also need to set
     
    8581063                the Ant installation, this is the directory pathname
    8591064                that contains a <tt>bin and lib</tt>.
     1065                <br>
     1066                <b>WARNING:</b> Ant versions used from IDE tools like NetBeans
     1067                or installed via system packages may not operate the same
     1068                as the one obtained from the Ant download bundles.
     1069                These system and IDE installers sometimes choose to change
     1070                the ant installation enough to cause differences.
    8601071            </blockquote>
    8611072            <!-- ------------------------------------------------------ -->
     
    8631074            <blockquote>
    8641075                See <a href="http://en.wikipedia.org/wiki/Certificate_Authority" target="_blank">
    865                 http://en.wikipedia.org/wiki/Certificate_Authority</a>
     1076                    http://en.wikipedia.org/wiki/Certificate_Authority</a>
    8661077                for a better understanding of the Certificate Authority (CA).
    8671078                A certificates file named "cacerts"
     
    8971108                    At a minimum, the
    8981109                    <a href="http://developers.sun.com/sunstudio/index.jsp" target="_blank">
    899                     Sun Studio 11 Compilers</a>
     1110                        Sun Studio 11 Compilers</a>
    9001111                    (containing version 5.8 of the C and C++ compilers) is required,
    9011112                    with patches from the
    9021113                    <a href="http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access" target="_blank">
    903                     SunSolve web site</a>.
     1114                        SunSolve web site</a>.
    9041115                    <p>
    905                     Set
    906                     <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>
    907                     to point to the location of
    908                     the compiler binaries, and place this location in the <tt>PATH</tt>.
     1116                        Set
     1117                        <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>
     1118                        to point to the location of
     1119                        the compiler binaries, and place this location in the <tt>PATH</tt>.
    9091120                    <p>
    910                     The Sun Studio Express compilers at:
    911                     <a href="http://developers.sun.com/sunstudio/downloads/express.jsp" target="_blank">
    912                     Sun Studio Express Download site</a>
    913                     are also an option, although these compilers have not
    914                     been extensively used yet.
     1121                        The Sun Studio Express compilers at:
     1122                        <a href="http://developers.sun.com/sunstudio/downloads/express.jsp" target="_blank">
     1123                            Sun Studio Express Download site</a>
     1124                        are also an option, although these compilers have not
     1125                        been extensively used yet.
    9151126                </blockquote>
    9161127                <strong><a name="msvc">Windows i586: Microsoft Visual Studio .NET 2003 Professional</a></strong>
     
    9231134                    is set by the Microsoft Visual Studio .NET installer.
    9241135                    <p>
    925                     Once the compiler is installed,
    926                     it is recommended that you run <tt>VCVARS32.BAT</tt>
    927                     to set the compiler environment variables
    928                     <tt>MSVCDIR</tt>,
    929                     <tt>INCLUDE</tt>,
    930                     <tt>LIB</tt>, and
    931                     <tt>PATH</tt>
    932                     prior to building the
    933                     OpenJDK.
    934                     The above environment variables <b>MUST</b> be set.
     1136                        Once the compiler is installed,
     1137                        it is recommended that you run <tt>VCVARS32.BAT</tt>
     1138                        to set the compiler environment variables
     1139                        <tt>MSVCDIR</tt>,
     1140                        <tt>INCLUDE</tt>,
     1141                        <tt>LIB</tt>, and
     1142                        <tt>PATH</tt>
     1143                        prior to building the
     1144                        OpenJDK.
     1145                        The above environment variables <b>MUST</b> be set.
    9351146                    <p>
    936                     The Microsoft Visual Studio .NET 2005 (VS2005) compiler
    937                     will not work at this time due to the new runtime dll
    938                     and the manifest requirements.
     1147                        These bat files are not easy to use from a shell environment.
     1148                        There is a script placed in the root jdk6 repository called
     1149                        vsvars.sh that can help, it should only be done once in a shell
     1150                        that will be doing the build, e.g.<br>
     1151                        <tt>sh ./make/scripts/vsvars.sh -v7 > settings<br>
     1152                            eval `cat settings`</tt><br>
     1153                        Or just <tt>eval `sh ./make/scripts/vsvars.sh -v7`</tt>.
     1154                    <p>
     1155                        The Microsoft Visual Studio .NET 2005 (VS2005) compiler
     1156                        will not work at this time due to the new runtime dll
     1157                        and the manifest requirements.
    9391158                </blockquote>
    9401159                <strong><a name="mssdk">Windows X64: Microsoft Platform SDK April 2005</a></strong>
     
    9471166                    the MDAC SDK features of this compiler.
    9481167                    <p>
    949                     Once the Platform SDK is installed,
    950                     it is recommended that you run <tt>SetEnv.Cmd /X64</tt>
    951                     to set the compiler environment variables
    952                     <tt>MSSDK</tt>,
    953                     <tt>MSTOOLS</tt>,
    954                     <tt>INCLUDE</tt>,
    955                     <tt>LIB</tt>, and
    956                     <tt>PATH</tt>
    957                     prior to building the
    958                     OpenJDK.
    959                     The above environment variables <b>MUST</b> be set.
     1168                        Once the Platform SDK is installed,
     1169                        it is recommended that you run <tt>SetEnv.Cmd /X64</tt>
     1170                        to set the compiler environment variables
     1171                        <tt>MSSDK</tt>,
     1172                        <tt>MSTOOLS</tt>,
     1173                        <tt>INCLUDE</tt>,
     1174                        <tt>LIB</tt>, and
     1175                        <tt>PATH</tt>
     1176                        prior to building the
     1177                        OpenJDK.
     1178                        The above environment variables <b>MUST</b> be set.
    9601179                    <p>
    961                     Note that this compiler may say it's version is a
    962                     Microsoft Visual Studio .NET 2005 (VS2005), but be careful,
    963                     it will not match the official VS2005 product.
    964                     This Platform SDK compiler is only used on X64 builds.
     1180                        Note that this compiler may say it's version is a
     1181                        Microsoft Visual Studio .NET 2005 (VS2005), but be careful,
     1182                        it will not match the official VS2005 product.
     1183                        This Platform SDK compiler is only used on X64 builds.
    9651184                </blockquote>
    9661185            </blockquote>
     
    9891208                <tt>/opt/sfw/cups</tt>.
    9901209                <p>
    991                 <strong>Linux:</strong>
    992                 CUPS header files are required for building the
    993                 OpenJDK on Linux.
    994                 The Linux header files are usually available from a "cups"
    995                 development package, it's recommended that you try and use
    996                 the package provided by the particular version of Linux that
    997                 you are using.
     1210                    <strong>Linux:</strong>
     1211                    CUPS header files are required for building the
     1212                    OpenJDK on Linux.
     1213                    The Linux header files are usually available from a "cups"
     1214                    development package, it's recommended that you try and use
     1215                    the package provided by the particular version of Linux that
     1216                    you are using.
    9981217                <p>
    999                 The CUPS header files can always be downloaded from
    1000                 <a href="http://www.cups.org" target="_blank">www.cups.org</a>.
    1001                 The variable
    1002                 <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>
    1003                 can be used to override the default location of the
    1004                 CUPS Header files.
     1218                    The CUPS header files can always be downloaded from
     1219                    <a href="http://www.cups.org" target="_blank">www.cups.org</a>.
     1220                    The variable
     1221                    <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>
     1222                    can be used to override the default location of the
     1223                    CUPS Header files.
    10051224            </blockquote>
    10061225            <!-- ------------------------------------------------------ -->
     
    10111230                OpenJDK 6.
    10121231                <p>
    1013                 <strong>Solaris:</strong>
    1014                 Normally these files can be found on Solaris systems
    1015                 at /usr/include/Xm, so on Solaris systems no further downloads
    1016                 should be needed.
     1232                    <strong>Solaris:</strong>
     1233                    Normally these files can be found on Solaris systems
     1234                    at /usr/include/Xm, so on Solaris systems no further downloads
     1235                    should be needed.
    10171236                <p>
    1018                 <strong>Linux:</strong>
    1019                 On Linux, your particular Linux distribution may provide a
    1020                 "motif" development package you can install. If this package
    1021                 installs the files into /usr/include/Xm, no further action should
    1022                 be needed.
    1023                 An acceptable version of these Motif header files are
    1024                 available in the source bundle
    1025                 <a href="http://www.openbsd.org/3.9_packages/hppa/openmotif-2.1.30.5p1.tgz-long.html">
    1026                 openmotif-2.1.30.5p1.tgz</a>
    1027                 from
    1028                 <a href="http://www.openbsd.org/">www.openbsd.org</a>.
    1029                 You would need to install the package and set the environment variable
    1030                 <tt><a href="#ALT_MOTIF_DIR">ALT_MOTIF_DIR</a></tt>
    1031                 to refer to the top of this installation.
     1237                    <strong>Linux:</strong>
     1238                    On Linux, your particular Linux distribution may provide a
     1239                    "motif" development package you can install. If this package
     1240                    installs the files into /usr/include/Xm, no further action should
     1241                    be needed.
     1242                    An acceptable version of these Motif header files are
     1243                    available in the source bundle
     1244                    <a href="http://www.openbsd.org/3.9_packages/hppa/openmotif-2.1.30.5p1.tgz-long.html">
     1245                        openmotif-2.1.30.5p1.tgz</a>
     1246                    from
     1247                    <a href="http://www.openbsd.org/">www.openbsd.org</a>.
     1248                    You would need to install the package and set the environment variable
     1249                    <tt><a href="#ALT_MOTIF_DIR">ALT_MOTIF_DIR</a></tt>
     1250                    to refer to the top of this installation.
    10321251            </blockquote>
    10331252            <!-- ------------------------------------------------------ -->
     
    10401259                includes both FreeType library and header files.
    10411260                <p>
    1042                 You can always download latest FreeType version from the
    1043                 <a href="http://www.freetype.org" target="_blank">FreeType website</a>.
     1261                    You can always download latest FreeType version from the
     1262                    <a href="http://www.freetype.org" target="_blank">FreeType website</a>.
    10441263                <p>
    1045                 Makefiles will try to pick FreeType from /usr/lib and /usr/include.
    1046                 In case it is installed elsewhere you will need to set environment
    1047                 variables
    1048                 <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
    1049                 and
    1050                 <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
    1051                 to refer to place where library and header files are installed.
     1264                    Makefiles will try to pick FreeType from /usr/lib and /usr/include.
     1265                    In case it is installed elsewhere you will need to set environment
     1266                    variables
     1267                    <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
     1268                    and
     1269                    <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
     1270                    to refer to place where library and header files are installed.
    10521271            </blockquote>   
    10531272            <!-- ------------------------------------------------------ -->
     
    10651284                missing or the wrong version.
    10661285                <p>
    1067                 In particular, older Linux systems will likely not have the
    1068                 right version of ALSA installed, for example
    1069                 Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently
    1070                 recent ALSA distribution.
    1071                 On rpm-based systems, you can see if ALSA is installed by
    1072                 running this command:
     1286                    In particular, older Linux systems will likely not have the
     1287                    right version of ALSA installed, for example
     1288                    Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently
     1289                    recent ALSA distribution.
     1290                    On rpm-based systems, you can see if ALSA is installed by
     1291                    running this command:
    10731292                <pre>
    10741293                    <tt>rpm -qa | grep alsa</tt>
     
    10761295                Both <tt>alsa</tt> and <tt>alsa-devel</tt> packages are needed.
    10771296                <p>
    1078                 If your distribution does not come with ALSA, and you can't
    1079                 find ALSA packages built for your particular system,
    1080                 you can try to install the pre-built ALSA rpm packages from
    1081                 <a href="http://www.freshrpms.net/" target="_blank">
    1082                 <tt>www.freshrpms.net</tt></a>.
    1083                 Note that installing a newer ALSA could
    1084                 break sound output if an older version of ALSA was previously
    1085                 installed on the system, but it will enable JDK compilation.
     1297                    If your distribution does not come with ALSA, and you can't
     1298                    find ALSA packages built for your particular system,
     1299                    you can try to install the pre-built ALSA rpm packages from
     1300                    <a href="http://www.freshrpms.net/" target="_blank">
     1301                        <tt>www.freshrpms.net</tt></a>.
     1302                    Note that installing a newer ALSA could
     1303                    break sound output if an older version of ALSA was previously
     1304                    installed on the system, but it will enable JDK compilation.
    10861305                <blockquote>
    10871306                    Installation: execute as root<br>
     
    10981317                As a last resort you can go to the
    10991318                <a href="http://www.alsa-project.org" target="_blank">
    1100                 Advanced Linux Sound Architecture Site</a> and build it from
     1319                    Advanced Linux Sound Architecture Site</a> and build it from
    11011320                source.
    11021321                <blockquote>
     
    11261345                steps are necessary as outlined in the documentation on ALSA's homepage.
    11271346                <p>
    1128                 ALSA can be uninstalled by executing <tt>make uninstall</tt> first in
    1129                 the <tt>alsa-lib-0.9.1</tt> directory and then in
    1130                 <tt>alsa-driver-0.9.1</tt>.
     1347                    ALSA can be uninstalled by executing <tt>make uninstall</tt> first in
     1348                    the <tt>alsa-lib-0.9.1</tt> directory and then in
     1349                    <tt>alsa-driver-0.9.1</tt>.
    11311350            </blockquote>
    11321351            There are no ALT* variables to change the assumed locations of ALSA,
     
    11431362                <a href="http://www.cygwin.com" target="_blank">CYGWIN</a>.
    11441363                <p>
    1145                 The OpenJDK build requires CYGWIN version 1.5.12 or newer.
    1146                 Information about CYGWIN can
    1147                 be obtained from the CYGWIN website at
    1148                 <a href="http://www.cygwin.com" target="_blank">www.cygwin.com</a>.
     1364                    The OpenJDK build requires CYGWIN version 1.5.12 or newer.
     1365                    Information about CYGWIN can
     1366                    be obtained from the CYGWIN website at
     1367                    <a href="http://www.cygwin.com" target="_blank">www.cygwin.com</a>.
    11491368                <p>
    1150                 By default CYGWIN doesn't install all the tools required for building
    1151                 the OpenJDK.
    1152                 Along with the default installation, you need to install
    1153                 the following tools.
     1369                    By default CYGWIN doesn't install all the tools required for building
     1370                    the OpenJDK.
     1371                    Along with the default installation, you need to install
     1372                    the following tools.
    11541373                <blockquote>
    11551374                    <table border="1">
     
    11661385                                <td>Devel</td>
    11671386                                <td>binutils: The GNU assembler, linker and binary
    1168                                 utilities</td>
     1387                                    utilities</td>
    11691388                            </tr>
    11701389                            <tr>
     
    11771396                                <td>Interpreters</td>
    11781397                                <td>m4: GNU implementation of the traditional Unix macro
    1179                                 processor</td>
     1398                                    processor</td>
    11801399                            </tr>
    11811400                            <tr>
     
    12131432                </blockquote>
    12141433                <p>
    1215                 Note that the CYGWIN software can conflict with other non-CYGWIN
    1216                 software on your Windows system.
    1217                 CYGWIN provides a
    1218                 <a href="http://cygwin.com/faq/faq.using.html" target="_blank">FAQ</a> for
    1219                 known issues and problems, of particular interest is the
    1220                 section on
    1221                 <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
    1222                 BLODA (applications that interfere with CYGWIN)</a>.
     1434                    Note that the CYGWIN software can conflict with other non-CYGWIN
     1435                    software on your Windows system.
     1436                    CYGWIN provides a
     1437                    <a href="http://cygwin.com/faq/faq.using.html" target="_blank">FAQ</a> for
     1438                    known issues and problems, of particular interest is the
     1439                    section on
     1440                    <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
     1441                        BLODA (applications that interfere with CYGWIN)</a>.
    12231442            </blockquote>
    12241443            <strong><a name="dxsdk">Microsoft DirectX 9.0 SDK header files and libraries</a></strong>
     
    12291448                This SDK can be downloaded from
    12301449                <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FD044A42-9912-42A3-9A9E-D857199F888E&amp;displaylang=en" target="_blank">
    1231                 Microsoft DirectX 9.0 SDK (Summer 2004)</a>.
     1450                    Microsoft DirectX 9.0 SDK (Summer 2004)</a>.
    12321451                If the link above becomes obsolete, the SDK can be found from
    12331452                <a href="http://download.microsoft.com" target="_blank">the Microsoft Download Site</a>
     
    12481467                variable to the location.
    12491468                <p>
    1250                 <strong>X64 only:</strong>
    1251                 The OpenJDK 64bit build requires access to
    1252                 <tt>MSVCRT.DLL</tt> version 7.0.3790.0 or newer, which is
    1253                 usually supplied by the
    1254                 <a href="#mssdk">Platform SDK</a>.
    1255                 If it is not available from the Platform SDK,
    1256                 set the
    1257                 <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
    1258                 variable to the location.
     1469                    <strong>X64 only:</strong>
     1470                    The OpenJDK 64bit build requires access to
     1471                    <tt>MSVCRT.DLL</tt> version 7.0.3790.0 or newer, which is
     1472                    usually supplied by the
     1473                    <a href="#mssdk">Platform SDK</a>.
     1474                    If it is not available from the Platform SDK,
     1475                    set the
     1476                    <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
     1477                    variable to the location.
    12591478            </blockquote>
    12601479            <strong><tt><a name="msvcr71">MSVCR71.DLL</a></tt></strong>
     
    13071526            </ol>
    13081527            <p>
    1309             <strong>Solaris:</strong>
    1310             Note that ARCH_DATA_MODEL is really only needed on Solaris to
    1311             indicate you want to built the 64-bit version.
    1312             And before the Solaris 64-bit binaries can be used, they
    1313             must be merged with the binaries from a separate 32-bit build.
    1314             The merged binaries may then be used in either 32-bit or 64-bit mode, with
    1315             the selection occurring at runtime
    1316             with the <tt>-d32</tt> or <tt>-d64</tt> options.
     1528                <strong>Solaris:</strong>
     1529                Note that ARCH_DATA_MODEL is really only needed on Solaris to
     1530                indicate you want to built the 64-bit version.
     1531                And before the Solaris 64-bit binaries can be used, they
     1532                must be merged with the binaries from a separate 32-bit build.
     1533                The merged binaries may then be used in either 32-bit or 64-bit mode, with
     1534                the selection occurring at runtime
     1535                with the <tt>-d32</tt> or <tt>-d64</tt> options.
    13171536        </blockquote>
    13181537        <!-- ------------------------------------------------------ -->
     
    13261545            <tt>build/<i>platform</i></tt>,
    13271546            where <tt><i>platform</i></tt> is one of
    1328             <tt><ul>
    1329                     <li>solaris-sparc</li>
    1330                     <li>solaris-sparcv9</li>
    1331                     <li>solaris-i586</li>
    1332                     <li>solaris-amd64</li>
    1333                     <li>linux-i586</li>
    1334                     <li>linux-amd64</li>
    1335                     <li>windows-i586</li>
    1336                     <li>windows-amd64</li>
    1337             </ul></tt>
     1547            <ul>
     1548                <li><tt>solaris-sparc</tt></li>
     1549                <li><tt>solaris-sparcv9</tt></li>
     1550                <li><tt>solaris-i586</tt></li>
     1551                <li><tt>solaris-amd64</tt></li>
     1552                <li><tt>linux-i586</tt></li>
     1553                <li><tt>linux-amd64</tt></li>
     1554                <li><tt>windows-i586</tt></li>
     1555                <li><tt>windows-amd64</tt></li>
     1556            </ul>
    13381557            In particular, the
    13391558            <tt>build/<i>platform</i>/j2sdk-image/bin</tt>
     
    13411560            OpenJDK tools and utilities.
    13421561            <p>
    1343             You can test that the build completed properly by using the build
    1344             to run the various demos that you will find in the
    1345             <tt>build/<i>platform</i>/j2sdk-image/demo</tt>
    1346             directory.
    1347             <p>
    1348             The provided regression tests can be run with the <tt>jtreg</tt>
    1349             utility from
    1350             <a href="http://openjdk.java.net/jtreg/" target="_blank">the jtreg site</a>.
     1562                You can test that the build completed properly by using the build
     1563                to run the various demos that you will find in the
     1564                <tt>build/<i>platform</i>/j2sdk-image/demo</tt>
     1565                directory.
     1566            <p>
     1567                The provided regression tests can be run with the <tt>jtreg</tt>
     1568                utility from
     1569                <a href="http://openjdk.java.net/jtreg/" target="_blank">the jtreg site</a>.
    13511570        </blockquote>
    13521571        <!-- ------------------------------------------------------ -->
     
    13541573        <h2><a name="variables">Environment/Make Variables</a></h2>
    13551574        <p>
    1356         Some of the
    1357         environment or make variables (just called <b>variables</b> in this
    1358         document) that can impact the build are:
     1575            Some of the
     1576            environment or make variables (just called <b>variables</b> in this
     1577            document) that can impact the build are:
    13591578        <blockquote>
    13601579            <dl>
     
    13641583                        <li>The location of the GNU make binary</li>
    13651584                        <li>The location of the Bootstrap JDK <tt>java</tt>
    1366                         (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
     1585                            (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
    13671586                        <li>The location of the C/C++ compilers
    1368                         (see <a href="#compilers"><tt>compilers</tt></a>)</li>
     1587                            (see <a href="#compilers"><tt>compilers</tt></a>)</li>
    13691588                        <li>The location or locations for the Unix command utilities
    1370                         (e.g. <tt>/usr/bin</tt>)</li>
     1589                            (e.g. <tt>/usr/bin</tt>)</li>
    13711590                    </ul>
    13721591                </dd>
     
    14671686                    and on Windows with CYGWIN
    14681687                    <tt>/usr/bin</tt>.
     1688                </dd>
     1689                <dt><tt><a name="ALT_DROPS_DIR">ALT_DROPS_DIR</a></tt> </dt>
     1690                <dd>
     1691                    The location of any source drop bundles
     1692                    (see <a href="#drops">Managing the Source Drops</a>).
     1693                    The default will be
     1694                    <tt>$(ALT_JDK_DEVTOOLS_PATH)/share/jdk6-drops</tt>.
    14691695                </dd>
    14701696                <dt><a name="ALT_UNIXCOMMAND_PATH"><tt>ALT_UNIXCOMMAND_PATH</tt></a> </dt>
     
    15711797            <a href="#contents">Table of Contents</a>.
    15721798            <p>
    1573             You can validate your build environment by using the <tt>sanity</tt>
    1574             target.
    1575             Any errors listed
    1576             will stop the build from starting, and any warnings may result in
    1577             a flawed product build.
    1578             We strongly encourage you to evaluate every
    1579             sanity check warning and fix it if required, before you proceed
    1580             further with your build.
    1581             <p>
    1582             Some of the more common problems with builds are briefly described
    1583             below, with suggestions for remedies.
     1799                You can validate your build environment by using the <tt>sanity</tt>
     1800                target.
     1801                Any errors listed
     1802                will stop the build from starting, and any warnings may result in
     1803                a flawed product build.
     1804                We strongly encourage you to evaluate every
     1805                sanity check warning and fix it if required, before you proceed
     1806                further with your build.
     1807            <p>
     1808                Some of the more common problems with builds are briefly described
     1809                below, with suggestions for remedies.
    15841810            <ul>
     1811                <li>
     1812                    <b>Corrupted Bundles on Windows:</b>
     1813                    <blockquote>
     1814                        Some virus scanning software has been known to corrupt the
     1815                        downloading of zip bundles.
     1816                        It may be necessary to disable the 'on access' or 'real time'
     1817                        virus scanning features to prevent this corruption.
     1818                        This type of "real time" virus scanning can also slow down the
     1819                        build process significantly.
     1820                        Temporarily disabling the feature, or excluding the build
     1821                        output directory may be necessary to get correct and faster builds.
     1822                    </blockquote>
     1823                </li>
    15851824                <li>
    15861825                    <b>Slow Builds:</b>
     
    15921831                        not a good idea).
    15931832                        <p>
    1594                         Creating the javadocs can be very slow, if you are running
    1595                         javadoc, consider skipping that step.
     1833                            Creating the javadocs can be very slow, if you are running
     1834                            javadoc, consider skipping that step.
    15961835                        <p>
    1597                         Faster hardware and more RAM always helps too.
    1598                         The VM build tends to be CPU intensive (many C++ compiles),
    1599                         and the rest of the JDK will often be disk intensive.
     1836                            Faster hardware and more RAM always helps too.
     1837                            The VM build tends to be CPU intensive (many C++ compiles),
     1838                            and the rest of the JDK will often be disk intensive.
    16001839                        <p>
    1601                         Faster compiles are possible using a tool called
    1602                         <a href="http://ccache.samba.org/" target="_blank">ccache</a>.
     1840                            Faster compiles are possible using a tool called
     1841                            <a href="http://ccache.samba.org/" target="_blank">ccache</a>.
    16031842                    </blockquote>
    16041843                </li>
     
    16091848                        <blockquote>
    16101849                            <i>Warning message:</i><tt> File `xxx' has modification time in
    1611                             the future.</tt>
     1850                                the future.</tt>
    16121851                            <br>
    16131852                            <i>Warning message:</i> <tt> Clock skew detected. Your build may
    1614                             be incomplete.</tt>
     1853                                be incomplete.</tt>
    16151854                        </blockquote>
    16161855                        These warnings can occur when the clock on the build machine is out of
     
    16241863                        in the 1.4 source code.
    16251864                        <p>
    1626                         If you see these warnings, reset the clock on the build
    1627                         machine, run "<tt><i>gmake</i> clobber</tt>" or delete the directory
    1628                         containing the build output, and restart the build from the beginning.
     1865                            If you see these warnings, reset the clock on the build
     1866                            machine, run "<tt><i>gmake</i> clobber</tt>" or delete the directory
     1867                            containing the build output, and restart the build from the beginning.
    16291868                    </blockquote>
    16301869                </li>
     
    16531892                        This is probably an issue with SELinux (See
    16541893                        <a href="http://en.wikipedia.org/wiki/SELinux" target="_blank">
    1655                         http://en.wikipedia.org/wiki/SELinux</a>).
     1894                            http://en.wikipedia.org/wiki/SELinux</a>).
    16561895                        Parts of the VM is built without the <tt>-fPIC</tt> for
    16571896                        performance reasons.
    16581897                        <p>
    1659                         To completely disable SELinux:
    1660                         <tt>
    1661                             <ol>
    1662                                 <li>$ su root</li>
    1663                                 <li># system-config-securitylevel</li>
    1664                                 <li>In the window that appears, select the SELinux tab</li>
    1665                                 <li>Disable SELinux</li>
    1666                             </ol>
    1667                         </tt>
     1898                            To completely disable SELinux:
     1899                        <ol>
     1900                            <li><tt>$ su root</tt></li>
     1901                            <li><tt># system-config-securitylevel</tt></li>
     1902                            <li><tt>In the window that appears, select the SELinux tab</tt></li>
     1903                            <li><tt>Disable SELinux</tt></li>
     1904                        </ol>
    16681905                        <p>
    1669                         Alternatively, instead of completely disabling it you could
    1670                         disable just this one check.
    1671                         <tt>
    1672                             <ol>
    1673                                 <li>Select System->Administration->SELinux Management</li>
    1674                                 <li>In the SELinux Management Tool which appears,
    1675                                 select "Boolean" from the menu on the left</li>
    1676                                 <li>Expand the "Memory Protection" group</li>
    1677                                 <li>Check the first item, labeled
    1678                                 "Allow all unconfined executables to use libraries requiring text relocation ..."</li>
    1679                             </ol>
    1680                         </tt>
     1906                            Alternatively, instead of completely disabling it you could
     1907                            disable just this one check.
     1908                        <ol>
     1909                            <li>
     1910                                Select <tt>System->Administration->SELinux Management</tt>
     1911                            </li>
     1912                            <li>
     1913                                In the SELinux Management Tool which appears,
     1914                                select "<tt>Boolean</tt>" from the menu on the left
     1915                            </li>
     1916                            <li>
     1917                                Expand the "<tt>Memory Protection</tt>" group
     1918                            </li>
     1919                            <li>
     1920                                Check the first item, labeled
     1921                                "<tt>Allow all unconfined executables to use libraries requiring text relocation ...</tt>"
     1922                            </li>
     1923                        </ol>
    16811924                    </blockquote>
    16821925                </li>
    16831926                <li>
    1684                     <b>Windows Error Message: <tt>*** fatal error - couldn't allocate heap, ... </tt></b>
     1927                    <b>Windows Error Messages:</b><br>
     1928                    <tt>*** fatal error - couldn't allocate heap, ... </tt><br>
     1929                    <tt>rm fails with "Directory not empty"</tt><br>
     1930                    <tt>unzip fails with "cannot create ... Permission denied"</tt><br>
     1931                    <tt>unzip fails with "cannot create ... Error 50"</tt><br>
    16851932                    <blockquote>
    16861933                        The CYGWIN software can conflict with other non-CYGWIN
    16871934                        software. See the CYGWIN FAQ section on
    16881935                        <a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank">
    1689                         BLODA (applications that interfere with CYGWIN)</a>.
     1936                            BLODA (applications that interfere with CYGWIN)</a>.
    16901937                    </blockquote>
    16911938                </li>
Note: See TracChangeset for help on using the changeset viewer.