README-builds.html
changeset 1721 7a86d7e13fdf
parent 819 1196fff6b3f6
child 876 78de1d98ba7e
equal deleted inserted replaced
1720:539a197aefbd 1721:7a86d7e13fdf
     3     <head>
     3     <head>
     4         <title>OpenJDK Build README</title>
     4         <title>OpenJDK Build README</title>
     5     </head>
     5     </head>
     6     <body style="background-color:lightcyan">
     6     <body style="background-color:lightcyan">
     7         <!-- ====================================================== -->
     7         <!-- ====================================================== -->
     8         <table width="100%" style="background-color:white">
     8         +        <table width="100%">
     9             <tr>
     9             <tr>
    10                 <td align="center">
    10                 <td align="center">
    11                     <a href="http://openjdk.java.net" border="0">    
    11                     <img alt="OpenJDK" 
    12                         <img alt="OpenJDK" 
    12                          src="http://openjdk.java.net/images/openjdk.png" 
    13                              src="http://openjdk.java.net/images/openjdk.png"
    13                          width=256 />
    14                              width=256
       
    15                              style="border-style: none"/>
       
    16                     </a>
       
    17                 </td>
    14                 </td>
    18             </tr>
    15             </tr>
    19             <tr>
    16             <tr>
    20                 <td align=center>
    17                 <td align=center>
    21                     <h1>OpenJDK Build README</h1>
    18                     <h1>OpenJDK Build README</h1>
    52                         <li><a href="#dependencies">Build Dependencies</a> </li>
    49                         <li><a href="#dependencies">Build Dependencies</a> </li>
    53                         <ul>
    50                         <ul>
    54                             <li><a href="#bootjdk">Bootstrap JDK</a> </li>
    51                             <li><a href="#bootjdk">Bootstrap JDK</a> </li>
    55                             <li><a href="#binaryplugs">Binary Plugs</a> </li>
    52                             <li><a href="#binaryplugs">Binary Plugs</a> </li>
    56                             <li><a href="#importjdk">Optional Import JDK</a> </li>
    53                             <li><a href="#importjdk">Optional Import JDK</a> </li>
       
    54                             <li><a href="#ant">Ant</a> </li>
    57                             <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
    55                             <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
    58                             <li><a href="#compilers">Compilers</a> 
    56                             <li><a href="#compilers">Compilers</a> 
    59                                 <ul>
    57                                 <ul>
    60                                     <li><a href="#msvc">Microsoft Visual Studio</a> </li>
    58                                     <li><a href="#msvc">Microsoft Visual Studio</a> </li>
    61                                     <li><a href="#mssdk">Microsoft Platform SDK</a> </li>
    59                                     <li><a href="#mssdk">Microsoft Platform SDK</a> </li>
   422                     If your Solaris system has the software
   420                     If your Solaris system has the software
   423                     from the Solaris Companion CD installed, 
   421                     from the Solaris Companion CD installed, 
   424                     you should use <tt>gmake</tt>
   422                     you should use <tt>gmake</tt>
   425                     which will be located in either the <tt>/opt/sfw/bin</tt> or 
   423                     which will be located in either the <tt>/opt/sfw/bin</tt> or 
   426                     <tt>/usr/sfw/bin</tt> directory.
   424                     <tt>/usr/sfw/bin</tt> directory.
       
   425                     In more recent versions of Solaris GNU make can be found
       
   426                     at <tt>/usr/bin/gmake</tt>. 
   427                 </li>
   427                 </li>
   428                 <li>
   428                 <li>
   429                     <strong>Windows:</strong>
   429                     <strong>Windows:</strong>
   430                     Make sure you start your build inside a bash/sh/ksh shell.
   430                     Make sure you start your build inside a bash/sh/ksh shell.
   431                     <br>
   431                     <br>
   432                     <b>WARNING:</b> Watch out for make version 3.81, it may
   432                     <b>WARNING:</b> Watch out for make version 3.81, it may
   433                     not work due to a lack of support for drive letter paths
   433                     not work due to a lack of support for MS-DOS drive letter paths
   434                     like <tt>C:/</tt>. See
   434                     like <tt>C:/</tt> or <tt>C:\</tt>.
   435                     <a href="#gmake">section on gmake</a>.
       
   436                     Use a 3.80 version, or find a newer
   435                     Use a 3.80 version, or find a newer
   437                     version that has this problem fixed.
   436                     version that has this problem fixed, like 3.82.
   438                     The older 3.80 version of make.exe can be downloaded with this
   437                     The older 3.80 version of make.exe can be downloaded with this
   439                     <a href="http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2" target="_blank">
   438                     <a href="http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2" target="_blank">
   440                     link</a>.
   439                     link</a>.
       
   440                     Use of this older 3.80 make.exe may require that you install the
       
   441                     libintl2.dll library or libintl2 cygwin package which is
       
   442                     no longer installed by default by the cygwin installer.
       
   443                     <br>
   441                     Also see the
   444                     Also see the
   442                     <a href="http://developer.mozilla.org/en/docs/Windows_build_prerequisites_using_cygwin#make" target="_blank">
   445                     <a href="http://developer.mozilla.org/en/docs/Windows_build_prerequisites_using_cygwin#make" target="_blank">
   443                     mozilla developer center</a>
   446                     mozilla developer center</a>
   444                     on this topic.
   447                     on this topic.
       
   448                     <br>
       
   449                     It's hoped that when make 3.82 starts shipping in a future cygwin
       
   450                     release that this MS-DOS path issue will be fixed.
       
   451                     In addition to the above 3.80 make.exe you can download 
       
   452                     this
       
   453                     <a href="http://www.cmake.org/files/cygwin/make.exe">
       
   454                     www.cmake.org make.exe</a> which will not have a libintl2.dll
       
   455                     dependency.
   445                 </li>
   456                 </li>
   446             </ul>
   457             </ul>
   447             <p>
   458             <p>
   448             Information on GNU make, and access to ftp download sites, are
   459             Information on GNU make, and access to ftp download sites, are
   449             available on the
   460             available on the
   504                     <tt><a href="#ALT_JDK_IMPORT_PATH">ALT_JDK_IMPORT_PATH</a></tt>.
   515                     <tt><a href="#ALT_JDK_IMPORT_PATH">ALT_JDK_IMPORT_PATH</a></tt>.
   505                 </li>
   516                 </li>
   506                 <li>
   517                 <li>
   507                     Install or upgrade the <a href="#freetype">FreeType development
   518                     Install or upgrade the <a href="#freetype">FreeType development
   508                     package</a>.
   519                     package</a>.
       
   520                 </li>
       
   521                 <li>
       
   522                     Install
       
   523                     <a href="#ant">Ant</a>, set
       
   524                     <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
   509                 </li>
   525                 </li>
   510             </ol>
   526             </ol>
   511         </blockquote>
   527         </blockquote>
   512         <!-- ------------------------------------------------------ -->
   528         <!-- ------------------------------------------------------ -->
   513         <hr>
   529         <hr>
   564                 </li>
   580                 </li>
   565                 <li>
   581                 <li>
   566                     Install the
   582                     Install the
   567                     <a href="#cups">CUPS Include files</a>, set
   583                     <a href="#cups">CUPS Include files</a>, set
   568                     <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>.
   584                     <tt><a href="#ALT_CUPS_HEADERS_PATH">ALT_CUPS_HEADERS_PATH</a></tt>.
       
   585                 </li>
       
   586                 <li>
       
   587                     Install
       
   588                     <a href="#ant">Ant</a>, set
       
   589                     <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
   569                 </li>
   590                 </li>
   570             </ol>
   591             </ol>
   571         </blockquote>
   592         </blockquote>
   572         <!-- ------------------------------------------------------ -->
   593         <!-- ------------------------------------------------------ -->
   573         <hr>
   594         <hr>
   651                     (see <a href="#msvc">compilers</a>).
   672                     (see <a href="#msvc">compilers</a>).
   652                 </li>
   673                 </li>
   653                 <li>
   674                 <li>
   654                     Install 
   675                     Install 
   655                     <a href="#dxsdk">Microsoft DirectX SDK</a>.
   676                     <a href="#dxsdk">Microsoft DirectX SDK</a>.
       
   677                 </li>
       
   678                 <li>
       
   679                     Install
       
   680                     <a href="#ant">Ant</a>, set
       
   681                     <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
   656                 </li>
   682                 </li>
   657             </ol>
   683             </ol>
   658         </blockquote>
   684         </blockquote>
   659         <!-- ------------------------------------------------------ -->
   685         <!-- ------------------------------------------------------ -->
   660         <hr>
   686         <hr>
   732                 setting is only needed if you are not building the entire
   758                 setting is only needed if you are not building the entire
   733                 JDK. For example, if you have built the entire JDK once, and
   759                 JDK. For example, if you have built the entire JDK once, and
   734                 wanted to avoid repeatedly building the Hotspot VM, you could
   760                 wanted to avoid repeatedly building the Hotspot VM, you could
   735                 set this to the location of the previous JDK install image
   761                 set this to the location of the previous JDK install image
   736                 and the build will copy the needed files from this import area.
   762                 and the build will copy the needed files from this import area.
       
   763             </blockquote>
       
   764             <!-- ------------------------------------------------------ -->
       
   765             <h4><a name="ant">Ant</a></h4>
       
   766             <blockquote>
       
   767                 All OpenJDK builds require access to least Ant 1.6.5.
       
   768                 The Ant tool is available from the 
       
   769                 <a href="http://ant.apache.org/antlibs/bindownload.cgi" target="_blank">
       
   770                 Ant download site</a>.
       
   771                 You should always set 
       
   772                 <tt><a href="#ANT_HOME">ANT_HOME</a></tt>
       
   773                 to point to the location of
       
   774                 the Ant installation, this is the directory pathname
       
   775                 that contains a <tt>bin and lib</tt>.
       
   776                 It's also a good idea to also place its <tt>bin</tt> directory
       
   777                 in the <tt>PATH</tt> environment variable, although it's
       
   778                 not absolutely required.
   737             </blockquote>
   779             </blockquote>
   738             <!-- ------------------------------------------------------ -->
   780             <!-- ------------------------------------------------------ -->
   739             <h4><a name="cacerts">Certificate Authority File (cacert)</a></h4>
   781             <h4><a name="cacerts">Certificate Authority File (cacert)</a></h4>
   740             <blockquote>
   782             <blockquote>
   741                 See <a href="http://en.wikipedia.org/wiki/Certificate_Authority" target="_blank">
   783                 See <a href="http://en.wikipedia.org/wiki/Certificate_Authority" target="_blank">
   913                 variables 
   955                 variables 
   914                 <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
   956                 <tt><a href="#ALT_FREETYPE_LIB_PATH">ALT_FREETYPE_LIB_PATH</a></tt>
   915                 and 
   957                 and 
   916                 <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
   958                 <tt><a href="#ALT_FREETYPE_HEADERS_PATH">ALT_FREETYPE_HEADERS_PATH</a></tt>
   917                 to refer to place where library and header files are installed.
   959                 to refer to place where library and header files are installed.
       
   960                 <p>
       
   961                 Building the freetype 2 libraries from scratch is also possible,
       
   962                 however on Windows refer to the
       
   963                 <a href="http://freetype.freedesktop.org/wiki/FreeType_DLL">
       
   964                 Windows FreeType DLL build instructions</a>.
       
   965                 <p>
       
   966                 Note that by default FreeType is built with byte code hinting
       
   967                 support disabled due to licensing restrictions.
       
   968                 In this case, text appearance and metrics are expected to
       
   969                 differ from Sun's official JDK build.
       
   970                 See
       
   971                 <a href="http://freetype.sourceforge.net/freetype2/index.html">
       
   972                     the SourceForge FreeType2 Home Page
       
   973                 </a>
       
   974                 for more information.
   918             </blockquote>    
   975             </blockquote>    
   919             <!-- ------------------------------------------------------ -->
   976             <!-- ------------------------------------------------------ -->
   920             <h4><a name="alsa">Advanced Linux Sound Architecture (ALSA) (Linux only)</a></h4>
   977             <h4><a name="alsa">Advanced Linux Sound Architecture (ALSA) (Linux only)</a></h4>
   921             <blockquote>
   978             <blockquote>
   922                 <strong>Linux only:</strong>
   979                 <strong>Linux only:</strong>
  1034                                 utilities</td>
  1091                                 utilities</td>
  1035                             </tr>
  1092                             </tr>
  1036                             <tr>
  1093                             <tr>
  1037                                 <td>make.exe</td>
  1094                                 <td>make.exe</td>
  1038                                 <td>Devel</td>
  1095                                 <td>Devel</td>
  1039                                 <td>make: The GNU version of the 'make' utility</td>
  1096                                 <td>make: The GNU version of the 'make' utility<br>
       
  1097                                 <b>NOTE</b>: See <a href="#gmake">the GNU make section</a></td>
  1040                             </tr>
  1098                             </tr>
  1041                             <tr>
  1099                             <tr>
  1042                                 <td>m4.exe</td>
  1100                                 <td>m4.exe</td>
  1043                                 <td>Interpreters</td>
  1101                                 <td>Interpreters</td>
  1044                                 <td>m4: GNU implementation of the traditional Unix macro
  1102                                 <td>m4: GNU implementation of the traditional Unix macro
  1048                                 <td>cpio.exe</td>
  1106                                 <td>cpio.exe</td>
  1049                                 <td>Utils</td>
  1107                                 <td>Utils</td>
  1050                                 <td>cpio: A program to manage archives of files</td>
  1108                                 <td>cpio: A program to manage archives of files</td>
  1051                             </tr>
  1109                             </tr>
  1052                             <tr>
  1110                             <tr>
  1053                                 <td>awk.exe</td>
  1111                                 <td>gawk.exe</td>
  1054                                 <td>Utils</td>
  1112                                 <td>Utils</td>
  1055                                 <td>awk: Pattern-directed scanning and processing language</td>
  1113                                 <td>awk: Pattern-directed scanning and processing language</td>
  1056                             </tr>
  1114                             </tr>
  1057                             <tr>
  1115                             <tr>
  1058                                 <td>file.exe</td>
  1116                                 <td>file.exe</td>
  1059                                 <td>Utils</td>
  1117                                 <td>Utils</td>
  1060                                 <td>file: Determines file type using 'magic' numbers</td>
  1118                                 <td>file: Determines file type using 'magic' numbers</td>
  1061                             </tr>
  1119                             </tr>
  1062                             <tr>
  1120                             <tr>
  1063                                 <td>zip.exe</td>
  1121                                 <td>zip.exe</td>
  1064                                 <td>Utils</td>
  1122                                 <td>Archive</td>
  1065                                 <td>zip: Package and compress (archive) files</td>
  1123                                 <td>zip: Package and compress (archive) files</td>
  1066                             </tr>
  1124                             </tr>
  1067                             <tr>
  1125                             <tr>
  1068                                 <td>unzip.exe</td>
  1126                                 <td>unzip.exe</td>
  1069                                 <td>Utils</td>
  1127                                 <td>Archive</td>
  1070                                 <td>unzip: Extract compressed files in a ZIP archive</td>
  1128                                 <td>unzip: Extract compressed files in a ZIP archive</td>
  1071                             </tr>
  1129                             </tr>
  1072                             <tr>
  1130                             <tr>
  1073                                 <td>free.exe</td>
  1131                                 <td>free.exe</td>
  1074                                 <td>Utils</td>
  1132                                 <td>Procps</td>
  1075                                 <td>free: Display amount of free and used memory in the system</td>
  1133                                 <td>free: Display amount of free and used memory in the system</td>
  1076                             </tr>
  1134                             </tr>
  1077                         </tbody>
  1135                         </tbody>
  1078                     </table>
  1136                     </table>
  1079                 </blockquote>
  1137                 </blockquote>
  1222         Some of the
  1280         Some of the
  1223         environment or make variables (just called <b>variables</b> in this
  1281         environment or make variables (just called <b>variables</b> in this
  1224         document) that can impact the build are:
  1282         document) that can impact the build are:
  1225         <blockquote>
  1283         <blockquote>
  1226             <dl>
  1284             <dl>
  1227                 <dt><a name="path"><tt>PATH</tt></a> </dt>
       
  1228                 <dd>Typically you want to set the <tt>PATH</tt> to include:
       
  1229                     <ul>
       
  1230                         <li>The location of the GNU make binary</li>
       
  1231                         <li>The location of the Bootstrap JDK <tt>java</tt> 
       
  1232                         (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
       
  1233                         <li>The location of the C/C++ compilers 
       
  1234                         (see <a href="#compilers"><tt>compilers</tt></a>)</li>
       
  1235                         <li>The location or locations for the Unix command utilities
       
  1236                         (e.g. <tt>/usr/bin</tt>)</li>
       
  1237                     </ul>
       
  1238                 </dd>
       
  1239                 <dt><tt>MILESTONE</tt> </dt>
       
  1240                 <dd>
       
  1241                     The milestone name for the build (<i>e.g.</i>"beta"). 
       
  1242                     The default value is "internal".
       
  1243                 </dd>
       
  1244                 <dt><tt>BUILD_NUMBER</tt> </dt>
       
  1245                 <dd>
       
  1246                     The build number for the build (<i>e.g.</i> "b27"). 
       
  1247                     The default value is "b00".
       
  1248                 </dd>
       
  1249                 <dt><a name="arch_data_model"><tt>ARCH_DATA_MODEL</tt></a></dt>
       
  1250                 <dd>The <tt>ARCH_DATA_MODEL</tt> variable
       
  1251                     is used to specify whether the build is to generate 32-bit or 64-bit
       
  1252                     binaries. 
       
  1253                     The Solaris build supports either 32-bit or 64-bit builds, but
       
  1254                     Windows and Linux will support only one, depending on the specific
       
  1255                     OS being used.
       
  1256                     Normally, setting this variable is only necessary on Solaris.
       
  1257                     Set <tt>ARCH_DATA_MODEL</tt> to <tt>32</tt> for generating 32-bit binaries, 
       
  1258                     or to <tt>64</tt> for generating 64-bit binaries.
       
  1259                 </dd>
       
  1260                 <dt><a name="ALT_BOOTDIR"><tt>ALT_BOOTDIR</tt></a></dt>
       
  1261                 <dd>
       
  1262                     The location of the bootstrap JDK installation. 
       
  1263                     See <a href="#bootjdk">Bootstrap JDK</a> for more information.
       
  1264                     You should always install your own local Bootstrap JDK and
       
  1265                     always set <tt>ALT_BOOTDIR</tt> explicitly.
       
  1266                 </dd>
       
  1267                 <dt><a name="ALT_BINARY_PLUGS_PATH"><tt>ALT_BINARY_PLUGS_PATH</tt></a></dt>
  1285                 <dt><a name="ALT_BINARY_PLUGS_PATH"><tt>ALT_BINARY_PLUGS_PATH</tt></a></dt>
  1268                 <dd>
  1286                 <dd>
  1269                     The location of the binary plugs installation.
  1287                     The location of the binary plugs installation.
  1270                     See <a href="#binaryplugs">Binary Plugs</a> for more information.
  1288                     See <a href="#binaryplugs">Binary Plugs</a> for more information.
  1271                     You should always have a local copy of a
  1289                     You should always have a local copy of a
  1272                     recent Binary Plugs install image
  1290                     recent Binary Plugs install image
  1273                     and set this variable to that location.
  1291                     and set this variable to that location.
  1274                 </dd>
  1292                 </dd>
  1275                 <dt><a name="ALT_JDK_IMPORT_PATH"><tt>ALT_JDK_IMPORT_PATH</tt></a></dt>
  1293                 <dt><a name="ALT_BOOTDIR"><tt>ALT_BOOTDIR</tt></a></dt>
  1276                 <dd>
  1294                 <dd>
  1277                     The location of a previously built JDK installation. 
  1295                     The location of the bootstrap JDK installation. 
  1278                     See <a href="#importjdk">Optional Import JDK</a> for more information.
  1296                     See <a href="#bootjdk">Bootstrap JDK</a> for more information.
  1279                 </dd>
  1297                     You should always install your own local Bootstrap JDK and
  1280                 <dt><a name="ALT_OUTPUTDIR"><tt>ALT_OUTPUTDIR</tt></a> </dt>
  1298                     always set <tt>ALT_BOOTDIR</tt> explicitly.
  1281                 <dd>
  1299                 </dd>
  1282                     An override for specifying the (absolute) path of where the
  1300                 <dt><a name="ALT_BUILD_BINARY_PLUGS_PATH"><tt>ALT_BUILD_BINARY_PLUGS_PATH</tt></a></dt>
  1283                     build output is to go.
  1301                 <dd>
  1284                     The default output directory will be build/<i>platform</i>.
  1302                     These are useful in managing builds on multiple platforms.
  1285                 </dd>
  1303                     The default network location for all of the binary plug images
  1286                 <dt><a name="ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a> </dt>
  1304                     for all platforms. 
  1287                 <dd>
  1305                     If <tt><a href="#ALT_BINARY_PLUGS_PATH">ALT_BINARY_PLUGS_PATH</a></tt>
  1288                     The location of the C/C++ compiler.
  1306                     is not set, this directory will be used and should contain 
  1289                     The default varies depending on the platform. 
  1307                     the following directories:
  1290                 </dd>
  1308                     <tt>solaris-sparc</tt>,
  1291                 <dt><tt><a name="ALT_CACERTS_FILE">ALT_CACERTS_FILE</a></tt></dt>
  1309                     <tt>solaris-i586</tt>,
  1292                 <dd>
  1310                     <tt>solaris-sparcv9</tt>,
  1293                     The location of the <a href="#cacerts">cacerts</a> file.
  1311                     <tt>solaris-amd64</tt>,
  1294                     The default will refer to 
  1312                     <tt>linux-i586</tt>,
  1295                     <tt>jdk/src/share/lib/security/cacerts</tt>.
  1313                     <tt>linux-amd64</tt>,
  1296                 </dd>
  1314                     <tt>windows-i586</tt>,
  1297                 <dt><a name="ALT_CUPS_HEADERS_PATH"><tt>ALT_CUPS_HEADERS_PATH</tt></a> </dt>
  1315                     and
  1298                 <dd>
  1316                     <tt>windows-amd64</tt>.
  1299                     The location of the CUPS header files.
  1317                     Where each of these directories contain the binary plugs image
  1300                     See <a href="#cups">CUPS information</a> for more information.
  1318                     for that platform.
  1301                     If this path does not exist the fallback path is 
       
  1302                     <tt>/usr/include</tt>.
       
  1303                 </dd>
       
  1304                 <dt><a name="ALT_FREETYPE_LIB_PATH"><tt>ALT_FREETYPE_LIB_PATH</tt></a></dt>
       
  1305                 <dd>
       
  1306                     The location of the FreeType shared library. 
       
  1307                     See <a href="#freetype">FreeType information</a> for details. 
       
  1308                 </dd>
       
  1309                 <dt><a name="ALT_FREETYPE_HEADERS_PATH"><tt>ALT_FREETYPE_HEADERS_PATH</tt></a></dt>
       
  1310                 <dd>
       
  1311                     The location of the FreeType header files.
       
  1312                     See <a href="#freetype">FreeType information</a> for details. 
       
  1313                 </dd>
       
  1314                 <dt><a name="ALT_JDK_DEVTOOLS_PATH"><tt>ALT_JDK_DEVTOOLS_PATH</tt></a></dt>
       
  1315                 <dd>
       
  1316                     The default root location of the devtools.
       
  1317                     The default value is 
       
  1318                     <tt>$(ALT_SLASH_JAVA)/devtools</tt>.
       
  1319                 </dd>
       
  1320                 <dt><tt><a name="ALT_DEVTOOLS_PATH">ALT_DEVTOOLS_PATH</a></tt> </dt>
       
  1321                 <dd>
       
  1322                     The location of tools like the 
       
  1323                     <a href="#zip"><tt>zip</tt> and <tt>unzip</tt></a>
       
  1324                     binaries, but might also contain the GNU make utility
       
  1325                     (<tt><i>gmake</i></tt>).
       
  1326                     So this area is a bit of a grab bag, especially on Windows.
       
  1327                     The default value depends on the platform and
       
  1328                     Unix Commands being used.
       
  1329                     On Linux the default will be 
       
  1330                     <tt>$(ALT_JDK_DEVTOOLS_PATH)/linux/bin</tt>, 
       
  1331                     on Solaris
       
  1332                     <tt>$(ALT_JDK_DEVTOOLS_PATH)/<i>{sparc,i386}</i>/bin</tt>, 
       
  1333                     on Windows with MKS
       
  1334                     <tt>%SYSTEMDRIVE%/UTILS</tt>, 
       
  1335                     and on Windows with CYGWIN
       
  1336                     <tt>/usr/bin</tt>.
       
  1337                 </dd>
       
  1338                 <dt><a name="ALT_UNIXCOMMAND_PATH"><tt>ALT_UNIXCOMMAND_PATH</tt></a> </dt>
       
  1339                 <dd>
       
  1340                     An override for specifying where the
       
  1341                     Unix command set are located. 
       
  1342                     The default location varies depending on the platform,
       
  1343                     <tt>"%SYSTEMDRIVE%/MKSNT"</tt> or
       
  1344                     <tt>$(ROOTDIR)</tt> on Windows with MKS, otherwise it's 
       
  1345                     <tt>"/bin"</tt> or <tt>/usr/bin</tt>.
       
  1346                 </dd>
       
  1347                 <dt><a name="ALT_UNIXCCS_PATH"><tt>ALT_UNIXCCS_PATH</tt></a></dt>
       
  1348                 <dd>
       
  1349                     <strong>Solaris only:</strong>
       
  1350                     An override for specifying where the Unix CCS
       
  1351                     command set are located.
       
  1352                     The default location is <tt>/usr/ccs/bin</tt> 
       
  1353                 </dd>
       
  1354                 <dt><a name="ALT_USRBIN_PATH"><tt>ALT_USRBIN_PATH</tt></a></dt>
       
  1355                 <dd>
       
  1356                     An override for specifying where the
       
  1357                     Unix <tt>/usr/bin</tt> commands are located. You usually do not need
       
  1358                     to set this variable: the default location is <tt>/usr/bin</tt>)
       
  1359                 </dd>
       
  1360                 <dt><a name="ALT_SLASHJAVA"><tt>ALT_SLASHJAVA</tt></a></dt>
       
  1361                 <dd>
       
  1362                     The default root location for many of the ALT path locations
       
  1363                     of the following ALT variables.
       
  1364                     The default value is 
       
  1365                     <tt>"/java"</tt> on Solaris and Linux, 
       
  1366                     <tt>"J:"</tt> on Windows.
       
  1367                 </dd>
  1319                 </dd>
  1368                 <dt><a name="ALT_BUILD_JDK_IMPORT_PATH"><tt>ALT_BUILD_JDK_IMPORT_PATH</tt></a></dt>
  1320                 <dt><a name="ALT_BUILD_JDK_IMPORT_PATH"><tt>ALT_BUILD_JDK_IMPORT_PATH</tt></a></dt>
  1369                 <dd>
  1321                 <dd>
  1370                     These are useful in managing builds on multiple platforms.
  1322                     These are useful in managing builds on multiple platforms.
  1371                     The default network location for all of the import JDK images
  1323                     The default network location for all of the import JDK images
  1383                     and
  1335                     and
  1384                     <tt>windows-amd64</tt>.
  1336                     <tt>windows-amd64</tt>.
  1385                     Where each of these directories contain the import JDK image
  1337                     Where each of these directories contain the import JDK image
  1386                     for that platform.
  1338                     for that platform.
  1387                 </dd>
  1339                 </dd>
  1388                 <dt><a name="ALT_BUILD_BINARY_PLUGS_PATH"><tt>ALT_BUILD_BINARY_PLUGS_PATH</tt></a></dt>
  1340                 <dt><tt><a name="ALT_CACERTS_FILE">ALT_CACERTS_FILE</a></tt></dt>
  1389                 <dd>
  1341                 <dd>
  1390                     These are useful in managing builds on multiple platforms.
  1342                     The location of the <a href="#cacerts">cacerts</a> file.
  1391                     The default network location for all of the binary plug images
  1343                     The default will refer to 
  1392                     for all platforms. 
  1344                     <tt>jdk/src/share/lib/security/cacerts</tt>.
  1393                     If <tt><a href="#ALT_BINARY_PLUGS_PATH">ALT_BINARY_PLUGS_PATH</a></tt>
  1345                 </dd>
  1394                     is not set, this directory will be used and should contain 
  1346                 <dt><a name="ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a> </dt>
  1395                     the following directories:
  1347                 <dd>
  1396                     <tt>solaris-sparc</tt>,
  1348                     The location of the C/C++ compiler.
  1397                     <tt>solaris-i586</tt>,
  1349                     The default varies depending on the platform. 
  1398                     <tt>solaris-sparcv9</tt>,
  1350                 </dd>
  1399                     <tt>solaris-amd64</tt>,
  1351                 <dt><a name="ALT_CUPS_HEADERS_PATH"><tt>ALT_CUPS_HEADERS_PATH</tt></a> </dt>
  1400                     <tt>linux-i586</tt>,
  1352                 <dd>
  1401                     <tt>linux-amd64</tt>,
  1353                     The location of the CUPS header files.
  1402                     <tt>windows-i586</tt>,
  1354                     See <a href="#cups">CUPS information</a> for more information.
  1403                     and
  1355                     If this path does not exist the fallback path is 
  1404                     <tt>windows-amd64</tt>.
  1356                     <tt>/usr/include</tt>.
  1405                     Where each of these directories contain the binary plugs image
  1357                 </dd>
  1406                     for that platform.
  1358                 <dt><tt><a name="ALT_DEVTOOLS_PATH">ALT_DEVTOOLS_PATH</a></tt> </dt>
  1407                 </dd>
  1359                 <dd>
  1408                 <dt><strong>Windows specific:</strong></dt>
  1360                     The location of tools like the 
  1409                 <dd>
  1361                     <a href="#zip"><tt>zip</tt> and <tt>unzip</tt></a>
  1410                     <dl>
  1362                     binaries, but might also contain the GNU make utility
  1411                         <dt><a name="ALT_MSDEVTOOLS_PATH"><tt>ALT_MSDEVTOOLS_PATH</tt></a> </dt>
  1363                     (<tt><i>gmake</i></tt>).
  1412                         <dd>
  1364                     So this area is a bit of a grab bag, especially on Windows.
  1413                             The location of the Microsoft Visual Studio .NET 2003
  1365                     The default value depends on the platform and
  1414                             tools 'bin' directory.
  1366                     Unix Commands being used.
  1415                             The default is usually derived from
  1367                     On Linux the default will be 
  1416                             <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>.
  1368                     <tt>$(ALT_JDK_DEVTOOLS_PATH)/linux/bin</tt>, 
  1417                         </dd>
  1369                     on Solaris
  1418                         <dt><tt><a name="ALT_DXSDK_PATH">ALT_DXSDK_PATH</a></tt> </dt>
  1370                     <tt>$(ALT_JDK_DEVTOOLS_PATH)/<i>{sparc,i386}</i>/bin</tt>, 
  1419                         <dd>
  1371                     on Windows with MKS
  1420                             The location of the 
  1372                     <tt>%SYSTEMDRIVE%/UTILS</tt>, 
  1421                             <a href="#dxsdk">Microsoft DirectX 9 SDK</a>.
  1373                     and on Windows with CYGWIN
  1422                             The default will be to try and use the DirectX environment
  1374                     <tt>/usr/bin</tt>.
  1423                             variable <tt>DXSDK_DIR</tt>,
  1375                 </dd>
  1424                             failing that, look in <tt>C:/DXSDK</tt>.
  1376                 <dt><tt><a name="ALT_DXSDK_PATH">ALT_DXSDK_PATH</a></tt> </dt>
  1425                         </dd>
  1377                 <dd>
  1426                         <dt><tt><a name="ALT_MSVCRT_DLL_PATH">ALT_MSVCRT_DLL_PATH</a></tt> </dt>
  1378                     <strong>Windows Only:</strong>
  1427                         <dd>
  1379                     The location of the 
  1428                             The location of the 
  1380                     <a href="#dxsdk">Microsoft DirectX 9 SDK</a>.
  1429                             <a href="#msvcrt"><tt>MSVCRT.DLL</tt></a>. 
  1381                     The default will be to try and use the DirectX environment
  1430                         </dd>
  1382                     variable <tt>DXSDK_DIR</tt>,
  1431                         <dt><tt><a name="ALT_MSVCR71_DLL_PATH">ALT_MSVCR71_DLL_PATH</a></tt> </dt>
  1383                     failing that, look in <tt>C:/DXSDK</tt>.
  1432                         <dd>
  1384                 </dd>
  1433                             <strong>i586 only:</strong>
  1385                 <dt><a name="ALT_FREETYPE_HEADERS_PATH"><tt>ALT_FREETYPE_HEADERS_PATH</tt></a></dt>
  1434                             The location of the 
  1386                 <dd>
  1435                             <a href="#msvcr71"><tt>MSVCR71.DLL</tt></a>. 
  1387                     The location of the FreeType header files.
  1436                         </dd>
  1388                     See <a href="#freetype">FreeType information</a> for details. 
  1437                     </dl>
  1389                 </dd>
       
  1390                 <dt><a name="ALT_FREETYPE_LIB_PATH"><tt>ALT_FREETYPE_LIB_PATH</tt></a></dt>
       
  1391                 <dd>
       
  1392                     The location of the FreeType shared library. 
       
  1393                     See <a href="#freetype">FreeType information</a> for details. 
       
  1394                 </dd>
       
  1395                 <dt><a name="ALT_JDK_DEVTOOLS_PATH"><tt>ALT_JDK_DEVTOOLS_PATH</tt></a></dt>
       
  1396                 <dd>
       
  1397                     The default root location of the devtools.
       
  1398                     The default value is 
       
  1399                     <tt>$(ALT_SLASH_JAVA)/devtools</tt>.
       
  1400                 </dd>
       
  1401                 <dt><a name="ALT_JDK_IMPORT_PATH"><tt>ALT_JDK_IMPORT_PATH</tt></a></dt>
       
  1402                 <dd>
       
  1403                     The location of a previously built JDK installation. 
       
  1404                     See <a href="#importjdk">Optional Import JDK</a> for more information.
       
  1405                 </dd>
       
  1406                 <dt><a name="ALT_MSDEVTOOLS_PATH"><tt>ALT_MSDEVTOOLS_PATH</tt></a> </dt>
       
  1407                 <dd>
       
  1408                     <strong>Windows Only:</strong>
       
  1409                     The location of the Microsoft Visual Studio .NET 2003
       
  1410                     tools 'bin' directory.
       
  1411                     The default is usually derived from
       
  1412                     <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a>.
       
  1413                 </dd>
       
  1414                 <dt><tt><a name="ALT_MSVCR71_DLL_PATH">ALT_MSVCR71_DLL_PATH</a></tt> </dt>
       
  1415                 <dd>
       
  1416                     <strong>Windows i586 only:</strong>
       
  1417                     The location of the 
       
  1418                     <a href="#msvcr71"><tt>MSVCR71.DLL</tt></a>. 
       
  1419                 </dd>
       
  1420                 <dt><tt><a name="ALT_MSVCRT_DLL_PATH">ALT_MSVCRT_DLL_PATH</a></tt> </dt>
       
  1421                 <dd>
       
  1422                     <strong>Windows Only:</strong>
       
  1423                     The location of the 
       
  1424                     <a href="#msvcrt"><tt>MSVCRT.DLL</tt></a>. 
       
  1425                 </dd>
       
  1426                 <dt><a name="ALT_OUTPUTDIR"><tt>ALT_OUTPUTDIR</tt></a> </dt>
       
  1427                 <dd>
       
  1428                     An override for specifying the (absolute) path of where the
       
  1429                     build output is to go.
       
  1430                     The default output directory will be build/<i>platform</i>.
       
  1431                 </dd>
       
  1432                 <dt><a name="ALT_SLASHJAVA"><tt>ALT_SLASHJAVA</tt></a></dt>
       
  1433                 <dd>
       
  1434                     The default root location for many of the ALT path locations
       
  1435                     of the following ALT variables.
       
  1436                     The default value is 
       
  1437                     <tt>"/java"</tt> on Solaris and Linux, 
       
  1438                     <tt>"J:"</tt> on Windows.
       
  1439                 </dd>
       
  1440                 <dt><a name="ALT_UNIXCCS_PATH"><tt>ALT_UNIXCCS_PATH</tt></a></dt>
       
  1441                 <dd>
       
  1442                     <strong>Solaris only:</strong>
       
  1443                     An override for specifying where the Unix CCS
       
  1444                     command set are located.
       
  1445                     The default location is <tt>/usr/ccs/bin</tt> 
       
  1446                 </dd>
       
  1447                 <dt><a name="ALT_UNIXCOMMAND_PATH"><tt>ALT_UNIXCOMMAND_PATH</tt></a> </dt>
       
  1448                 <dd>
       
  1449                     An override for specifying where the
       
  1450                     Unix command set are located. 
       
  1451                     The default location varies depending on the platform,
       
  1452                     <tt>"%SYSTEMDRIVE%/MKSNT"</tt> or
       
  1453                     <tt>$(ROOTDIR)</tt> on Windows with MKS, otherwise it's 
       
  1454                     <tt>"/bin"</tt> or <tt>/usr/bin</tt>.
       
  1455                 </dd>
       
  1456                 <dt><a name="ALT_USRBIN_PATH"><tt>ALT_USRBIN_PATH</tt></a></dt>
       
  1457                 <dd>
       
  1458                     An override for specifying where the
       
  1459                     Unix <tt>/usr/bin</tt> commands are located. You usually do not need
       
  1460                     to set this variable: the default location is <tt>/usr/bin</tt>)
       
  1461                 </dd>
       
  1462                 <dt><a name="ANT_HOME"><tt>ANT_HOME</tt></a></dt>
       
  1463                 <dd>
       
  1464                     The location of the Ant installation. 
       
  1465                     See <a href="#ant">Ant</a> for more information.
       
  1466                     You should always set <tt>ANT_HOME</tt> explicitly.
       
  1467                 </dd>
       
  1468                 <dt><a name="arch_data_model"><tt>ARCH_DATA_MODEL</tt></a></dt>
       
  1469                 <dd>The <tt>ARCH_DATA_MODEL</tt> variable
       
  1470                     is used to specify whether the build is to generate 32-bit or 64-bit
       
  1471                     binaries. 
       
  1472                     The Solaris build supports either 32-bit or 64-bit builds, but
       
  1473                     Windows and Linux will support only one, depending on the specific
       
  1474                     OS being used.
       
  1475                     Normally, setting this variable is only necessary on Solaris.
       
  1476                     Set <tt>ARCH_DATA_MODEL</tt> to <tt>32</tt> for generating 32-bit binaries, 
       
  1477                     or to <tt>64</tt> for generating 64-bit binaries.
       
  1478                 </dd>
       
  1479                 <dt><tt>BUILD_NUMBER</tt> </dt>
       
  1480                 <dd>
       
  1481                     The build number for the build (<i>e.g.</i> "b27"). 
       
  1482                     The default value is "b00".
       
  1483                 </dd>
       
  1484                 <dt><tt>MILESTONE</tt> </dt>
       
  1485                 <dd>
       
  1486                     The milestone name for the build (<i>e.g.</i>"beta"). 
       
  1487                     The default value is "internal".
       
  1488                 </dd>
       
  1489                 <dt><a name="path"><tt>PATH</tt></a> </dt>
       
  1490                 <dd>Typically you want to set the <tt>PATH</tt> to include:
       
  1491                     <ul>
       
  1492                         <li>The location of the GNU make binary</li>
       
  1493                         <li>The location of the Bootstrap JDK <tt>java</tt> 
       
  1494                         (see <a href="#bootjdk">Bootstrap JDK</a>)</li>
       
  1495                         <li>The location of the C/C++ compilers 
       
  1496                         (see <a href="#compilers"><tt>compilers</tt></a>)</li>
       
  1497                         <li>The location or locations for the Unix command utilities
       
  1498                         (e.g. <tt>/usr/bin</tt>)</li>
       
  1499                     </ul>
  1438                 </dd>
  1500                 </dd>
  1439             </dl>
  1501             </dl>
  1440         </blockquote>
  1502         </blockquote>
  1441         <!-- ------------------------------------------------------ -->
  1503         <!-- ------------------------------------------------------ -->
  1442         <hr>
  1504         <hr>