Thanks Martin.

The GNU Make people claim it's fixed, but CYGWIN in general will
probably continue to have issues with MS-DOS style paths.

The basic OpenJDK Makefile rules I'm trying to follow will be:

  * Avoid full paths if at all possible, use relative paths or
    limit the commands/utilities that get full paths.

  * Where full paths are needed, be explicit in the comments or
    otherwise as to what kind of full path is needed and why.

Converting to the MSYS make is a possibility.

On Windows, it's not just the drive letter paths, but the backslashes
and spaces, and the bizarre shortpath rules. All things that Unix like
shells and utilities will have problems with. :^(

-kto

Martin Buchholz wrote:
The maintainer of GNU make makes a commitment here:

http://article.gmane.org/gmane.comp.gnu.make.windows/2937

to fix the problem in 3.82

----
On Mon, 2008-06-30 at 18:08 -0700, Kelly O'Hair wrote:
I assume cygwin will not be fixing this, in 3.82 or ever, is that
the conclusion I am seeing?

No; I'm pretty sure it's already been fixed in CVS actually.

I just think that, in general, it's not guaranteed by make (or any other
cygwin tool) that you'll be able to use full DOS-style pathnames.
However, at least for make, unless there's some serious incompatibility
that makes it very difficult (or unless whomever maintains the Cygwin
port declines to make the change, which is not the case here) we'll make
an effort to be compatible.
----

Martin

On Wed, Jul 9, 2008 at 11:11 PM, Dan Fabulich <[EMAIL PROTECTED]> wrote:
IMO, this document should not make any predictions about make 3.82, which is
not yet released.

Last time I researched the "C:/" problem, the developers had said that "C:/"
paths were defective and that they deliberately pulled support for them
because they were too much hassle to support in cygwin.  They recommended
using MSYS make instead.

Here's where they explain their position:
http://cygwin.com/ml/cygwin/2006-07/msg00671.html
Was this a deliberate break with backwards compatibility?
Yes. See <http://cygwin.com/ml/cygwin-announce/2006-07/msg00008.html>. If
you are using a POSIX-like "OS" (i.e. Cygwin), you should be using POSIX
paths. That's not an inconvenience, that's called writing a bad makefile. If
you aren't using Cygwin for the POSIX environment, you should be using
MinGW.
[aka MSYS make]

Kelly O'Hair wrote:

Attached is a diff and an updated OpenJDK README-builds.html file.

If anyone has the time to review the changes I would appreciate it.

The bugs fixed are:

6704966: OpenJDK README needs additional info on  how to build freetype
6704968: OpenJDK Build README is missing ant requirement
6704973: OpenJDK Build readme needs cygwin package list improvements
6462815: cygwin's gnumake 3.81-1 does not support MS-DOS path names

And the environment variable list is sorted.

-kto


Reply via email to