X-Spam-Check-By: sourceware.org Message-ID: <9c2aabaf0607260912n4d17a340j533a049565234c00@mail.gmail.com> Date: Wed, 26 Jul 2006 10:12:51 -0600 From: "Michael Hirsch" To: cygwin AT cygwin DOT com Subject: Re: Why are Windows paths broken in make 3.81? In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <9c2aabaf0607211629u4e29ffa1w5f09b3d8e5a923fc AT mail DOT gmail DOT com> X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 7/21/06, mwoehlke wrote: > Michael Hirsch wrote: > > Here is a sample Makefile that breaks with Gnu Make 3.81-1 under > > Cygwin, but works fine with Gnu Make 3.80-1. We have been writing > > these types of Makefiles for years, using both Windows and Cygwin > > tools, and this is the first time Make has ever broken like this. > > > > I see in another thread that this is a known issue, though I don't see > > it in the changelogs for make 3.81. > > > > Was this a deliberate break with backwards compatibility? It means > > that every single reference to a windows path needs to be wrapped in > > cygpath, which is a huge inconvenience. > > Yes. See . > 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. 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. > > Is it broken only on Windows? > > That sounds like a silly question... 'are Windows paths only broken on > Windows?' 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. > > Is this a cywin only bug? What possible reason could there be to > > introduce this deliberately? > > No, as it is not a "bug". However it is specific to Cygwin. See the > aforementioned announcement. CGF would have to speak to "why" (and I > would appreciate if he would, just because I am curious :-)), but I > would guess it is to "encourage" people to use correct (i.e. POSIX) paths. I guess that was the reason. How disappointing. I always thought that cygwin provided a great service by allowing me to use both windows and posix paths. I'll miss that capability a lot. Michael -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/