[Top][All Lists]

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

Re: Problems with echo. (echo period)

From: Aaron Shatters
Subject: Re: Problems with echo. (echo period)
Date: Mon, 23 Apr 2007 07:20:53 -0700 (PDT)

>> Date: Fri, 20 Apr 2007 09:14:31 -0700 (PDT)
>> From: Aaron Shatters <address@hidden>
>> As I noted previously, there are many workarounds to this problem.  I am 
>> interested in fixing the root cause.  After all of this investigation, do we 
>> have consensus that this is a limitation of make?  More importantly, do we 
>> have consensus that it should be >fixed?  We seem to have run out of reasons 
>> for not fixing this problem.
>No, I don't agree that this is a limitation of Make.  Make just
>invokes the shell built-in, and the shell built-in behaves like it
>does from the command line.
>I remain unconvinced that we should ``fix'' this just because this
>fundamental incompatibility between shells sometimes causes trouble in
>Makefiles that assume Posix `echo' where it isn't guaranteed to exist.

The problem is that Make is *not* invoking the shell built-in, therefore the 
command has no chance of behaving like it does from the command line.

I am confused as to what level of support Make is trying to achieve.  There are 
!unixy_shell conditions and dos cmd references all over the code.  What are the 
purposes of these if not to handle "fundamental incompatibilities between 
shells".  I don't understand where the point of disagreement is.  I understand 
that this is not a bug in Make, but, in my opinion, this is a perfectly 
reasonable enhancement.  Make knows about the existence of the windows shell 
'cmd.exe'.  It knows what the shell built-ins are, and it already handles this 
shell specially (for example, sh_cmds_dos in job.c).  What reasoning is there 
for excluding this functionality, when all of the other specifics associated 
with this shell are handled?

Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 

reply via email to

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