Ted Neward wrote:
See the Build README:

https://openjdk.dev.java.net/source/browse/*checkout*/openjdk/jdk/trunk/RE
ADME-builds.html

That's the README, all right. :-)

See the BUILD README. For sure you need the cygwin 'make', awk, ksh, and
more, the list should be in the openjdk build readme.
I myself just download all of cygwin, which takes a long time but
then I never have to worry about not having something

I guess I was assuming that the list there wasn't a comprehensive list,
since there seemed to be a few things used in the build scripts that isn't
on that list. (I can't point to anything now, of course, this was just an
impression I got scanning through the build files.)

It's hard to come up with a complete list, it's like having a complete list
of all the Linux packages needed, very hard to nail down.
If you see missing items, let me know and I'll file a bug to fix the README.



Download a patched cygwin make binary from
http://www.cmake.org/files/cygwin/make.exe

Done, thanks for the link. It reports .81, is that what it should report?

Not sure. If it works, it works, if it doesn't you won't get past the sanity.
It will say something about a bad make rule because it sees the : in a
C:/... path as a makefile target termination. Dies quickly.


And this is important: Start your 'make' from a cygwin shell window, NOT a
Windows command window.

Been doing that. What would also be nice is to know what env vars should be
set inside the Cygwin bash window; is there a definitive list of those, as
well? Or are those what's inside the shell script that the README suggests
to run?

What the shell script suggests, but the README is accurate even without
using the shell script.
Most settings (except PATH, LIB, INCLUDE) can just be passed in on the
GNU make line, e.g. make ALT_BOOTDIR=C:/jdk1.6.0 ALT_...
they don't have to be set in the environment, it's up to you.


That is how the binary plugs are delivered right now, a jdk7 image.
We are working on sparse binary plugs.

Ah... OK, that makes more sense. By the way, check out
http://www.geocities.com/SiliconValley/5806/implib32.htm for a utility that
will create an import library out of a DLL; it's freeware, but it does
require that you have Visual C++ 2.x/4.x (which is very old compared to
VS2003) on your path. (It uses DUMPBIN.EXE and LIB.EXE, both of which are in
the VS2003 release.) Just run it against t2k.dll, and I *think* we're good
to go for now. (Obviously I can't try it until I get past 'make sanity',
either. ;-) )

Like I said, I won't be trying this, so please report back if it works.
Out plan is to get rid of t2k.lib, or deliver it in the new binary plugs.
I looked at this DLL-.LIB conversion, gave me the creeps, but I'm not
a windows binary format expert, I'm a Unix Elf binary format kind of guy. ;^)


If you can create a .lib file from a .dll, that should work, I didn't
spend
much time looking into this idea, wasn't sure how reliable it was.

Assuming all that's needed there is the import definitions for the DLL
itself (which is usually the case, given a .lib/.dll pairing like that),
then we should be good to go, but obviously I can't say that for certain
until I've built with it. Maybe Dan can have a go at it while I get past the
other roadblocks...? (Dan, email me if you can't get the implib32 tool to
work; I successfully generated a .lib for it, so I can mail that to you if
you need it. I don't want to send it to the list "just in case" of licensing
issues.)

I'm wondering if you have read the right README. What README are you
refering too?

Yep, that's the one. I just got thrown off by a few issues along the way.


If you have specific corrections for the README, please post them
separately. I'll see what I can do, but the README isn't horrible high
on my priority list right now.

-kto

Ted Neward
Java, .NET, XML Services
Consulting, Teaching, Speaking, Writing
http://www.tedneward.com
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Sunday, July 15, 2007 10:11 AM
To: Ted Neward
Cc: build-dev@openjdk.java.net
Subject: Re: State of the build on Windows?

See the Build README:


https://openjdk.dev.java.net/source/browse/*checkout*/openjdk/jdk/trunk/RE
ADME-builds.html

A few comments below.

Ted Neward wrote:
You're right--I didn't give you much to go on. Here's where I'm at right
now.

I pulled down the latest SVN sources, fresh checkout from the trunk.

I have MSVS 2003 installed on the box, no problems there.

I can build the Hotspot JVM itself using the hotspot build files, no
problems there with any of the debug/fastdebug/product
tiered/core/compiler1/compiler2 combinations. Everybody happy.

Trying to build the larger build (OpenJDK as a whole) yields problems.

I had Cygwin on my system, with (I think) all the tools I needed from
there
as part of the install. (Is there a definitive list? I've seen some
what-seem-to-be-conflicting lists.)
See the BUILD README. For sure you need the cygwin 'make', awk, ksh, and
more, the list should be in the openjdk build readme.
I myself just download all of cygwin, which takes a long time but
then I never have to worry about not having something

I pulled down GNU Make 3.80, built it using MSVC 2003, and both its
"batched" and "cygwin" modes gave me problems, the first with
CreateProcess
failures, the second with shell execution failures. I think this is a
red
herring, which is why I'm not giving you the lists of error reports.

You should not need to build GNU make, however there is an issue with 3.80
on Windows where it doesn't work, due to it not accepting C:/ style paths.
See
http://weblogs.java.net/blog/kellyohair/archive/2007/01/jdk_builds_on_w.ht
ml
Download a patched cygwin make binary from
http://www.cmake.org/files/cygwin/make.exe

And this is important: Start your 'make' from a cygwin shell window, NOT a
Windows command window.


Interestingly, I don't even get to the t2k.lib problem, because when I
pulled down the binary plugs for Windows, I got what appears to be a
complete JDK 7 build, and *not* the necessary pieces to build it.

That is how the binary plugs are delivered right now, a jdk7 image.
We are working on sparse binary plugs.

By the way, as a workaround, I *think* one can use the import library
tool
that ships with MSVS2003 to build the t2k.lib (if it's just an import
library for t2k.dll) to get around this problem--this is what I was
trying
to verify when I ran into the larger issues.
If you can create a .lib file from a .dll, that should work, I didn't
spend
much time looking into this idea, wasn't sure how reliable it was.

I'm hoping that Dan (or anyone else who has successfully built the
Windows
build) can help walk me through some of the setup and build issues...? I
realize it's a lot to ask, but I'm hoping to take the experiences here
and
document them all in a white paper for popular consumption.

Look at the BUILD Readme first. Then get 'make sanity' to pass.
Unfortunately without a t2k.lib, you won't get past the sanity check.

So I guess my questions, in order, are:
(*) Do we have a complete list of tools necessary to build on Windows?
So I
can verify I have all the tools necessary?
(*) Can somebody send me a GNU Make for Windows that works for them, so
I
can make sure it's not my weirdo-built version that's breaking?
(*) Can somebody please verify that the version of the binary plugs for
Window on the Sun site is correct and suitable for building? If it is,
can
you send me the URL to pull it down (because I obviously grabbed the
wrong
one)? If it's not, send me one that is?
(*) If I need to customize my build environment, is
j2se/make/jdk_generic_profile.sh the file to modify, or should I create
a
customized one (based on jdk_generic_profile.sh) and use that? What's
going
to work best with future changes to the build infrastructure?

I've read the README several times, but I find myself still stuck. :-/
I'm wondering if you have read the right README. What README are you
refering too?

-kto

Ted Neward
Java, .NET, XML Services
Consulting, Teaching, Speaking, Writing
http://www.tedneward.com

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Friday, July 13, 2007 5:14 PM
To: Ted Neward
Cc: build-dev@openjdk.java.net
Subject: Re: State of the build on Windows?

Ted,

You haven't given me anything to go on here, but I assume the t2k.lib
problem is still going to block you on Windows.

There are two efforts going on right now with regards to t2k.lib.
The awt team is trying to get rid of our dependence on t2k in the
OpenJDK,
effectively one less plug.

And I and a few others have also been trying to re-configure the binary
plug
download bundles to be smaller, sparse, legally self defining, include
the
t2k.lib,
and be automatically built by the Makefiles on every formal promotion
build.

Since this changes the legal documents, it's taken longer than I had
thought it would. I am not a lawyer, so I won't speak to the specific
legal issues here. We tried for B14 then B15, couldn't get all the
issues resolved in time, and also do all the test builds as we have to
repeatedly merge and re-merge these changes.
We didn't want to break the jdk7 product or the OpenJDK with these
changes.
Hopefully everything will be in place for B16 for the new binary plugs,
which will help all platforms, but will include t2k.lib.
But I can't promise B16, we are trying very hard to get it into B16.

But t2k.lib doesn't have long to live, the awt team is progressing very
well on removing our dependence on it. Which is the best solution of
course.

I apologize for how long this is taking, but we are trying to get it
right,
or as right as possible. Once these binary plug changes are in place,
I'll send an email to the discuss and build alias with details, but
more importantly, we will be able to add/subtract (hopefully only
subtract)
from the binary plugs as we go, without detailed legal review, or at
least that's the goal.

-kto

Ted Neward wrote:
I get some conflicting input regarding the state of the build on a
Windows box. Kelly’s blog of May 2007 implies that it’s broken; is
that
still the case?



Beyond that, I have Cygwin and VS2003 installed on my box, and I
pulled
down and built GNU make 3.80. Things still seem to be kinda broken at
a
fundamental level, though—is there anything else I need to do (env
vars,
etc) that would need to be set? For example, the makefiles seem to
want
to use a default temp directory of C:\Documents and Settings\Ted\Local
Settings\... which obviously has spaces in it; is this supposed to be
corrected somewhere? Where’s the best place to override these
settings?


Ted Neward

Java, .NET, XML Services

Consulting, Teaching, Speaking, Writing

http://www.tedneward.com






No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.4/896 - Release Date:
7/11/2007 4:09 PM

No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.5/899 - Release Date:
7/13/2007
3:41 PM

No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.5/899 - Release Date:
7/13/2007
3:41 PM


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.6/902 - Release Date: 7/15/2007
2:21 PM


No virus found in this outgoing message.
Checked by AVG Free Edition. Version: 7.5.476 / Virus Database: 269.10.6/902 - Release Date: 7/15/2007
2:21 PM

Reply via email to