This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: /usr/bin/env - Incorrect parsing of #! line?
Peter J. Acklam wrote:
> Christopher Faylor <cygwin@cygwin.com> wrote:
>
>
>>Peter J. Acklam wrote:
>>
>>
>>>[...]
>>>why does Cygwin look for the file "perl -w". No UNIX I
>>>have worked on would parse the shebang line that way.
>>>
>>Because... we're mean.
>>
>
> I'm new here so I don't know who you are, but I hope one can
> expect more informative responses than this gibberish.
When Chris says "because we're mean" it *usually* means that the
original post was either
a) rude
b) accusatory
c) demanding
AND that the original poster made an incorrect analysis of their
problem, then complained about the non-existant problem, and blamed the
cygwin developers for being such idiots to make that (non-existant) mistake.
For instance:
-----------BEGIN EXAMPLE-------------
"When I start cygwin, it complains that there is no /tmp directory.
But TEMP=C:\WINNT\TEMP, so of course /tmp exists. Why doesn't cygwin
understand TEMP?"
Answer: "because we're mean". cygwin understanding the TEMP environment
variable has nothing to do with whether a directory named '/tmp' exists.
Cygwin DOES in fact understand TEMP -- but not all applications on
cygwin use TEMP; some, like bash, directly hardcode '/tmp' and complain
if it doesn't exist. Furthermore, setup.exe automatically creates /tmp,
so if it doesn't exist on your machine, then either (a) setup is broken
-- but the other 2000 people who successfully used it never ran in to
that problem, or (b) [much more likely] you didn't use setup.exe to
install cygwin. Bad bad bad bad.
e.g. You didn't follow the directions on how cygwin should be installed,
then discovered that stuff doesn't work right, then misanalyzed the
problem, and blamed us for it.
Because we're mean.
-----------END EXAMPLE-------------
Your question was borderline: "No UNIX I have worked on would parse the
sheband line that way" This statement as worded implies
1) you are much more experienced with unix than any of the monkeys
working on cygwin
2) cygwin sucks -- the monkeys must have been lobotomized before they
started coding it
3) fix it now, you damn lobotomized code monkeys!
Furthermore, it isn't *cygwin* that's parsing the command line. It's
env.exe. AND, it is not NECESSARILY looking for 'perl -w' -- maybe it's
just reporting all of its arguments, like a good little app. Perhaps,
env can't find perl in the current PATH at all -- so it's really just
saying "can't find "perl" -- and btw, you had a '-w' argument". There's
no way to know from what you reported.
But you blamed us, and cygwin, anyway.
Because we're mean.
--Chuck
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/