make-w32
[Top][All Lists]
Advanced

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

Re: $(shell ...) and SHELL problems in 3.81


From: Christopher Faylor
Subject: Re: $(shell ...) and SHELL problems in 3.81
Date: Sun, 15 Apr 2007 16:09:39 -0400
User-agent: Mutt/1.5.14 (2007-02-12)

On Sun, Apr 15, 2007 at 06:16:56AM +0300, Eli Zaretskii wrote:
>>Date: Sat, 14 Apr 2007 17:59:13 -0400
>>From: Christopher Faylor
>>Cc: 
>>
>>Please don't bother reporting problems to the Cygwin mailing list if the
>>problem is due to the use of a non-POSIX shell in make.  That is not
>>supported.  It goes against the whole concept of Cygwin.
>
>I think you interpret the problem incorrectly.  GNU Make allows any
>program to be used as SHELL, and promises only that the named SHELL
>will be called once for each command it runs.

I don't think anyone claimed that cmd.exe was not being run.  However,
since cmd.exe does not qualify as a POSIX shell, it is not producing
the desired outcome, anymore than if SHELL had been set to /bin/cat.

>I'd be surprised to learn that the Cygwin port withdraws from this
>promise of GNU Make, which works on all Posix platforms.

cmd.exe does not take the same arguments as a UNIX shell so there is no
reason to assume that it should work when invoked by a program like make
which assumes a UNIX shell.  Cygwin may try to be an island of POSIX in
a sea of Windows but as soon as you leave the island by running cmd.exe
you have to expect trouble.  I don't have the POSIX specification handy
but I'd be surprised of cmd.exe qualified as a POSIX shell since, AFAICT,
the POSIX shell specification is based on the Bourne Shell which accepts
"-c" as a command-line argument.

Above and beyond that point, however, it is not a goal of Cygwin to
operate flawlessly with cmd.exe.

cgf




reply via email to

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