Cygwin-1.7.7: mv appends .exe to directory if matching .exe exists

Steven Hartland killing@multiplay.co.uk
Tue Jan 4 23:08:00 GMT 2011


----- Original Message ----- 
From: "David Mastronarde" <mast@Colorado.EDU>

>> You CAN'T have a directory and an executable sharing the same name on
>> Linux, so why should you try the same thing on cygwin?  Given that
>> cygwin attempts to handle '.exe' as a necessary evil, and tries to
>> recognize executables when the suffix is omitted, you are basically
>> confusing cygwin by creating a directory and an executable with the same
>> name.
>>
>> That said, there's probably room for improvement for recognizing the
>> situation, and trying to be smarter when both directory and .exe
>> executable exist; and the patch may need to be in coreutils rather than
>> in cygwin1.dll (since cp is doing some extra legwork for .exe magic in
>> the first place).  Good thing I'm building coreutils 8.9 today :)
>>
>> --
> 
> In my case, I am using Winzip to make an executable Zip file that ends up 
> having the same name as the directory.  Every time I make a new version, I 
> rename the directory as indicated.  This used to work, possibly even in 
> early Cygwin 1.7
> 
> Think of this as similar to having an installer file named packagename.sh. 
> Linux wouldn't confuse the directory packagename and the executable 
> packagename.sh

I'd agree these latest "fixes" for handling .exe cause us problems constantly.
I really don't understand this obsession for all the special handling when it
used to work just fine as it was.

In our case when we have Linux and windows files in an archive with the same
name except the extension everything goes to pot, even tar fails to expand it
which used to work without a problem :(

Executable is a permission its not an extension so why treat a file with .exe
extension any different with the exception of when looking for a binary to
run, which is an understandable special case given the Windows environment.

It really feels like so called consistency is being enforced over functionality
which is sad as I always though cygwin's goal was to make Unix look and feel
under windows?

If this was truly the goal and given Unix doesn't prevent Unix two executable
binaries, one with no extension and one with an .exe extension coexisting then
why should cygwin?

    Regards
    Steve


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list