make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Windows make invoking cygwin sh bug


From: David Highley
Subject: Re: Windows make invoking cygwin sh bug
Date: Fri, 18 Mar 2011 06:17:52 -0700 (PDT)

"Alex Khripin wrote:"
> 
> Hi guys,
> Short summary: there's a bug (I blame Cygwin, but want to fix make) in
> running commands that start with a drive letter when using Windows make and
> Cygwin sh
> 
> I've run into a problem running in our environment.
> 
> We run windows make (3.82) and use Cygwin (our make is compiled
> appropriately)
> 
> In this situation, normally, when make invokes a command, like
> foo 1 "2 3" 4
> It runs it like this:
> sh.exe -c "foo 1 ""2 3"" 4"
> 
> This is passed to the cygwin sh binary, where the loader takes the command
> line and turns it into argv. Everything works great.
> 
> Unless the command is
> c:/foo 1 "2 3" 4
> In which case, it still gets called the same way
> sh.exe -c "c:/foo 1 ""2 3"" 4"

Note: that the lack of an ISO file system specification causes the
industry lots of money which I'm very grateful for:-) DOS has always
been able to use the "/" character in paths. The only command I know of
where this does not work is "net use". The colon in the path is another
character that creates issues, if your sharing file storage from
Linux/UNIX systems with Windows and you do not want the Windows side to
be able to access the file, put a colon in the file name.

If you need as we do a cross platform build system, then we have
documented ours here:
http://www.highley-recommended.com/make_process/index.html



reply via email to

[Prev in Thread] Current Thread [Next in Thread]