PATHEXT is fundamental to Windows and Should be recognised by CYGWIN

Andrey Repin
Thu Aug 4 12:50:00 GMT 2016

Greetings, Michel LaBarre!

> Problem 1:  Cygwin does not support PATHEXT and really should.

No, it should not. Cygwin is a POSIX environment, and it uses POSIX
conventions to determine if a file is executable somehow.

> PATHEXT is as fundamental component of Windows program execution as PATH.

PATHEXT is a shell (CMD) extension. Some programs do make use of it, notable
file managers and CMD replacements do, but overall, this is a mechanism of
finding the file to execute, not of executing it per se.
You can write your own extension to bash-completion "file-not-found" handler,
if you so desire.

> Problem 2:  Cygwin does not support CR-LF delimiters.

Cygwin, in this case, is a library (newlib), and it doesn't care about
delimiters. This is an application's choice and right to support various EOL's
or not.

> For the same reason, it is unfortunate that CYGWIN/bash does not cope

bash do cope, if you tell it to do. So does Cygwin, if you use text mounts.
Which is a sure way to destroy your data and cause lots of other messy

> with both types of line delimiters transparently.


> I have been using and developing system software within Unix since 1974 and
> Windows since the mid-80's.  in more recent years (since the mid-90's) I
> have developed extensive sets of tools (sh/awk/etc..) for corporate and
> public sector clients - on the order of 100,000 lines of code for
> representative projects.  Most had to run under both Solaris and Windows
> environments for which I used the MKS toolkit. 

And they do run fine, as long as you are not making stupid mistakes, like
using bogus EOL terminators and expecting the program to work equally on
different systems.

With best regards,
Andrey Repin
Thursday, August 4, 2016 15:03:06

Sorry for my terrible english...

More information about the Cygwin mailing list