This is the mail archive of the
mailing list for the Cygwin project.
Re: Why are Windows paths broken in make 3.81?
On Thu, Jul 27, 2006 at 02:00:41PM -0500, mwoehlke wrote:
>Michael Hirsch wrote:
>>I see. Unfortunately, I am trying to use cygwin to make my life
>>easier on Windows, but I am still constrained to use windows programs.
>>Many of them cannot use the cygwin paths, but require a path like
>>"c:/my/path.exe". It will be very difficult to switch back and forth
>>between path representations. I guess I do need to look into MinGW.
>Ah, that problem. There are two possible solutions. One is to write a
>wrapper script for your Windows programs that will take the args,
>translate them (using cygpath), and then invoke the actual program. The
>other is to use 'cygpath' directly in your makefile, as needed.
One of the (so far unremarked upon) perl programs that I sent earlier
should work fairly well for translating paths.
>>It sounds like a silly question, but it isn't. I tested, and yes, if
>>you have a directory named "c:" in Linux, make is broken on that
>>directory, too. Since "c:" is a valid name in Linux (and POSIX, I
>>believe) I consider that a bug in make. I'll have to report that to
>>GNU, as it is not a cygwin issue. The error message on Linux is just
>>as incomprehensible as it is Cygwin, too, so at least I know who to
>>talk to about it.
>Right, that would be something to take up with the make author.
>However, as both CGF and Igor mentioned, ':' means something special to
>make, and so probably needs to be quoted/escaped/something. There is
>probably a way to do this that works right now on make 3.81.
You have to quote the : with a backslash. Inability to handle unquoted
colons is definitely not a bug in make.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html