6931180: Migration to recent versions of MS Platform SDK

Tue, 11 May 2010 14:31:42 -0700

author
prr
date
Tue, 11 May 2010 14:31:42 -0700
changeset 175
aa4f995fb65e
parent 173
5f5c33d417f3
child 176
5fc102ff48f0
child 178
2512c00f089f

6931180: Migration to recent versions of MS Platform SDK
Summary: Changes to enable building JDK7 with Microsoft Visual Studio 2010
Reviewed-by: ohair, art, ccheung, dcubed

README-builds.html file | annotate | diff | comparison | revisions
     1.1 --- a/README-builds.html	Thu Apr 29 14:32:39 2010 -0700
     1.2 +++ b/README-builds.html	Tue May 11 14:31:42 2010 -0700
     1.3 @@ -183,13 +183,13 @@
     1.4                      <tr>
     1.5                          <td>Windows X86 (32-bit)</td>
     1.6                          <td>Windows XP</td>
     1.7 -                        <td>Microsoft Visual Studio C++ 2008 Standard Edition</td>
     1.8 +                        <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
     1.9                          <td>JDK 6u14 FCS </td>
    1.10                      </tr>
    1.11                      <tr>
    1.12                          <td>Windows X64 (64-bit)</td>
    1.13                          <td>Windows Server 2003 - Enterprise x64 Edition</td>
    1.14 -                        <td>Microsoft Platform SDK - April 2005</td>
    1.15 +                        <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
    1.16                          <td>JDK 6u14 FCS </td>
    1.17                      </tr>
    1.18                  </tbody>
    1.19 @@ -789,11 +789,7 @@
    1.20                  </li>
    1.21                  <li>
    1.22                      Install the
    1.23 -                    <a href="#msvc">Microsoft Visual Studio Compilers</a> (32-bit).
    1.24 -                </li>
    1.25 -                <li>
    1.26 -                    Install the
    1.27 -                    <a href="#mssdk">Microsoft Platform SDK</a>.
    1.28 +                    <a href="#msvc">Microsoft Visual Studio Compilers</a>).
    1.29                  </li>
    1.30                  <li>
    1.31                      Setup all environment variables for compilers 
    1.32 @@ -964,13 +960,28 @@
    1.33                  </blockquote>
    1.34                  <strong><a name="msvc">Windows i586: Microsoft Visual Studio Compilers</a></strong>
    1.35                  <blockquote>
    1.36 +<p>
    1.37 +<b>BEGIN WARNING</b>: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
    1.38 +use the newest VS2010 Microsoft compilers. These build instructions are updated
    1.39 +to show where we are going. We have a QA process to go through before
    1.40 +official builds actually use VS2010. So for now, official builds are
    1.41 +still using VS2003. No other compilers are known to build the entire JDK,
    1.42 +including non-open portions.
    1.43 +So for now you should be able to build with either VS2003 or VS2010.
    1.44 +We do not guarantee that VS2008 will work, although there is sufficient
    1.45 +makefile support to make at least basic JDK builds plausible.
    1.46 +Visual Studio 2010 Express compilers are likely to be able to build all the
    1.47 +"open" sources, with only small adjustments, but this has yet to be made
    1.48 +to work. Also we have not yet seen the 7.1 Windows SDK with the 64 bit
    1.49 +compilers. <b>END WARNING.</b>
    1.50 +<p>
    1.51                      The 32-bit OpenJDK Windows build
    1.52                      requires 
    1.53 -                    Microsoft Visual Studio C++ 2008 (VS2008) Standard
    1.54 +                    Microsoft Visual Studio C++ 2010 (VS2010) Professional
    1.55                      Edition compiler. 
    1.56                      The compiler and other tools are expected to reside
    1.57                      in the location defined by the variable 
    1.58 -                    <tt>VS90COMNTOOLS</tt> which
    1.59 +                    <tt>VS100COMNTOOLS</tt> which
    1.60                      is set by the Microsoft Visual Studio installer.
    1.61                      <p> 
    1.62                      Once the compiler is installed, 
    1.63 @@ -982,36 +993,21 @@
    1.64                      prior to building the 
    1.65                      OpenJDK.
    1.66                      The above environment variables <b>MUST</b> be set.
    1.67 +                    This compiler also contains the Windows SDK v 7.0a,
    1.68 +                    which is an update to the Windows 7 SDK.
    1.69                      <p>
    1.70                      <b>WARNING:</b> Make sure you check out the
    1.71                      <a href="#cygwin">CYGWIN link.exe WARNING</a>.
    1.72                      The path <tt>/usr/bin</tt> must be after the path to the
    1.73                      Visual Studio product.
    1.74                  </blockquote>
    1.75 -                <strong><a name="mssdk">Windows: Microsoft Platform SDK</a></strong>
    1.76 +                <strong><a name="mssdk">Windows x64: Microsoft Visual Studio Compilers</a></strong>
    1.77                  <blockquote>
    1.78 -                    On <b>X64</b>, the Microsoft Platform Software
    1.79 -                    Development Kit (SDK), April 2005 Edition compiler,
    1.80 -                    is required for building the OpenJDK
    1.81 -                    because it contains the C/C++ compiler. 
    1.82 -                    You will need to minimally install the Core SDK and
    1.83 -                    the MDAC SDK features of this compiler.
    1.84 -                    <p>
    1.85 -                    Once the Platform SDK is installed,
    1.86 -                    it is recommended that you run <tt>SetEnv.Cmd /X64</tt> 
    1.87 -                    to set the compiler environment variables
    1.88 -                    <tt>MSSDK</tt>, 
    1.89 -                    <tt>MSTOOLS</tt>,
    1.90 -                    <tt>INCLUDE</tt>,
    1.91 -                    <tt>LIB</tt>, and
    1.92 -                    <tt>PATH</tt> 
    1.93 -                    prior to building the 
    1.94 -                    OpenJDK.
    1.95 -                    The above environment variables <b>MUST</b> be set.
    1.96 -                    <p>
    1.97 -                    This Platform SDK compiler is only used on X64 builds
    1.98 -                    but other parts of the Platform SDK may be used 
    1.99 -                    for the X86 builds.
   1.100 +                    On <b>X64</b>, the set up is much the same in VS2010
   1.101 +                    except that you run <tt>amd64\VCVARS64.BAT</tt>
   1.102 +                    to set the compiler environment variables.
   1.103 +                    Previously 64 builds had used the 64 bit compiler in
   1.104 +                    an unbundled Windows SDK but this is no longer necessary.
   1.105                  </blockquote>
   1.106              </blockquote>
   1.107              <!-- ------------------------------------------------------ --> 
   1.108 @@ -1314,40 +1310,16 @@
   1.109                  but it's normally found via the DirectX environment variable
   1.110                  <tt>DXSDK_DIR</tt>.
   1.111              </blockquote>
   1.112 -            <strong><a name="msvcrt"><tt>MSVCRT.DLL</tt></a></strong>
   1.113 +            <strong><a name="msvcrt"><tt>MSVCR100.DLL</tt></a></strong>
   1.114              <blockquote> 
   1.115 -                <strong>i586 only:</strong>
   1.116 -                The OpenJDK 32-bit build requires access to a redistributable
   1.117 -                <tt>MSVCRT.DLL</tt>.
   1.118 -                If the <tt>MSVCRT.DLL</tt> is not installed in 
   1.119 -                the system32 directory set the 
   1.120 +                The OpenJDK build requires access to a redistributable
   1.121 +                <tt>MSVCR100.DLL</tt>.
   1.122 +                This is usually picked up automatically from the redist
   1.123 +                directories of Visual Studio 2010.
   1.124 +                If this cannot be found set the 
   1.125                  <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
   1.126                  variable to the location of this file.
   1.127                  <p> 
   1.128 -                <strong>X64 only:</strong>
   1.129 -                The OpenJDK 64-bit build requires access to a redistributable
   1.130 -                <tt>MSVCRT.DLL</tt>, which is
   1.131 -                usually supplied by the
   1.132 -                <a href="#mssdk">Platform SDK</a>.
   1.133 -                If it is not available from the Platform SDK,
   1.134 -                set the 
   1.135 -                <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
   1.136 -                variable to the location of this file.
   1.137 -            </blockquote>
   1.138 -            <strong><tt><a name="msvcr90">MSVCR90.DLL</a></tt></strong>
   1.139 -            <blockquote>
   1.140 -                <strong>i586 only:</strong>
   1.141 -                The 
   1.142 -                OpenJDK
   1.143 -                build requires access to a redistributable
   1.144 -                <tt>MSVCR90.DLL</tt> which should be
   1.145 -                supplied by the
   1.146 -                <a href="#msvc">Visual Studio product</a>.
   1.147 -                If the <tt>MSVCR90.DLL</tt> is not available from the
   1.148 -                Visual Studio product
   1.149 -                set the 
   1.150 -                <a href="#ALT_MSVCR90_DLL_PATH"><tt>ALT_MSVCR90_DLL_PATH</tt></a>
   1.151 -                variable to the location of this file.
   1.152              </blockquote>
   1.153          </blockquote>
   1.154          <!-- ------------------------------------------------------ -->
   1.155 @@ -1623,11 +1595,10 @@
   1.156                              The location of the 
   1.157                              <a href="#msvcrt"><tt>MSVCRT.DLL</tt></a>. 
   1.158                          </dd>
   1.159 -                        <dt><tt><a name="ALT_MSVCR90_DLL_PATH">ALT_MSVCR90_DLL_PATH</a></tt> </dt>
   1.160 +                        <dt><tt><a name="ALT_MSVCRNN_DLL_PATH">ALT_MSVCRNN_DLL_PATH</a></tt> </dt>
   1.161                          <dd>
   1.162 -                            <strong>i586 only:</strong>
   1.163                              The location of the 
   1.164 -                            <a href="#msvcr90"><tt>MSVCR90.DLL</tt></a>. 
   1.165 +                            <a href="#msvcrt"><tt>MSVCR100.DLL</tt></a>. 
   1.166                          </dd>
   1.167                      </dl>
   1.168                  </dd>

mercurial