6931180: Migration to recent versions of MS Platform SDK
authorprr
Tue, 11 May 2010 14:31:42 -0700
changeset 5374 103a61b57f0e
parent 5371 ff9031a745d9
child 5375 30b170e85ca5
child 5397 66dfbaa7d18f
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
--- a/README-builds.html	Wed Jul 05 17:11:12 2017 +0200
+++ b/README-builds.html	Tue May 11 14:31:42 2010 -0700
@@ -183,13 +183,13 @@
                     <tr>
                         <td>Windows X86 (32-bit)</td>
                         <td>Windows XP</td>
-                        <td>Microsoft Visual Studio C++ 2008 Standard Edition</td>
+                        <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
                         <td>JDK 6u14 FCS </td>
                     </tr>
                     <tr>
                         <td>Windows X64 (64-bit)</td>
                         <td>Windows Server 2003 - Enterprise x64 Edition</td>
-                        <td>Microsoft Platform SDK - April 2005</td>
+                        <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
                         <td>JDK 6u14 FCS </td>
                     </tr>
                 </tbody>
@@ -789,11 +789,7 @@
                 </li>
                 <li>
                     Install the
-                    <a href="#msvc">Microsoft Visual Studio Compilers</a> (32-bit).
-                </li>
-                <li>
-                    Install the
-                    <a href="#mssdk">Microsoft Platform SDK</a>.
+                    <a href="#msvc">Microsoft Visual Studio Compilers</a>).
                 </li>
                 <li>
                     Setup all environment variables for compilers 
@@ -964,13 +960,28 @@
                 </blockquote>
                 <strong><a name="msvc">Windows i586: Microsoft Visual Studio Compilers</a></strong>
                 <blockquote>
+<p>
+<b>BEGIN WARNING</b>: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
+use the newest VS2010 Microsoft compilers. These build instructions are updated
+to show where we are going. We have a QA process to go through before
+official builds actually use VS2010. So for now, official builds are
+still using VS2003. No other compilers are known to build the entire JDK,
+including non-open portions.
+So for now you should be able to build with either VS2003 or VS2010.
+We do not guarantee that VS2008 will work, although there is sufficient
+makefile support to make at least basic JDK builds plausible.
+Visual Studio 2010 Express compilers are likely to be able to build all the
+"open" sources, with only small adjustments, but this has yet to be made
+to work. Also we have not yet seen the 7.1 Windows SDK with the 64 bit
+compilers. <b>END WARNING.</b>
+<p>
                     The 32-bit OpenJDK Windows build
                     requires 
-                    Microsoft Visual Studio C++ 2008 (VS2008) Standard
+                    Microsoft Visual Studio C++ 2010 (VS2010) Professional
                     Edition compiler. 
                     The compiler and other tools are expected to reside
                     in the location defined by the variable 
-                    <tt>VS90COMNTOOLS</tt> which
+                    <tt>VS100COMNTOOLS</tt> which
                     is set by the Microsoft Visual Studio installer.
                     <p> 
                     Once the compiler is installed, 
@@ -982,36 +993,21 @@
                     prior to building the 
                     OpenJDK.
                     The above environment variables <b>MUST</b> be set.
+                    This compiler also contains the Windows SDK v 7.0a,
+                    which is an update to the Windows 7 SDK.
                     <p>
                     <b>WARNING:</b> Make sure you check out the
                     <a href="#cygwin">CYGWIN link.exe WARNING</a>.
                     The path <tt>/usr/bin</tt> must be after the path to the
                     Visual Studio product.
                 </blockquote>
-                <strong><a name="mssdk">Windows: Microsoft Platform SDK</a></strong>
+                <strong><a name="mssdk">Windows x64: Microsoft Visual Studio Compilers</a></strong>
                 <blockquote>
-                    On <b>X64</b>, the Microsoft Platform Software
-                    Development Kit (SDK), April 2005 Edition compiler,
-                    is required for building the OpenJDK
-                    because it contains the C/C++ compiler. 
-                    You will need to minimally install the Core SDK and
-                    the MDAC SDK features of this compiler.
-                    <p>
-                    Once the Platform SDK is installed,
-                    it is recommended that you run <tt>SetEnv.Cmd /X64</tt> 
-                    to set the compiler environment variables
-                    <tt>MSSDK</tt>, 
-                    <tt>MSTOOLS</tt>,
-                    <tt>INCLUDE</tt>,
-                    <tt>LIB</tt>, and
-                    <tt>PATH</tt> 
-                    prior to building the 
-                    OpenJDK.
-                    The above environment variables <b>MUST</b> be set.
-                    <p>
-                    This Platform SDK compiler is only used on X64 builds
-                    but other parts of the Platform SDK may be used 
-                    for the X86 builds.
+                    On <b>X64</b>, the set up is much the same in VS2010
+                    except that you run <tt>amd64\VCVARS64.BAT</tt>
+                    to set the compiler environment variables.
+                    Previously 64 builds had used the 64 bit compiler in
+                    an unbundled Windows SDK but this is no longer necessary.
                 </blockquote>
             </blockquote>
             <!-- ------------------------------------------------------ --> 
@@ -1314,40 +1310,16 @@
                 but it's normally found via the DirectX environment variable
                 <tt>DXSDK_DIR</tt>.
             </blockquote>
-            <strong><a name="msvcrt"><tt>MSVCRT.DLL</tt></a></strong>
+            <strong><a name="msvcrt"><tt>MSVCR100.DLL</tt></a></strong>
             <blockquote> 
-                <strong>i586 only:</strong>
-                The OpenJDK 32-bit build requires access to a redistributable
-                <tt>MSVCRT.DLL</tt>.
-                If the <tt>MSVCRT.DLL</tt> is not installed in 
-                the system32 directory set the 
+                The OpenJDK build requires access to a redistributable
+                <tt>MSVCR100.DLL</tt>.
+                This is usually picked up automatically from the redist
+                directories of Visual Studio 2010.
+                If this cannot be found set the 
                 <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
                 variable to the location of this file.
                 <p> 
-                <strong>X64 only:</strong>
-                The OpenJDK 64-bit build requires access to a redistributable
-                <tt>MSVCRT.DLL</tt>, which is
-                usually supplied by the
-                <a href="#mssdk">Platform SDK</a>.
-                If it is not available from the Platform SDK,
-                set the 
-                <a href="#ALT_MSVCRT_DLL_PATH"><tt>ALT_MSVCRT_DLL_PATH</tt></a>
-                variable to the location of this file.
-            </blockquote>
-            <strong><tt><a name="msvcr90">MSVCR90.DLL</a></tt></strong>
-            <blockquote>
-                <strong>i586 only:</strong>
-                The 
-                OpenJDK
-                build requires access to a redistributable
-                <tt>MSVCR90.DLL</tt> which should be
-                supplied by the
-                <a href="#msvc">Visual Studio product</a>.
-                If the <tt>MSVCR90.DLL</tt> is not available from the
-                Visual Studio product
-                set the 
-                <a href="#ALT_MSVCR90_DLL_PATH"><tt>ALT_MSVCR90_DLL_PATH</tt></a>
-                variable to the location of this file.
             </blockquote>
         </blockquote>
         <!-- ------------------------------------------------------ -->
@@ -1623,11 +1595,10 @@
                             The location of the 
                             <a href="#msvcrt"><tt>MSVCRT.DLL</tt></a>. 
                         </dd>
-                        <dt><tt><a name="ALT_MSVCR90_DLL_PATH">ALT_MSVCR90_DLL_PATH</a></tt> </dt>
+                        <dt><tt><a name="ALT_MSVCRNN_DLL_PATH">ALT_MSVCRNN_DLL_PATH</a></tt> </dt>
                         <dd>
-                            <strong>i586 only:</strong>
                             The location of the 
-                            <a href="#msvcr90"><tt>MSVCR90.DLL</tt></a>. 
+                            <a href="#msvcrt"><tt>MSVCR100.DLL</tt></a>. 
                         </dd>
                     </dl>
                 </dd>