Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-22 Thread Dalibor Topic
On 11/21/13 2:28 PM, Magnus Ihse Bursie wrote:
 There is not likely to be much work spend in fixing the old build system in 
 JDK7 either, nor is it likely that the new JDK8 build system will be 
 backported to JDK7.

.. or that a backport would be accepted into JDK 7u at this stage of the 
Project - switching build systems is a very invasive, major long term change, 
and as such better suited to JDK Release Projects then to update releases.

cheers,
dalibor topic
-- 
Oracle http://www.oracle.com
Dalibor Topic | Principal Product Manager
Phone: +494089091214 tel:+494089091214 | Mobile: +491737185961 
tel:+491737185961
Oracle Java Platform Group

ORACLE Deutschland B.V.  Co. KG | Kühnehöfe 5 | 22761 Hamburg

ORACLE Deutschland B.V.  Co. KG
Hauptverwaltung: Riesstr. 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603
Geschäftsführer: Jürgen Kunz

Komplementärin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher

Green Oracle http://www.oracle.com/commitment Oracle is committed to 
developing practices and products that help protect the environment


Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-21 Thread Erik Joelsson


On 2013-11-21 07:57, Francis ANDRE wrote:

Hi Erik

Le 20/11/2013 11:06, Erik Joelsson a écrit :
We identified cygwin make's inability to handle driveletter paths as 
one of the big problems with the old build system when starting the 
build-infra work for jdk8. So we designed the new build system to not 
use any mixed paths to avoid this problem.
Yes, you are right for the building of the jdk but that's only a part 
of the whole job. When talking about tests -- jtreg in particular --, 
you need to go back to the path handled by Java on windows and in that 
case, cygwin path does not work at all, only windows path with letter 
and '/' are working... So mixed path is a good compromise on windows 
for building, testing and delivering the full product


Then this is something we still need to fix. I wasn't aware of this 
until now.


/Erik


Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-21 Thread Magnus Ihse Bursie

On 2013-11-21 07:45, Francis ANDRE wrote:


A build system should be ideally self contained, including its 
documentation. This means that there should be no need to gogol for 
finding out additional help. There is already the problem of non 
proprietary additional software for building OpenJDK and centralizing 
all pieces in a single place seems to me a good idea. 


Francis,

In JDK8, we have completely rewritten the build system from scratch. One 
of the guiding principles was that it should be, as far as possible, 
self diagnostic. If a dependency is missing, it should be clearly 
written, and -- if possible -- with guidelines on how to fix the 
problem. We are not 100% there, but much closer than in the old 
(pre-JDK8) build system. It is also much more robust on platforms such 
as Windows.


If you need to build JDK7, then that will unfortunately not help you. 
There is not likely to be much work spend in fixing the old build system 
in JDK7 either, nor is it likely that the new JDK8 build system will be 
backported to JDK7.


If it is possible, I'd suggest that you try to build and use JDK8 
instead. It will definitely provide a much smoother experience for you.


/Magnus


Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-21 Thread Erik Joelsson


On 2013-11-21 10:10, Erik Joelsson wrote:


On 2013-11-21 07:57, Francis ANDRE wrote:

Hi Erik

Le 20/11/2013 11:06, Erik Joelsson a écrit :
We identified cygwin make's inability to handle driveletter paths as 
one of the big problems with the old build system when starting the 
build-infra work for jdk8. So we designed the new build system to 
not use any mixed paths to avoid this problem.
Yes, you are right for the building of the jdk but that's only a part 
of the whole job. When talking about tests -- jtreg in particular --, 
you need to go back to the path handled by Java on windows and in 
that case, cygwin path does not work at all, only windows path with 
letter and '/' are working... So mixed path is a good compromise on 
windows for building, testing and delivering the full product


Then this is something we still need to fix. I wasn't aware of this 
until now.
I wanted to investigate this so configured using 
--with-jtreg=/path/to/jtreg/dir and the ran make test. Looks to me like 
a lot of tests are running and passing. What specific issue do you have 
with testing on windows?


/Erik


Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-20 Thread Francis ANDRE


Le 20/11/2013 08:37, Ivan Krylov a écrit :
I went through the exercise of building openjdk 7-8 on Windows and concur it 
isn't trivial. But google helps and I found very the helpful Volker's blogpost 
very quickly.
A build system should be ideally self contained, including its documentation. 
This means that there should be no need to gogol for finding out additional 
help. There is already the problem of non proprietary additional software for 
building OpenJDK and centralizing all pieces in a single place seems to me a 
good idea. Moreover, the day the Simonis'blog is removed for any reason, one 
looses this Window's focused paper...
This problem should not be solved by adding extra pointer to workarounds. The 
build system on Windows should work with the latest Cygwin's make. I think 
that the openjdk community is big enough to influence and push through all 
necessary fixes into make.
I already exchange with the Cygwin guys for making ksh recognizing windows path 
for the webrev.ksh script...they said clearly no way...


Francis


Ivan

On 11/19/13 11:05 AM, Francis ANDRE wrote:

Hi Dalibor

Everybody at Oracle and may be elsewhere knows how difficult is the task of 
building OpenJDK on WXP/W7. There was even in a previous OpenJDK contest a 
proposal for making this windows build smoother... Thus, the blog of Volker 
SIMONIS is really of a great help to avoid loosing time, energy and aspirine 
for building OpenJDK on Windows. I was specially redevable to Volker on the 
chapter about the specific version of Make 3.82 which in the standard cygwin 
delivery does not understand the Windows Letter based path. Without his guide 
on compiling and running the latest Make out of cygwin, NO ONE, and I repeat, 
NO ONE can make the OpenJDK because it fails without a clear and 
understandable errors. Moreover, when asking the build list about those 
errors, no one answers because no one can imagine that the Cygwin make cannot 
manage Windows letter based path.


So, yes, adding the blog of Wolker SIMONIS or may be a reformatted text*is a 
major help for building OpenJDK on windows*.


Please, reconsider your position on adding this blog post as a README file.

Francis



Le 18/11/2013 20:11, Dalibor Topic a écrit :

On 10/6/13 8:37 PM, Francis ANDRE wrote:

Hi

I submit this patch for review for this Bug ID: 9007227: - 
make/sanity-rules.gmk:61: *** multiple target patterns. Stop


The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg 
outgoing report as well as the new file README-Windows-Cygwin-VS2010
I don't think that it's necessary to include blog posts in the source code 
archives. ;)


cheers,
dalibor topic









Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-20 Thread Francis ANDRE

Hi Erik

Le 20/11/2013 11:06, Erik Joelsson a écrit :
We identified cygwin make's inability to handle driveletter paths as one of 
the big problems with the old build system when starting the build-infra work 
for jdk8. So we designed the new build system to not use any mixed paths to 
avoid this problem.
Yes, you are right for the building of the jdk but that's only a part of the 
whole job. When talking about tests -- jtreg in particular --, you need to go 
back to the path handled by Java on windows and in that case, cygwin path does 
not work at all, only windows path with letter and '/' are working... So mixed 
path is a good compromise on windows for building, testing and delivering the 
full product


The problem with driveletter paths is also stated in the current 
README-builds.html and a number of workarounds are mentioned.
True, but all specific turn arounds for windows and cygwin and dependent third 
party software builds are disseminated all along the README-builds.html, which 
are making the build not so obvious. Even if one dislikes Windows, it is a so 
important platform for the Java ecosystem that it would make sense, from my 
point of view, to have a specific, Windows focused README...
I agree that documentation can always be improved however, and would encourage 
suggesting improvements to the current documentation rather than duplicating 
and making it redundant.

Ok..got the point


/Erik

On 2013-11-20 08:37, Ivan Krylov wrote:
I went through the exercise of building openjdk 7-8 on Windows and concur it 
isn't trivial. But google helps and I found very the helpful Volker's 
blogpost very quickly.
This problem should not be solved by adding extra pointer to workarounds. The 
build system on Windows should work with the latest Cygwin's make. I think 
that the openjdk community is big enough to influence and push through all 
necessary fixes into make.


Ivan

On 11/19/13 11:05 AM, Francis ANDRE wrote:

Hi Dalibor

Everybody at Oracle and may be elsewhere knows how difficult is the task of 
building OpenJDK on WXP/W7. There was even in a previous OpenJDK contest a 
proposal for making this windows build smoother... Thus, the blog of Volker 
SIMONIS is really of a great help to avoid loosing time, energy and aspirine 
for building OpenJDK on Windows. I was specially redevable to Volker on the 
chapter about the specific version of Make 3.82 which in the standard cygwin 
delivery does not understand the Windows Letter based path. Without his 
guide on compiling and running the latest Make out of cygwin, NO ONE, and I 
repeat, NO ONE can make the OpenJDK because it fails without a clear and 
understandable errors. Moreover, when asking the build list about those 
errors, no one answers because no one can imagine that the Cygwin make 
cannot manage Windows letter based path.


So, yes, adding the blog of Wolker SIMONIS or may be a reformatted text*is a 
major help for building OpenJDK on windows*.


Please, reconsider your position on adding this blog post as a README file.

Francis



Le 18/11/2013 20:11, Dalibor Topic a écrit :

On 10/6/13 8:37 PM, Francis ANDRE wrote:

Hi

I submit this patch for review for this Bug ID: 9007227: - 
make/sanity-rules.gmk:61: *** multiple target patterns. Stop


The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg 
outgoing report as well as the new file README-Windows-Cygwin-VS2010
I don't think that it's necessary to include blog posts in the source code 
archives. ;)


cheers,
dalibor topic











Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-19 Thread Alex Kasko

Hi,

On 11/19/2013 11:05 AM, Francis ANDRE wrote:

Hi Dalibor

Everybody at Oracle and may be elsewhere knows how difficult is the task
of building OpenJDK on WXP/W7. There was even in a previous OpenJDK
contest a proposal for making this windows build smoother... Thus, the
blog of Volker SIMONIS is really of a great help to avoid loosing time,
energy and aspirine for building OpenJDK on Windows. I was specially
redevable to Volker on the chapter about the specific version of Make
3.82 which in the standard cygwin delivery does not understand the
Windows Letter based path. Without his guide on compiling and running
the latest Make out of cygwin, NO ONE, and I repeat, NO ONE can make the
OpenJDK because it fails without a clear and understandable errors.
Moreover, when asking the build list about those errors, no one answers
because no one can imagine that the Cygwin make cannot manage Windows
letter based path.


About make versions - I recommend using this one 
(http://www.cmake.org/files/cygwin/make.exe-cygwin1.7) for jdk7 windows 
builds. I tried some make versions (binary and source) and only this 
binary worked for me with amd64 builds. Some make versions fail 
immediately, some work on i386 but fail on amd64 during hotspot build. I 
haven't tried make 4.0 though (it was not available at the time).




So, yes, adding the blog of Wolker SIMONIS or may be a reformatted
text*is a major help for building OpenJDK on windows*.

Please, reconsider your position on adding this blog post as a README file.

Francis



Le 18/11/2013 20:11, Dalibor Topic a écrit :

On 10/6/13 8:37 PM, Francis ANDRE wrote:

Hi

I submit this patch for review for this Bug ID: 9007227: -
make/sanity-rules.gmk:61: *** multiple target patterns.  Stop

The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg
outgoing report as well as the new file README-Windows-Cygwin-VS2010

I don't think that it's necessary to include blog posts in the source
code archives. ;)

cheers,
dalibor topic





--
Regards,
Alex Kasko



Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-19 Thread Ivan Krylov
I went through the exercise of building openjdk 7-8 on Windows and 
concur it isn't trivial. But google helps and I found very the helpful 
Volker's blogpost very quickly.
This problem should not be solved by adding extra pointer to 
workarounds. The build system on Windows should work with the latest 
Cygwin's make. I think that the openjdk community is big enough to 
influence and push through all necessary fixes into make.


Ivan

On 11/19/13 11:05 AM, Francis ANDRE wrote:

Hi Dalibor

Everybody at Oracle and may be elsewhere knows how difficult is the 
task of building OpenJDK on WXP/W7. There was even in a previous 
OpenJDK contest a proposal for making this windows build smoother... 
Thus, the blog of Volker SIMONIS is really of a great help to avoid 
loosing time, energy and aspirine for building OpenJDK on Windows. I 
was specially redevable to Volker on the chapter about the specific 
version of Make 3.82 which in the standard cygwin delivery does not 
understand the Windows Letter based path. Without his guide on 
compiling and running the latest Make out of cygwin, NO ONE, and I 
repeat, NO ONE can make the OpenJDK because it fails without a clear 
and understandable errors. Moreover, when asking the build list about 
those errors, no one answers because no one can imagine that the 
Cygwin make cannot manage Windows letter based path.


So, yes, adding the blog of Wolker SIMONIS or may be a reformatted 
text*is a major help for building OpenJDK on windows*.


Please, reconsider your position on adding this blog post as a README 
file.


Francis



Le 18/11/2013 20:11, Dalibor Topic a écrit :

On 10/6/13 8:37 PM, Francis ANDRE wrote:

Hi

I submit this patch for review for this Bug ID: 9007227: - 
make/sanity-rules.gmk:61: *** multiple target patterns.  Stop


The webrev.ksh is broken on WXP/Cygwin. So I am providing here the 
hg outgoing report as well as the new file README-Windows-Cygwin-VS2010
I don't think that it's necessary to include blog posts in the source 
code archives. ;)


cheers,
dalibor topic






Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-18 Thread Dalibor Topic
On 10/6/13 8:37 PM, Francis ANDRE wrote:
 Hi
 
 I submit this patch for review for this Bug ID: 9007227: - 
 make/sanity-rules.gmk:61: *** multiple target patterns.  Stop
 
 The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg 
 outgoing report as well as the new file README-Windows-Cygwin-VS2010

I don't think that it's necessary to include blog posts in the source code 
archives. ;)

cheers,
dalibor topic
-- 
Oracle http://www.oracle.com
Dalibor Topic | Principal Product Manager
Phone: +494089091214 tel:+494089091214 | Mobile: +491737185961 
tel:+491737185961
Oracle Java Platform Group

ORACLE Deutschland B.V.  Co. KG | Kühnehöfe 5 | 22761 Hamburg

ORACLE Deutschland B.V.  Co. KG
Hauptverwaltung: Riesstr. 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603
Geschäftsführer: Jürgen Kunz

Komplementärin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher

Green Oracle http://www.oracle.com/commitment Oracle is committed to 
developing practices and products that help protect the environment


Re: RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-11-18 Thread Francis ANDRE

Hi Dalibor

Everybody at Oracle and may be elsewhere knows how difficult is the task of 
building OpenJDK on WXP/W7. There was even in a previous OpenJDK contest a 
proposal for making this windows build smoother... Thus, the blog of Volker 
SIMONIS is really of a great help to avoid loosing time, energy and aspirine for 
building OpenJDK on Windows. I was specially redevable to Volker on the chapter 
about the specific version of Make 3.82 which in the standard cygwin delivery 
does not understand the Windows Letter based path. Without his guide on 
compiling and running the latest Make out of cygwin, NO ONE, and I repeat, NO 
ONE can make the OpenJDK because it fails without a clear and understandable 
errors. Moreover, when asking the build list about those errors, no one answers 
because no one can imagine that the Cygwin make cannot manage Windows letter 
based path.


So, yes, adding the blog of Wolker SIMONIS or may be a reformatted text*is a 
major help for building OpenJDK on windows*.


Please, reconsider your position on adding this blog post as a README file.

Francis



Le 18/11/2013 20:11, Dalibor Topic a écrit :

On 10/6/13 8:37 PM, Francis ANDRE wrote:

Hi

I submit this patch for review for this Bug ID: 9007227: - 
make/sanity-rules.gmk:61: *** multiple target patterns.  Stop

The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg outgoing 
report as well as the new file README-Windows-Cygwin-VS2010

I don't think that it's necessary to include blog posts in the source code 
archives. ;)

cheers,
dalibor topic




RFR: Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns. Stop

2013-10-06 Thread Francis ANDRE

Hi

I submit this patch for review for this Bug ID: 9007227: - 
make/sanity-rules.gmk:61: *** multiple target patterns.  Stop


The webrev.ksh is broken on WXP/Cygwin. So I am providing here the hg outgoing 
report as well as the new file README-Windows-Cygwin-VS2010


Francis


$ hg outgoing -v
comparing with http://hg.openjdk.java.net/jdk7u/jdk7u40-dev
searching for changes
changeset:   723:ca9d79ba85a6
tag: tip
user:fandre francis.andre.kampb...@orange.fr
date:Sun Oct 06 19:11:23 2013 +0100
files:   README-Windows-Cygwin-VS2010
description:
Bug ID: 9007227: - make/sanity-rules.gmk:61: *** multiple target patterns.  Stop

The multiple target patterns error is coming from the version of GNU make.exe in 
the Cygwin distribu

tion that does not recognize drive letter in path.
The solution is to fully explained in a blog of Volker SIMONIS which is printed 
in this new file. *N

o one* will succeed to build the OpenJDK on windows
with cygwin and VS2010 without following the Volker's paper. That's why IMO, it 
is mandatory to join

 this README-Windows-Cygwin-VS2010 in the distribution.
YAOJOWBI - Yet another OpenJDK on Windows Build Instruction
By simonis
Created 2011-10-28 11:00
Posted by simonis [1] on October 28, 2011 at 11:00 AM PDT

Printed from 
https://weblogs.java.net/blog/simonis/archive/2011/10/28/yaojowbi-yet-another-openjdk-windows-build-instruction?force=510

This blog describes how to build both, a 64-bit and a 32-bit version of OpenJDK 
8 on a plain, vanilla WindowsXP 64-bit operating system using only free (as in 
free beer) tools.

Contents
Getting started
VisualC++ Express
Windows SDK
DirectX SDK
TortoiseHg
Java 7 JDK
Ant
Cygwin
GNU make
FreeType
PATH handling
OpenJDK sources
JAXP and JAX_WS
msvcr100.dll
Building

There are several tutorials out there which explain in more or less detail how 
to build OpenJDK on Windows. The problem with most of them is that they are 
either outdated (will happen with this blog as well:) or they use compilers 
which either aren't available anymore or which are not free. This blog will 
describe how to build both, a 64-bit and a 32-bit version of OpenJDK 8 on a 
plain, vanilla WindowsXP 64-bit operating system using only free (as in free 
beer) tools.

Unfortunately, building OpenJDK on Windows is still far away from being 
straightforward as can be seen from the regular desperate help requests on the 
OpenJDK mailing lists. This has many reasons and I neither want to discuss them 
nor do I want to blame anybody for this fact. Instead I hope this post can help 
to improve the OpenJDK build documentation [2] and perhaps even the build 
process itself.

Getting started

As stated above, I started with a fresh, 64-bit WindowsXP installation. In fact 
I used a VmWare-Image in Oracle VirtualBox 4.1.4 on 64-bit Ubuntu 10.04 and in 
the VmWare Player 3.1.4 on 64-bit Windows 7. The first step was to install the 
free Microsoft C/C++ compilers and various dependencies required by OpenJDK. If 
not mentioned otherwise, I've installed all the packages mentioned here in the 
default location that was suggested by the respective installers.

VisualC++ 2010 Express

Download and install the free VisualC++ 2010 Express compilers from: 
http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express
 [3]. Notice that this will require the installation of the Windows Imaging 
Component (64-bit) which is not present in a clean XP installation, but the 
VisualC++ installer will point you to the right URL from where you can get it 
(just for any case, here's where I finally downloaded it from: 
http://www.microsoft.com/download/en/details.aspx?displaylang=enid=1385 [4]).

Windows SDK for Windows 7 and .Net

Unfortunately, the VisualC++ 2010 Express package only contains 32-bit 
compilers. So if we want to build a 64-bit JVM we have to additionally install 
the Windows SDK for Windows 7 and .Net from 
http://www.microsoft.com/download/en/details.aspx?id=8279 [5]. (Notice that the 
Windows SDK now also contains the Itanium cross compiler. So should there be a 
native IA64 port in the OpenJDK anytime soon, it will be possible to build it 
with this setup as well:)

Microsoft DirectX 9.0 SDK

Another build requirement is the Microsoft DirectX 9.0 SDK header files and 
libraries. It can be easily installed from 
http://www.microsoft.com/download/en/details.aspx?displaylang=enid=21416 [6] 
but be sure to check the corresponding Microsoft DirectX [7] section in the 
OpenJDK Readme [2] in the case the required version changed.

TortoiseHg

To get the OpenJDK source code, we need a Mercurial [8] client. TortoiseHg [9] 
is an easy to install Mercurial distribution for Windows which can be 
downloaded from http://tortoisehg.bitbucket.org/download [10]. The installation 
step will updated the system path automatically.