jdk8 makefile changes
david.holmes at oracle.com
Tue Jul 10 00:20:09 UTC 2012
On 10/07/2012 9:51 AM, Kumar Srinivasan wrote:
> On windows, I see a failure when building hotspot, as as follows.
> link.exe /SAFESEH /manifest kernel32.lib user32.lib gdi32.lib
> winspool.lib codlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
> Wsock32.lib winmm.lib /nologo /machine:I386 /opt:REF /opt:ICF,8 /map /debug
> psapi.lib /subystem:console /out:adlc.exe main.obj adlparse.obj archDesc.obj arena.obj
> dfa.ob dict2.obj filebuff.obj forms.obj formsopt.obj formssel.obj opcodes.obj
> output_.obj output_h.obj
> /usr/bin/link: extra operand `kernel32.lib'
It looks like it is trying to run the GNU link command instead of the
Visual Studio one.
> Try `/usr/bin/link --help' for more information.
> NMAKE : fatal error U1077:
> 'C:\WORKSP~1\JDK8-B~1\build\WINDOW~1\UNCYGD~1.EXE' :
> return code '0x1'
> NMAKE : fatal error U1077: 'cd' : return code '0x2'
> NMAKE : fatal error U1077: '"C:\Program Files\MSVS10\VC\BIN\nmake.EXE"'
> : retur
> code '0x2'
> make: *** [generic_build2] Error 2
> make: *** [product] Error 2
> make: *** [hotspot-only] Error 2
>> The jdk8/build forest has been in sync for a few days, so anyone
>> willing to try the new build system with OpenJDK 8, please
>> follow these instructions:
>> hg clone http://hg.openjdk.java.net/jdk8/build jdk8-build
>> cd jdk8-build
>> sh ./get_source.sh
>> cd common/makefiles
>> make images
>> Let us know what works, what doesn't.
>> Many of us will be concentrating on binary comparisons over the next
>> few days to insure that we are building
>> everything we did before, and the same content.
>> On Jul 3, 2012, at 11:38 AM, Kelly O'Hair wrote:
>>> Heads up...
>>> We expect to do a sync up of the jdk8/build forest with the latest in
>>> the build-infra forest in the next few days.
>>> As the new build-infra project starts getting more solid and we
>>> contemplate when we can switch
>>> the default to building with the new build-infra Makefiles (we don't
>>> know exactly when yet).
>>> **** IMPORTANT NOTICE ****
>>> It will be important that *anyone* making *any* changes to the jdk8
>>> Makefiles keep the build-dev
>>> or build-infra mailing lists informed.
>>> For a period of time we need to maintain two separate build
>>> mechanisms, and we want to make sure
>>> that both build the same thing.
>>> The hotspot repository is the one exception where we don't have two
>>> sets of makefiles, but we still
>>> would like to know when anyone is changing the makefiles or anything
>>> to do with the build process.
>>> We will soon be running both builds and doing comparisons of the
>>> resulting j2sdk-image files from
>>> both to insure we match. So if we detect differences we will be
>>> tracking down how those differences
>>> happened (that's a hint that we will be watching :^).
>>> More information on the new build-infra Makefiles can be found at:
>>> User Guide is at:
>>> Some preliminary timings for building the product image (effectively,
>>> OLD NEW build-infra times (All estimates, similar VMs/Zones)
>>> linux_i586 (21m 59s) (08m 13s)
>>> linux_x64 (13m 34s) (07m 04s)
>>> solaris_i586 (26m 14s) (11m 31s)
>>> solaris_sparc (54m 02s) (28m 21s)
>>> windows_i586 (55m 49s) (32m 22s) (old used MKS, build-infra only uses
>>> windows_x64 (36m 36s) (23m 50s) " " "
>>> * Machines with more processors will reduce the build time for
>>> build-infra builds, less so with the old Makefiles.
>>> * Always use local disk or /tmp (all above timings use /tmp, always
>>> local disk)
>>> * Above uses VMs for Windows and Linux, raw hardware would be faster
>>> * Use of ccache can sometimes speed things up, but can also skew the
>>> in the above measurements OLD used ccache, NEW did not.
More information about the build-dev