On 9/03/2012 5:58 AM, Kelly O'Hair wrote:
On Mar 8, 2012, at 9:39 AM, Volker Simonis wrote:
Please be so kind and also create three bug ids for the corresponding changes.
Created:
7152336: Enable builds on Windows with MinGW/MSYS
I think we can use the same CR for all repos. Unless you really want 3 CRs.
You need at least two CRs as hotspot's must be separate: different
product, release target, build numbers etc.
David
The changes are minimal in the sense that I did "just enough" changes to be able
to build on Windows with either one of the three Unix emulation environments
(MKS, Cygwin, MinGW/MSYS).
The main benefits of the new MinGW/MSYS based Windows build are:
- no problems with make - one can simply use the make tool which comes with
MinGW/MSYS
- with the current MinGW/MSYS version the build is known to succeed, while
the newest Cygwin 1.7.10 version is known to break the OpenJDK build (see:
http://old.nabble.com/Is-anyone-able-to-build-on-Win-7-td33196055.html)
- speed - the MinGW/MSYS build times are comparable to the MKS build times
and is at least 50% faster than the Cygwin build times (see numbers below)
That 50% faster is great news.
The changes are intentionally against the old, "traditional" build system to fix
the mentioned Cygwin problems and simplify the Windows build just now. I don't
expect any problems in adapting the "new" build infrastructure to MinGW/MSYS as
well in a follow-up step.
More information on each change can be found in the corresponding webrevs.
Timing results for the different build environments (MKS ver. 9.4, Cygwin
ver. 1.7.9, MinGW/MSYS 1.0.17) for a full JDK 8 product build on a freshly
booted, dual core i7 notebook with 8GB RAM, HDD and 64-bit Windows 7:</p>
MKS
-- Build times ----------
Target all_product_build
Start 2012-02-29 19:19:26
End 2012-02-29 20:07:44
00:03:10 corba
00:03:44 hotspot
00:00:30 jaxp
00:00:37 jaxws
00:39:39 jdk
00:00:36 langtools
00:48:18 TOTAL
-------------------------
MinGW/MSYS
-- Build times ----------
Target all_product_build
Start 2012-02-29 18:16:31
End 2012-02-29 19:10:59
00:02:57 corba
00:03:04 hotspot
00:00:32 jaxp
00:00:40 jaxws
00:46:36 jdk
00:00:36 langtools
00:54:28 TOTAL
-------------------------
Cygwin
-- Build times ----------
Target all_product_build
Start 2012-02-29 14:36:50
End 2012-02-29 16:05:50
00:05:47 corba
00:03:24 hotspot
00:00:33 jaxp
00:00:43 jaxws
01:17:45 jdk
00:00:39 langtools
01:29:00 TOTAL
-------------------------
Excellent details. Thanks.
I'll definitely work with you to get these changes integrated.
-kto
Regards,
Volker